IBAN Validator
Validate IBAN codes from 79 countries: format, MOD-97 check digit, country-specific length, bank info. 100% client-side — your data stays in your browser.
Enter IBAN
A single IBAN or multiple IBANs, one per line
Click Validate
Or press Enter to start validation
Detailed Results
Format, check digit, country, bank info
How IBAN Validation Works
The IBAN (International Bank Account Number) is an international standard (ISO 13616) for uniquely identifying bank accounts. Validation consists of three steps:
- Format check — The code must start with 2 letters (ISO 3166-1 country code) followed by 2 check digits and the national BBAN code.
- Length check — Each country has a specific IBAN length (e.g., Germany 22, UK 22, France 27). An IBAN with incorrect length is invalid.
- MOD-97 check digit — The first 4 characters are moved to the end, letters are converted to numbers (A=10, B=11...Z=35), and the remainder when divided by 97 must equal 1.
This algorithm (ISO 7064) detects 99% of transcription errors, including adjacent digit transpositions. However, a mathematically valid IBAN may not correspond to a real account: validation only confirms formal correctness.
Anatomy of an IBAN: What Each Part Means
Every IBAN follows the same top-level structure, regardless of country. Let's break down a German IBAN as an example:
ISO 3166-1 alpha-2 (DE = Germany)
2 digits calculated via MOD-97
BLZ in Germany, sort code in UK
Padded to fixed length per country
The first two letters always identify the country (DE for Germany, GB for UK, FR for France, IT for Italy). The next two digits are check digits that protect against typing errors. Everything after that is the BBAN (Basic Bank Account Number), whose internal structure varies by country:
- Germany (DE): 8-digit BLZ (bank routing code) + 10-digit account number
- United Kingdom (GB): 4-letter bank code + 6-digit sort code + 8-digit account number
- France (FR): 5-digit bank code + 5-digit branch code + 11-digit account number + 2-digit BBAN key
- Italy (IT): 1-letter CIN + 5-digit ABI (bank) + 5-digit CAB (branch) + 12-digit account number
- Spain (ES): 4-digit bank code + 4-digit branch code + 2-digit check digits + 10-digit account number
- Netherlands (NL): 4-letter bank code + 10-digit account number
MOD-97 Validation: Step-by-Step Example
Let's walk through the MOD-97 algorithm using a real UK IBAN: GB29 NWBK 6016 1331 9268 19
- Remove spaces:
GB29NWBK60161331926819 - Move first 4 characters to the end:
NWBK60161331926819GB29 - Convert letters to numbers (A=10, B=11 ... Z=35):
N=23, W=32, B=11, K=20, G=16, B=11
Result:23321120601613319268191629 - Divide by 97:
23321120601613319268191629 mod 97 = 1 - Remainder = 1? Yes → the IBAN is valid
If you change even a single digit — for example, swapping the "29" check digits to "28" — the remainder will no longer equal 1 and the IBAN will be detected as invalid. This is why MOD-97 catches 99% of transcription errors, including single-character substitutions and transposed adjacent digits.
IBAN vs SWIFT/BIC vs Routing Number
International banking uses several identification codes. Here's how they differ and when you need each one:
| Code | Identifies | Format | Used for |
|---|---|---|---|
| IBAN | Bank account | 15-34 alphanumeric | SEPA transfers, international wires (79 countries) |
| SWIFT/BIC | Bank (institution) | 8 or 11 characters | Routing international wires to the correct bank |
| ABA Routing | US bank branch | 9 digits | Domestic US transfers (ACH, wire, checks) |
| Sort Code | UK bank branch | 6 digits (xx-xx-xx) | UK domestic transfers (already included in UK IBAN) |
Key takeaway: For transfers within Europe (SEPA), you only need the IBAN. For transfers to non-SEPA countries, you typically need both the IBAN and the SWIFT/BIC code. The United States does not use IBAN; US transfers require an ABA routing number and account number instead.
IBAN Format by Country
Each country that uses IBAN has a fixed length and specific BBAN structure. Below is the complete list of all 79 countries supported by this validator, with example formats and IBAN lengths.
| Country | Code | Length | Example format |
|---|---|---|---|
| Albania | AL | 28 | AL47 2121 1009 0000 0002 3569 8741 |
| Andorra | AD | 24 | AD12 0001 2030 2003 5910 0100 |
| Austria | AT | 20 | AT61 1904 3002 3457 3201 |
| Azerbaijan | AZ | 28 | AZ21 NABZ 0000 0000 1370 1000 1944 |
| Bahrain | BH | 22 | BH67 BMAG 0000 0012 9912 56 |
| Belarus | BY | 28 | BY13 NBRB 3600 9000 0000 2Z00 AB00 |
| Belgium | BE | 16 | BE68 5390 0754 7034 |
| Bosnia and Herzegovina | BA | 20 | BA39 1290 0794 0102 8494 |
| Brazil | BR | 29 | BR97 0036 0305 0000 1000 9795 493P 1 |
| British Virgin Islands | VG | 24 | VG96 VPVG 0000 0123 4567 8901 |
| Bulgaria | BG | 22 | BG80 BNBG 9661 1020 3456 78 |
| Costa Rica | CR | 22 | CR05 0152 0200 1026 2840 66 |
| Croatia | HR | 21 | HR12 1001 0051 8630 0016 0 |
| Cyprus | CY | 28 | CY17 0020 0128 0000 0012 0052 7600 |
| Czech Republic | CZ | 24 | CZ65 0800 0000 1920 0014 5399 |
| Denmark | DK | 18 | DK50 0040 0440 1162 43 |
| Dominican Republic | DO | 28 | DO28 BAGR 0000 0001 2124 5361 1324 |
| East Timor | TL | 23 | TL38 0080 0123 4567 8910 157 |
| Egypt | EG | 29 | EG38 0019 0005 0000 0000 2631 8000 2 |
| El Salvador | SV | 28 | SV62 CENR 0000 0000 0000 0070 0025 |
| Estonia | EE | 20 | EE38 2200 2210 2014 5685 |
| Faroe Islands | FO | 18 | FO62 6460 0001 6316 34 |
| Finland | FI | 18 | FI21 1234 5600 0007 85 |
| France | FR | 27 | FR76 3000 6000 0112 3456 7890 189 |
| Georgia | GE | 22 | GE29 NB00 0000 0101 9049 17 |
| Germany | DE | 22 | DE89 3704 0044 0532 0130 00 |
| Gibraltar | GI | 23 | GI75 NWBK 0000 0000 7099 453 |
| Greece | GR | 27 | GR16 0110 1250 0000 0001 2300 695 |
| Greenland | GL | 18 | GL89 6471 0001 0002 06 |
| Guatemala | GT | 28 | GT82 TRAJ 0102 0000 0012 1002 9690 |
| Hungary | HU | 28 | HU42 1177 3016 1111 1018 0000 0000 |
| Iceland | IS | 26 | IS14 0159 2600 7654 5510 7303 39 |
| Iraq | IQ | 23 | IQ98 NBIQ 8501 2345 6789 012 |
| Ireland | IE | 22 | IE29 AIBK 9311 5212 3456 78 |
| Israel | IL | 23 | IL62 0108 0000 0009 9999 999 |
| Italy | IT | 27 | IT60 X054 2811 1010 0000 0123 456 |
| Jordan | JO | 30 | JO94 CBJO 0010 0000 0000 0131 0003 02 |
| Kazakhstan | KZ | 20 | KZ86 125K ZT50 0410 0100 |
| Kosovo | XK | 20 | XK05 1212 0123 4567 8906 |
| Kuwait | KW | 30 | KW81 CBKU 0000 0000 0000 1234 5601 01 |
| Latvia | LV | 21 | LV80 BANK 0000 4351 9500 1 |
| Lebanon | LB | 28 | LB62 0999 0000 0001 0019 0122 9114 |
| Libya | LY | 25 | LY83 0020 4800 0020 1001 2036 1 |
| Liechtenstein | LI | 21 | LI21 0881 0000 2324 013A A |
| Lithuania | LT | 20 | LT12 1000 0111 0100 1000 |
| Luxembourg | LU | 20 | LU28 0019 4006 4475 0000 |
| Malta | MT | 31 | MT84 MALT 0110 0001 2345 MTLC AST0 01S |
| Mauritania | MR | 27 | MR13 0002 0001 0100 0012 3456 753 |
| Mauritius | MU | 30 | MU17 BOMM 0101 1010 3030 0200 000M UR |
| Moldova | MD | 24 | MD24 AG00 0225 1000 1310 4168 |
| Monaco | MC | 27 | MC58 1122 2000 0101 2345 6789 030 |
| Montenegro | ME | 22 | ME25 5050 0001 2345 6789 51 |
| Netherlands | NL | 18 | NL91 ABNA 0417 1643 00 |
| North Macedonia | MK | 19 | MK07 2501 2000 0058 984 |
| Norway | NO | 15 | NO93 8601 1117 947 |
| Pakistan | PK | 24 | PK36 SCBL 0000 0011 2345 6702 |
| Palestine | PS | 29 | PS92 PALS 0000 0000 0400 1234 5670 2 |
| Poland | PL | 28 | PL61 1090 1014 0000 0712 1981 2874 |
| Portugal | PT | 25 | PT50 0002 0123 1234 5678 9015 4 |
| Qatar | QA | 29 | QA58 DOHB 0000 1234 5678 90AB CDEF G |
| Romania | RO | 24 | RO49 AAAA 1B31 0075 9384 0000 |
| Saint Lucia | LC | 32 | LC55 HEMM 0001 0001 0012 0012 0002 3015 |
| San Marino | SM | 27 | SM86 U032 2509 8000 0000 0270 100 |
| Saudi Arabia | SA | 24 | SA03 8000 0000 6080 1016 7519 |
| Serbia | RS | 22 | RS35 2600 0560 1001 6113 79 |
| Seychelles | SC | 31 | SC18 SSCB 1101 0000 0000 0000 1497 USD |
| Slovakia | SK | 24 | SK31 1200 0000 1987 4263 7541 |
| Slovenia | SI | 19 | SI56 2633 0001 2039 086 |
| Spain | ES | 24 | ES91 2100 0418 4502 0005 1332 |
| Sudan | SD | 18 | SD21 2901 0501 2340 01 |
| Sweden | SE | 24 | SE45 5000 0000 0583 9825 7466 |
| Switzerland | CH | 21 | CH93 0076 2011 6238 5295 7 |
| São Tomé and Príncipe | ST | 25 | ST23 0001 0001 0051 8453 1014 6 |
| Tunisia | TN | 24 | TN59 1000 6035 1835 9847 8831 |
| Turkey | TR | 26 | TR33 0006 1005 1978 6457 8413 26 |
| Ukraine | UA | 29 | UA21 3996 2200 0002 6007 2335 6600 1 |
| United Arab Emirates | AE | 23 | AE07 0331 2345 6789 0123 456 |
| United Kingdom | GB | 22 | GB29 NWBK 6016 1331 9268 19 |
| Vatican City | VA | 22 | VA59 0011 2300 0012 3456 78 |
The complete list above includes all 79 countries that use the IBAN system: European SEPA zone (36 countries), Middle East (Saudi Arabia, UAE, Kuwait, Qatar, Bahrain, Jordan, Iraq, Israel, Palestine), North Africa (Egypt, Tunisia, Libya, Mauritania), Central and South America (Brazil, Costa Rica, El Salvador, Guatemala, Dominican Republic), and the Caribbean (Saint Lucia, British Virgin Islands, Seychelles, Mauritius, São Tomé).
IBAN by Region: Key Differences
Not all IBANs are created equal. Different regions have different IBAN lengths, structures, and banking systems. Here's what you need to know when sending money to each region:
Europe (SEPA Zone)
The 36 SEPA countries offer the fastest and cheapest cross-border transfers. Euro payments arrive in 1 business day at domestic rates. Key formats: Germany (DE, 22 chars) uses an 8-digit BLZ bank code, UK (GB, 22 chars) includes a 6-digit sort code, France (FR, 27 chars) has the longest Western European IBAN, and Norway (NO, 15 chars) has the shortest IBAN in the world. Post-Brexit, the UK remains part of SEPA for euro transfers.
Middle East
Saudi Arabia (SA, 24 chars), UAE (AE, 23 chars), Kuwait (KW, 30 chars), and Qatar (QA, 29 chars) all use IBAN for international transfers. These countries are outside SEPA, so transfers use the SWIFT network (3-5 business days, higher fees). Jordan has one of the longest IBANs at 30 characters.
North Africa
Egypt (EG, 29 chars), Tunisia (TN, 24 chars), Libya (LY, 25 chars), and Mauritania (MR, 27 chars) adopted IBAN to simplify international banking. Egypt's 29-character IBAN is among the longest in the system.
Americas & Caribbean
Brazil (BR, 29 chars) is the largest IBAN-using country in the Americas. Costa Rica, El Salvador, Guatemala, and the Dominican Republic also support IBAN. Note: the United States and Canada do NOT use IBAN — US transfers require an ABA routing number (9 digits) and account number instead.
Eastern Europe & Central Asia
Ukraine (UA, 29 chars), Georgia (GE, 22 chars), Kazakhstan (KZ, 20 chars), and Azerbaijan (AZ, 28 chars) use IBAN despite not being part of SEPA. Belarus uses a 28-character IBAN with both letters and digits in the BBAN section, making it one of the more complex formats.
When You Need to Validate an IBAN
Validating an IBAN before making a payment can save you from rejected transfer fees and delays. Here are the most common scenarios where IBAN validation is essential:
Before sending money abroad, verify the recipient's IBAN is correct. Even a single wrong digit can cause the transfer to be rejected, costing you $15-30 in bank fees.
Small businesses working with European suppliers must validate IBANs before setting up recurring payments. One wrong IBAN in an automated system can block entire payment chains.
If you sell online and receive payments to foreign accounts, always verify the IBAN before sharing it with marketplaces. A wrong IBAN means weeks without payouts.
Students and workers abroad often need to provide or receive IBANs for rent and salaries. Validating before signing a contract avoids problems with the first payment.
IBAN and the SEPA Area: What You Need to Know
The SEPA (Single Euro Payments Area) covers 36 European countries where euro transfers have the same conditions, fees, and processing times regardless of origin or destination. IBAN is the mandatory format for all SEPA payments.
SEPA countries: all 27 EU member states, plus Iceland, Liechtenstein, Norway, Switzerland, Monaco, San Marino, Vatican City, Andorra, and the United Kingdom. Overseas territories like Guadeloupe, Martinique, Réunion, and Mayotte are also part of SEPA.
SEPA vs international transfers: a SEPA euro transfer takes at most 1 business day and costs the same as a domestic transfer. A transfer to a non-SEPA country (e.g., USA, Japan) uses the SWIFT network and can take 3-5 days with higher fees.
Countries outside the EU like Saudi Arabia, Turkey, Brazil, Egypt, and Qatar also use the IBAN system for bank transfers, but they are not part of the SEPA area.
Common IBAN Mistakes and How to Avoid Them
Even a single wrong character makes an IBAN invalid. Here are the most frequent errors this validator helps you catch:
- Transposed digits — Writing "21" instead of "12" is the most common mistake. The MOD-97 check digit catches this 99% of the time.
- Letter/number confusion — O (letter) vs 0 (zero), I (letter) vs 1 (one), l (lowercase L) vs 1. Using the wrong character completely changes the checksum.
- Incomplete copy — Selecting the IBAN from a bank document without including the country code or last digits. Each country has a fixed IBAN length.
- Spaces in wrong positions — Spaces in IBANs are for readability only (every 4 characters). Some systems accept them, others don't. Our validator strips them automatically.
- Old or closed IBAN — An IBAN can be formally valid but refer to a closed account. Formal validation cannot verify this: you need confirmation from the bank.
What is an IBAN and why it matters
An IBAN (International Bank Account Number) is an internationally standardized alphanumeric code that uniquely identifies a bank account. Defined by ISO 13616, it’s used in over 80 countries to make money transfers safer and faster, both domestically and internationally.
Before IBANs, each country had its own bank account format: Italy used ABI+CAB+account number, Germany had BLZ+Kontonummer, France the RIB. This fragmentation caused frequent errors in cross-border transfers. The IBAN solved this by creating a single format recognized by every bank.
Today, IBANs are mandatory for all SEPA (Single Euro Payments Area) transfers and most international wire transfers. Without a valid IBAN, your payment will be rejected or delayed — costing you time and money.
Structure of an IBAN code
Every IBAN follows a precise structure made of four parts:
Example — UK IBAN:
GB29 NWBK 6016 1331 9268 19
GB — Country code (ISO 3166-1 alpha-2)
29 — Check digits (validation number)
NWBK — Bank code (NatWest)
601613 — Sort code (branch identifier)
31926819 — Account number
The total length varies by country: the UK uses 22 characters, Germany 22, France 27, Italy 27. The BBAN (Basic Bank Account Number, the part after the check digits) follows each country’s national banking rules.
How the check digit works (MOD-97)
The check digit is the heart of IBAN validation. It uses the MOD-97 algorithm (ISO 7064), which catches 98% of transcription errors, including swapping two adjacent digits.
- Move the first 4 characters (country code + check digits) to the end
- Convert all letters to numbers: A=10, B=11, C=12... Z=35
- Calculate modulo 97 of the resulting number
- If the result is 1, the IBAN is valid
Example with IBAN GB29 NWBK 6016 1331 9268 19:
- Rearrange: NWBK60161331926819GB29
- Convert letters: 232111601613319268191611 29
- 232111601613319268191611 29 MOD 97 = 1 → Valid IBAN
This algorithm is remarkably effective: even a single wrong digit or letter will cause the modulo 97 check to fail. That’s why banks use it as the first filter before processing any transfer.
How to validate an IBAN step by step
Complete IBAN validation involves multiple levels of checking:
Level 1 — Format:
- The country code (first 2 letters) must be a valid ISO 3166-1 code
- The check digits (positions 3-4) must be two numeric digits
- The rest (BBAN) must contain only uppercase alphanumeric characters
Level 2 — Length:
- Each country has a fixed, specific IBAN length
- A UK IBAN must be exactly 22 characters, a German one 22, an Italian one 27
Level 3 — MOD-97 check digit:
- Apply the MOD-97 algorithm described above
- The result must be exactly 1
Level 4 — BBAN structure:
- Verify the BBAN follows the country-specific national format
- For the UK: 4 letters (bank code) + 6 digits (sort code) + 8 digits (account number)
Need to check your website's SEO, speed and security?
Free SEO Analyzer →Frequently Asked Questions
What is an IBAN?
How long is an IBAN?
How does MOD-97 validation work?
Is this tool safe for my bank details?
How many countries use IBAN?
What's the difference between IBAN and SWIFT/BIC?
Does a valid IBAN mean the account exists?
What is the BBAN inside an IBAN?
What is the SEPA area and how does it affect transfers?
What are common mistakes when entering an IBAN?
Does the United States use IBAN?
Can IBANs contain spaces or hyphens?
Can an IBAN change or expire?
How do I find my own IBAN?
What happens if I send money to a wrong IBAN?
Is an IBAN required for bank transfers?
✎ Suggest a change
Try our AI-powered tools
Generate professional texts, emails, bios and slogans in seconds. 10 free credits at sign up — no card needed.