Bank Code & Payment Tools

US Routing Number Validator

Validate a nine-digit US routing number with the ABA weighted checksum, decode what the prefix says about the Federal Reserve district and the institution type, and check a whole list at once.

  • Checksum verdict with the working
  • District and type from the prefix
  • CSV export
Runs in your browser

Everything you paste, type or drop is processed in this browser tab. It is not uploaded, logged, stored or sent to analytics.

ABA routing workspace

1 Routing numbers

Try:

Spaces and dashes are ignored. Up to 2,000 lines, checked in this tab.

2 Checksum and prefix

Enter a routing number and the 3-7-1 weighted check appears here, digit by digit.

What the US Routing Number Validator does

This page runs the ABA weighted checksum over a nine-digit US routing number and shows every step: each digit, the weight it is multiplied by, the product, the total, and whether that total divides exactly by ten. It also decodes what the first two digits say about the Federal Reserve district and the type of routing symbol, and it will check a pasted list in one pass.

The arithmetic happens in this browser tab. Nothing is uploaded, which is the right default for a number that appears on the bottom of every cheque you have ever written.

A passing checksum is a weak signal on its own - roughly one random nine-digit number in ten passes it - so the page is explicit that it is checking arithmetic, not confirming that the number belongs to a live bank or that an account behind it exists.

How to use it

  1. Paste a nine-digit routing number. The weighted sum table, the verdict and the prefix decoding appear as you type.
  2. To check several, paste one per line. The page switches to a table with a pass or fail, the weighted total and the prefix range for each.
  3. Read the prefix. 01-12 is a primary Federal Reserve routing symbol, 21-32 the thrift range for the same districts, 61-72 the electronic-transaction range, and 80 traveller's cheques. Anything else is not a range the published scheme assigns.
  4. Export as CSV or JSON if you are reviewing a payment file, or copy the summary.

Reading the results

The checksum catches transcription errors, which is what it was designed for in the days of typed cheque deposits. It catches every single wrong digit and most adjacent transpositions.

It does not catch a number that was never issued. Because only the total matters, one in ten random nine-digit strings passes, so a pass is necessary but nowhere near sufficient.

The prefix is genuinely informative: a number beginning 06 is a primary routing symbol in the Atlanta district, while 26 is the thrift range for the same district. A prefix outside the published ranges, with a passing checksum, almost always means the number is invented.

A bank often has more than one routing number - one for wire transfers, another for ACH, sometimes one per state from an old acquisition. Checking the wrong one against the right account is a common cause of returned payments, and no checksum will notice.

Worked example: checking 021000021 by hand

The ABA weights repeat 3, 7, 1 across the nine digits. For 021000021 that is 0x3, 2x7, 1x1, 0x3, 0x7, 0x1, 0x3, 2x7 and 1x1, which gives 0 + 14 + 1 + 0 + 0 + 0 + 0 + 14 + 1 = 30. Thirty divides exactly by ten, so the checksum passes.

The first two digits are 02, which is the primary Federal Reserve routing symbol range for district 2, New York.

Change the last digit to a 2 and the total becomes 31, which leaves 1 on division by ten, so the page reports a failure. Notice what it cannot say: it knows something is wrong but not which digit, because the total is computed over all nine at once. Change instead the first digit from 0 to 6 - 621000021 - and the total becomes 48, a fail. But 681000021 would total 60 and pass the arithmetic while carrying prefix 68, an electronic-transaction range for district 8, which is a perfectly plausible-looking number that may well not exist.

Formulas and scoring rules

ABA checksum
3(d1 + d4 + d7) + 7(d2 + d5 + d8) + (d3 + d6 + d9) mod 10 = 0Digits are numbered left to right. The weights 3, 7, 1 repeat three times.
Prefix meaning
01-12 primary district; 21-32 thrift (district = prefix - 20); 61-72 electronic (district = prefix - 60); 80 traveller's chequeAny other leading pair is outside the published scheme.

What the nine digits are for

