Routing Number Validator
Finance & Global IDsValidate US ABA routing numbers using the official checksum algorithm instantly. Decodes the Federal Reserve district and institution type — client-side only.
Reviewed by the thecalcu.com team · Last updated July 16, 2026
What is a Routing No.?
The Routing Number Validator checks whether a US ABA routing number satisfies the official 3-7-1 weighted checksum algorithm and uses a valid Federal Reserve district prefix. A routing number is the 9-digit identifier that tells the US financial system which bank holds an account, used in ACH direct deposits, wire transfers, automatic bill payments, and cheque processing.
The validator performs two checks:
- Federal Reserve district prefix, the first two digits must be one of the 24 valid district codes (01–12 for standard institutions, 21–32 for electronic-only participants)
- ABA 3-7-1 checksum, the weighted sum
3(d1+d4+d7) + 7(d2+d5+d8) + 1(d3+d6+d9)must be divisible by 10
These checks catch the most common errors: digit transpositions (which almost always break the checksum), wrong digit count, and account number accidentally entered instead of routing number.
What it does not check: Whether the specific routing number is currently assigned to an active financial institution. The checksum confirms the number was issued correctly by the ABA; active assignment requires querying the Federal Reserve's E-Payments Routing Directory. Use the IBAN Validator for European bank accounts and the IFSC Code Validator for Indian NEFT/RTGS routing.
All validation is client-side. No data is transmitted.
Why Use a Routing Number Validator?
Routing number errors in direct deposit and wire transfer instructions cause failed or misdirected payments. A transposed digit is the most common error, it feels correct to the eye but fails the checksum immediately.
Payroll use case: An Indian company setting up US payroll for remote employees needs to collect routing numbers for ACH direct deposit. A validator at the form input level catches transpositions and account-number-instead-of-routing-number errors before they reach the payroll processor, preventing rejected ACH transactions and the fees associated with returned items.
Banking integration use case: A fintech developer building a US bank account verification flow uses the routing number checksum as a first-pass filter before making an expensive third-party micro-deposit verification call, rejecting obviously invalid numbers instantly without any API cost.
Who Should Use This Validator?
Developers building US payroll, ACH payment, or direct deposit features who need a fast client-side routing number filter before passing values to a payment processor or bank API.
Finance and HR teams at Indian companies processing US employee or contractor payments via ACH who want to validate routing number format before submitting payroll runs.
Accountants and bookkeepers verifying bank details on US vendor payment instructions before initiating wire transfers.
Fintech product teams building US consumer banking products where users enter routing numbers for external account linking.
What Insights Does the Routing Number Validator Give You?
A valid result shows the Federal Reserve Bank district identified by the first two digits, for example, prefix 02 identifies the Federal Reserve Bank of New York, and prefix 12 identifies the Federal Reserve Bank of San Francisco. This geographic attribution is a useful sanity check: a bank account for a California business should ideally have a routing number from Federal Reserve District 12 (San Francisco), not District 01 (Boston).
An invalid result specifies the failure: wrong digit count, invalid Federal Reserve prefix, or failed checksum. A failed checksum usually means a transposed digit; the error message includes the checksum formula to help developers understand the algorithm.
How to use this Routing No. calculator
- Enter the routing number in the input field, exactly 9 digits (e.g. 021000021).
- Check the Valid/Invalid badge, updates instantly.
- Read the details, Federal Reserve district and checksum result.
- If invalid: check for transposed digits and verify against the bank's official routing number page.
- If you need active institution verification: query the Federal Reserve's E-Payments Routing Directory.
Show formula & methodology ↓Show less ↑
Formula & Methodology
ABA 3-7-1 checksum:checksum = 3×(d1+d4+d7) + 7×(d2+d5+d8) + 1×(d3+d6+d9) valid if: checksum % 10 === 0Where d1 through d9 are the individual digits left to right. Example: 021000021d = [0, 2, 1, 0, 0, 0, 0, 2, 1] 3×(0+0+0) + 7×(2+0+2) + 1×(1+0+1) = 3×0 + 7×4 + 1×2 = 0 + 28 + 2 = 30 30 % 10 = 0 ✓ ValidFederal Reserve district codes: | Prefix | Federal Reserve Bank | |---|---| | 01 | Boston | | 02 | New York | | 03 | Philadelphia | | 04 | Cleveland | | 05 | Richmond | | 06 | Atlanta | | 07 | Chicago | | 08 | St. Louis | | 09 | Minneapolis | | 10 | Kansas City | | 11 | Dallas | | 12 | San Francisco | | 21–32 | Electronic-only equivalents | Valid and invalid examples: | Routing Number | Valid? | Note | |---|---|---| |021000021| ✓ | JPMorgan Chase NY, checksum passes | |021000012| ✗ | Transposed last two digits, checksum fails | |12345678| ✗ | Only 8 digits | |099999999| ✗ | Prefix 09 not a valid Federal Reserve district |
Related Tools
You may also find these useful: SWIFT / BIC Code Validator.
Frequently Asked Questions