Skip to content
Plaintools

IBAN validator

Paste an IBAN. We strip spaces, check the country length, and run the ISO 7064 mod-97 checksum. You get the country, the BBAN, and a yes or no. The number stays in memory in this tab — there is no request that includes it.

IBAN never leaves this tab

Spaces and hyphens are ignored.

Paste an IBAN to see country, BBAN, and a yes/no. We do not log the number. For 6-digit UK bank branch sort code format verification, use the dedicated UK sort code checker.

IBAN validator example

The official UK specimen

GB82 WEST 1234 5698 7654 32 validates: United Kingdom, checksum ok, BBAN WEST12345698765432. For a UK IBAN we also show the embedded sort-code digits as format only.

IBAN validator how-to

  1. Normalize: strip spaces and hyphens, uppercase. Group for display: replace every 4 chars with `$1 ` and trim.
  2. countryCode = slice(0,2), checkDigits = slice(2,4), bban = slice(4). Allowed charset: A–Z0–9. Must start with two letters then two digits.
  3. Look up country length: AD=24, AE=23, AL=28, AT=20, AZ=28, BA=20, BE=16, BG=22, BH=22, BR=29, BY=28, CH=21, CR=22, CY=28, CZ=24, DE=22, DK=18, DO=28, EE=20, EG=29, ES=24, FI=18, FO=18, FR=27, GB=22, GE=22, GI=23, GL=18, GR=27, GT=28, HR=21, HU=28, IE=22, IL=23, IQ=23, IS=26, IT=27, JO=30, KW=30, KZ=20, LB=28, LC=32, LI=21, LT=20, LU=20, LV=21, MC=27, MD=24, ME=22, MK=19, MR=27, MT=31, MU=30, NL=18, NO=15, PK=24, PL=28, PS=29, PT=25, QA=29, RO=24, RS=22, SA=24, SE=24, SI=19, SK=24, SM=27, TN=24, TR=26, UA=29, VA=22, VG=24, XK=20. Unknown two-letter codes fail. lengthOk iff normalized.length === expected.
  4. Checksum (ISO 13616): if length >= 5 and charset ok, rearrange to bban + countryCode + checkDigits. Expand A=10 … Z=35 (charCode - 55). Running ISO 7064 mod-97: remainder = 0; for each decimal digit remainder = (remainder * 10 + digit) % 97. checksumOk iff remainder === 1.
  5. valid = errors.length === 0 && checksumOk && lengthOk. Existence at the bank is not checked.
  6. GB only: if bban.length === 18 and bban.slice(4,10) is 6 digits, show them as a sort code. Do not run Vocalink weights.

Related tools

Dev

JWT decoder

Read a JWT header and payload, with human timestamps and an expired flag. The token stays in the tab.

Dev

Text diff checker

Compare two texts with a live line and word diff. Optional ignore-whitespace.

Checkers

Sort code checker

Validate UK 6-digit sort code formatting (12-34-56 or 123456) and identify clearing banks locally. Format check only; no live bank verify.

Checkers

ISBN validator

Validate ISBN-10 and ISBN-13 book numbers, verify modulo checksums, identify publisher country/group, and convert between formats in your browser.

IBAN validator FAQ

Do you log or upload the IBAN?
No. Validation is arithmetic in the page. There is no analytics call, no server Action, and no paste of the field to a backend. Refresh and it is gone.
What do you actually check?
Characters, country code, published IBAN length for that country, and the ISO 13616 checksum. That is not proof the account exists or that the bank will accept a payment.
Can you validate a UK sort code?
For 6-digit UK bank branch sort code formatting (12-34-56) and clearing network identification, see our UK sort code checker. If the IBAN is GB, this validator displays the six sort-code digits embedded in the BBAN.
Why is my IBAN the wrong length?
Each country has a fixed IBAN length. Spaces do not count. If you dropped a digit or pasted a national account number without the country prefix, the length check fails first.
How do I validate an IBAN checksum without this page?
Strip spaces and hyphens, uppercase. Require two-letter country + two check digits + BBAN, A–Z0–9 only. Look up the ISO 13616 length for that country (this tool’s table is in the markdown recipe; unknown codes fail). Rearrange to BBAN + country + check digits, map A=10…Z=35, then ISO 7064 mod-97: remainder starts at 0, for each digit remainder = (remainder * 10 + digit) % 97; valid checksum iff remainder is 1. valid means no errors and length plus checksum both pass. For GB with an 18-character BBAN, digits 4–10 are shown as a sort code only — no Vocalink weights.
Does a valid IBAN checksum guarantee that the bank account exists?
No. The ISO 7064 mod-97 check confirms mathematical structure and country formatting rules, preventing typos and transposition errors. It does not verify whether the account is currently open, active, or authorized to receive wire transfers with the bank.