The first four digits are the Federal Reserve routing symbol, which identifies the Reserve Bank office that handles the item. The next four are the ABA institution identifier, assigned to the bank itself. The ninth is the check digit that makes the weighted total come out to a multiple of ten.

That structure is why the prefix decoding is worth reading. The ranges were laid out deliberately - primary, thrift and electronic - so a number whose prefix falls outside them is either from a scheme this page does not know about or is not a routing number at all, regardless of what the checksum says.

Routing number, account number and the five questions

People often ask whether a routing number is 'valid' when they mean one of five different things: does it look right, does its check digit agree, is it in the Fed's directory, which bank is it, and does the account behind it exist and belong to my payee. This page answers the first two, and decodes the prefix. It cannot answer the last three.

The directory question is answered by the Federal Reserve Financial Services E-Payments Routing Directory, which is published and searchable. The account questions are answered only by the bank, by a micro-deposit verification, or by a contracted account-verification service - all of which involve handing the details to someone.

Limitations: what the result does not prove

  • Checksum only. It cannot confirm that the routing number is assigned to a live institution, which bank it belongs to, or that an account behind it exists.
  • Roughly one in ten random nine-digit numbers passes the checksum, so a pass on its own is weak evidence. Read the prefix as well.
  • Wire, ACH and cheque routing numbers for the same bank are often different. A number that passes here can still be the wrong one for the payment you are making.
  • It cannot confirm account ownership, an available balance, or that a payment will succeed.

Privacy: where your data goes

Everything you paste, type or drop is processed in this browser tab. It is not uploaded, logged, stored or sent to analytics. Session recording and tag-manager scripts are switched off on this page.

Standards and sources

Frequently asked questions

How is a US routing number check digit calculated?

Multiply the nine digits by the repeating weights 3, 7, 1, add the products, and the total must be a multiple of ten. The ninth digit is chosen to make that true, so it is the check digit. The table above shows every product for the number you enter.

Does a valid checksum mean the routing number is real?

No. One nine-digit number in ten satisfies the arithmetic by chance. The checksum was designed to catch typing errors, not to prove existence. Combine it with the prefix ranges, and confirm against the Federal Reserve E-Payments Routing Directory if it matters.

What do the first two digits of a routing number mean?

They place the number in the published scheme: 01 to 12 are primary Federal Reserve routing symbols for the twelve districts, 21 to 32 are the thrift range for those same districts, 61 to 72 are the electronic-transaction range, and 80 is traveller's cheques. Anything else is outside the scheme.

Why does my bank have two different routing numbers?

Usually because wires and ACH are handled differently, or because an acquisition left the bank with regional numbers it still honours. Using the ACH number for a wire, or a legacy state number for a new account, produces a returned payment that no format check can predict.

Can I check a routing number and an account number together?

Not arithmetically. Unlike the UK, the US has no published modulus scheme that links an account number to its routing number, and account number formats vary from bank to bank. Verification is done by micro-deposits or by a bank-operated service.

Is it safe to type my routing number into a website?

A routing number on its own is public - it is printed on every cheque and listed in the Fed's directory. The account number is the sensitive part. This page only takes the routing number, runs in your browser, and sends nothing anywhere.

What is the difference between a routing number and a SWIFT code?

A routing number identifies a bank inside the US clearing system and is nine digits; a SWIFT/BIC identifies an institution internationally and is eight or eleven letters and digits. An international wire to a US bank often needs both - the BIC to reach the bank, the routing number to reach the branch or department.

Can this tool tell me which bank a routing number belongs to?

Only the Federal Reserve district and the type of routing symbol, both read from the first two digits. Naming the institution needs the E-Payments Routing Directory, which this page does not bundle rather than shipping a stale copy that would name banks wrongly.

Last reviewed by the A2Z.Tools team against the sources listed above.

Rate this tool

Was this tool useful? Your feedback helps us improve it.

No ratings yet — be the first to rate this tool.
Your rating (required)
0 / 2000

Please do not include passwords, payment details or other sensitive information.

Your feedback is sent privately to the A2Z.Tools team and will not be posted publicly.