Developer Tools
ISIN Validator
Validate an ISIN in your browser: 12-character shape, Luhn check digit, country and NSIN breakdown, batch checking, and CUSIP to ISIN. No signup.
Enter a 12-character ISIN. Letters are upper-cased and spaces or dashes are ignored, so a printed form like US 0378331005 works as is.
Valid ISIN
US0378331005
US prefix (United States), NSIN 037833100, check digit 5.
Checks
Length
12 characters, the required length for an ISIN.
Country prefix (2 letters)
Prefix US (United States).
Check digit (Luhn mod 10)
Luhn over the expanded body is divisible by 10.
ISIN breakdown
Country prefix
US
Characters 1 to 2
National number (NSIN)
037833100
Characters 3 to 11
Check digit
5
Character 12
Country prefix
US (United States)
A recognized ISIN allocation prefix.
Check digit math
Body expands to 3028037833100
Luhn over that number with 5 appended is a multiple of 10, so the check digit is correct.
How an ISIN is checked
Structure
12 characters: a 2-letter country or special prefix, a 9-character national number (NSIN), and a final check digit. For US and Canada the NSIN is usually a CUSIP.
Check digit (Luhn)
Every letter in the first 11 characters is expanded to its value (A is 10, B is 11, up to Z is 35), the result is concatenated into one long number, and the Luhn mod 10 algorithm sets the last digit.
A passing result means the ISIN is well formed and its check digit is correct. It does not confirm that the security exists, is currently listed, or maps to a particular issuer, which can only be confirmed in a securities reference database. Everything here runs in your browser; nothing you type is uploaded.
How to use
- Choose Single ISIN for a full breakdown of one code, Batch list to check one ISIN per line, or CUSIP to ISIN to build a US ISIN from a CUSIP.
- Type or paste the ISIN. Letters are upper-cased automatically and spaces or dashes are ignored, so a printed form works as is.
- Read the verdict and the per-check details: the 12-character length, the two-letter country prefix, and the Luhn mod 10 check digit.
- If the check digit is wrong, the result shows the digit it should be and the corrected ISIN, so a single typo is easy to fix and copy.
- In batch mode, read the per-row status and counts, then use Copy valid only to keep just the ISINs that pass.
About this tool
ISIN Validator checks International Securities Identification Numbers (ISO 6166) entirely in your browser, using only the rules that are deterministic from the code itself, so there is no lookup against any securities database. An ISIN is exactly 12 characters in three parts: a two-letter prefix (an ISO country code such as US, GB, or DE, or a special allocation such as XS for international securities cleared through Euroclear and Clearstream), a nine-character national security number (the NSIN, which for US and Canadian securities is normally a CUSIP), and a final check digit. That check digit is what most people come here to verify. It is computed with the Luhn mod 10 algorithm, but with a twist that trips up naive implementations: every letter in the first 11 characters is first expanded to its base-36 value, so A becomes 10, B becomes 11, and so on up to Z as 35, the whole sequence is concatenated into one long decimal number, and Luhn then determines the last digit. Because the check digit is fully determined by the first 11 characters, the tool does more than say pass or fail: when a check digit is wrong it reports the digit that should have been there and shows the corrected ISIN, so a single transposed or mistyped character is easy to spot and copy. The breakdown panel splits any ISIN into its country prefix (named where the prefix is recognized), its NSIN, and its check digit, and shows the expanded digit string that feeds the Luhn calculation so you can follow the math by hand. Single mode gives that full breakdown for one ISIN. Batch mode validates an entire column at once, one ISIN per line, cleans each line to letters and digits, upper-cases it so lower-case pastes work, marks every row valid, invalid, or skipped with a short reason, counts the totals, and lets you copy back only the valid entries, which is the fastest way to clean an export from a spreadsheet, a fund fact sheet, a portfolio file, or a vendor feed. A third mode derives an ISIN from a CUSIP: since a US or Canadian ISIN is simply the country code US followed by the nine-character CUSIP and one ISIN check digit, you paste a CUSIP and get the matching ISIN back, with a note when the CUSIP's own ninth-character check digit (a different mod 10 scheme that this tool also verifies) does not validate so you can catch a bad source CUSIP before trusting the derived ISIN. A passing result proves only that the ISIN is well formed and its check digit is correct. It does not prove that the security exists, is currently listed, or maps to a particular issuer, which can only be confirmed in a securities reference database. Everything is computed locally on your device, so the ISINs, CUSIPs, and portfolio identifiers you paste here are never uploaded, logged, or sent anywhere.
Free to use. Works in your browser. No signup, no login.
Related tools
You may also like
IBAN Validator
Mod-97 checksum, country format check, and bank identifier extraction in one view.
Open tool
DeveloperRouting Number Validator
Check the 3-7-1 check digit and Federal Reserve routing symbol, one number or a whole list.
Open tool
DeveloperCredit Card Validator
Luhn checksum, brand detection, length rules, and public test card numbers in your browser.
Open tool
DeveloperLuhn Algorithm Calculator
Validate Luhn, generate the check digit, or batch-check identifiers.
Open tool
DeveloperBarcode Validator
Validate UPC, EAN, GTIN, ISBN, ISSN check digits and convert ISBN-10 to ISBN-13.
Open tool
DeveloperVAT Number Validator
Format and check-digit validation for EU, UK, and XI VAT numbers, single or batch.
Open tool