What the checker tests, in order
- Characters. Letters and digits only. Spaces, and a leading "IBAN", are removed for you.
- Country. The first two letters must be a country in the Swift IBAN Registry. Swift is the registration authority designated by ISO for national IBAN formats (Swift). A US, Canadian or Australian "IBAN" is rejected with a plain explanation: those countries are not in the registry.
- Length for that country. A German IBAN has exactly 22 characters, a Maltese one 31. Off by one? You are told how many characters are missing or extra.
- Pattern for that country. Each position must be a digit, a letter, or either, as the registry's BBAN structure says. In a UK IBAN, characters 5 to 8 are letters and 9 to 22 digits, so a letter O typed for a zero is caught at its exact position.
- Check digits. The standard modulo 97 test: move the first four characters to the end, turn letters into numbers (A = 10 … Z = 35), divide by 97, and a valid IBAN leaves 1. The tool shows each step.
When the check digits fail: where to look
A bare "invalid" verdict tells you little, so this checker goes one step further. It tries every single-character change and every swap of two neighboring characters, and lists the positions where one such slip would make the check digits add up. The squares turn amber in the character strip.
Take GB82 WEST 1234 5698 7654 23, the widely published example IBAN with its last two digits swapped. Length and pattern are right, but the remainder is 49 instead of 1. The tool lists the few places where one slip would explain it: a single wrong character at positions 6, 8, 10, 18 or 20, or a swap at 7–8 or 21–22. The real mistake, 21–22, is on the list, and you only need to compare those spots with the original. It does not print a "corrected" IBAN. A changed IBAN can be another person's valid account, so the only safe fix is to ask the payee for the number again.
The other things you see
- The bank code inside the IBAN, at the positions the registry gives for that country. For GB82 WEST… it is WEST.
- SEPA status, from the European Payments Council's list of SEPA scheme countries, version 8.0 of December 24, 2025. See do you need a BIC?.
- An optional BIC field. Add the payee's BIC and the tool checks that both point to the same country. Where a country's IBAN carries a four-letter bank code (UK, Ireland, Netherlands, Bulgaria, Romania and others), it also compares those letters with the start of the BIC.
- A "before you send" checklist for that country, ready to copy.
What it cannot test
- That the account exists, is open, or belongs to the person you mean.
- National check digits inside the account number, which some countries add. We have not built those.
- Name match. In the euro area your bank runs that check; see verification of payee.
IBAN length by country
All 89 countries in the Swift IBAN Registry, as read on October 30, 2026. Type a name, code or length to filter, or click a column heading to sort; the last column spells out each country's pattern. Some codes cover territories too: FR IBANs are used in the French overseas departments and territories, GB in the Isle of Man, Jersey and Guernsey, and FI in the Åland Islands (Swift registry).
| Country | Code | IBAN length | SEPA |
|---|---|---|---|
| Albania | AL | 28 | Admitted 2024–25 |
| Andorra | AD | 24 | Yes (outside EU/EEA) |
| Austria | AT | 20 | Yes |
| Azerbaijan | AZ | 28 | No |
| Bahrain | BH | 22 | No |
| Belarus | BY | 28 | No |
| Belgium | BE | 16 | Yes |
| Bosnia and Herzegovina | BA | 20 | No |
| Brazil | BR | 29 | No |
| British Virgin Islands | VG | 24 | No |
| Bulgaria | BG | 22 | Yes |
| Burundi | BI | 27 | No |
| Costa Rica | CR | 22 | No |
| Croatia | HR | 21 | Yes |
| Cyprus | CY | 28 | Yes |
| Czechia | CZ | 24 | Yes |
| Denmark | DK | 18 | Yes |
| Djibouti | DJ | 27 | No |
| Dominican Republic | DO | 28 | No |
| Egypt | EG | 29 | No |
| El Salvador | SV | 28 | No |
| Estonia | EE | 20 | Yes |
| Falkland Islands | FK | 18 | No |
| Faroe Islands | FO | 18 | No |
| Finland | FI | 18 | Yes |
| France | FR | 27 | Yes |
| Georgia | GE | 22 | No |
| Germany | DE | 22 | Yes |
| Gibraltar | GI | 23 | Yes (outside EU/EEA) |
| Greece | GR | 27 | Yes |
| Greenland | GL | 18 | No |
| Guatemala | GT | 28 | No |
| Honduras | HN | 28 | No |
| Hungary | HU | 28 | Yes |
| Iceland | IS | 26 | Yes |
| Iraq | IQ | 23 | No |
| Ireland | IE | 22 | Yes |
| Israel | IL | 23 | No |
| Italy | IT | 27 | Yes |
| Jordan | JO | 30 | No |
| Kazakhstan | KZ | 20 | No |
| Kosovo | XK | 20 | No |
| Kuwait | KW | 30 | No |
| Latvia | LV | 21 | Yes |
| Lebanon | LB | 28 | No |
| Libya | LY | 25 | No |
| Liechtenstein | LI | 21 | Yes |
| Lithuania | LT | 20 | Yes |
| Luxembourg | LU | 20 | Yes |
| Malta | MT | 31 | Yes |
| Mauritania | MR | 27 | No |
| Mauritius | MU | 30 | No |
| Moldova | MD | 24 | Admitted 2024–25 |
| Monaco | MC | 27 | Yes (outside EU/EEA) |
| Mongolia | MN | 20 | No |
| Montenegro | ME | 22 | Admitted 2024–25 |
| Netherlands | NL | 18 | Yes |
| Nicaragua | NI | 28 | No |
| North Macedonia | MK | 19 | Admitted 2024–25 |
| Norway | NO | 15 | Yes |
| Oman | OM | 23 | No |
| Pakistan | PK | 24 | No |
| Palestine | PS | 29 | No |
| Poland | PL | 28 | Yes |
| Portugal | PT | 25 | Yes |
| Qatar | QA | 29 | No |
| Romania | RO | 24 | Yes |
| Russia | RU | 33 | No |
| Saint Lucia | LC | 32 | No |
| San Marino | SM | 27 | Yes (outside EU/EEA) |
| Sao Tome and Principe | ST | 25 | No |
| Saudi Arabia | SA | 24 | No |
| Serbia | RS | 22 | Admitted 2024–25 |
| Seychelles | SC | 31 | No |
| Slovakia | SK | 24 | Yes |
| Slovenia | SI | 19 | Yes |
| Somalia | SO | 23 | No |
| Spain | ES | 24 | Yes |
| Sudan | SD | 18 | No |
| Sweden | SE | 24 | Yes |
| Switzerland | CH | 21 | Yes (outside EU/EEA) |
| Timor-Leste | TL | 23 | No |
| Tunisia | TN | 24 | No |
| Türkiye | TR | 26 | No |
| Ukraine | UA | 29 | No |
| United Arab Emirates | AE | 23 | No |
| United Kingdom | GB | 22 | Yes (outside EU/EEA) |
| Vatican City | VA | 22 | Yes (outside EU/EEA) |
| Yemen | YE | 30 | No |
The registry itself flags SEPA countries too. For Albania, Montenegro, North Macedonia, Moldova and Serbia it still says "No", while the EPC's list (v8.0) includes them, with earliest start dates of October 5, 2025 (the first four) and May 2026 (Serbia). Banks there join one by one, so ask before you count on a SEPA transfer.
Countries with no IBAN
The United States, Canada, Australia, New Zealand, China, India, Japan, Mexico and Singapore are not in the registry. A payee there gives an account number, the bank's SWIFT/BIC and any local code their bank asks for. US banks say so plainly: Chase states "We don't use an IBAN" (Chase). Do not build an IBAN from a US account number: no US bank issues one, and this checker rejects it at the first two letters.
Use the BIC checker for the bank's code, or check a whole list.