ABA Routing Number Validator (Checksum)

Check whether a US bank routing number — the nine-digit ABA routing transit number printed on checks and used for ACH, wires and direct deposit — passes the official 3-7-1 checksum. Paste one number or a list of up to 200 (one per line). Free, instant, runs entirely in your browser: nothing you type leaves this page.

What is an ABA routing number?

An ABA routing transit number (RTN) is the nine-digit identifier that tells the US payment system which financial institution holds an account. It was created by the American Bankers Association in 1910 to route paper checks between banks, and more than a century later the same nine digits still steer every ACH credit, direct-deposit paycheck, domestic wire and electronic bill payment in the United States. On a paper check it is the first group of digits printed in magnetic MICR ink along the bottom edge, usually framed by the ⑆ transit symbol.

The structure is not random. The first two digits encode the Federal Reserve district and institution type: 0112 are the twelve Federal Reserve districts (01 is Boston, 02 New York, 12 San Francisco), 2132 are the same districts offset by 20 and were historically assigned to thrifts, 6172 mark electronic-only transaction identifiers, and 80 is reserved for traveler's checks. Digits three and four narrow the number down to a Federal Reserve check-processing center, digits five through eight are the ABA institution identifier assigned to the specific bank, and the ninth digit is the check digit — a mathematical safeguard computed from the first eight.

The 3-7-1 checksum, step by step

The ABA checksum multiplies each digit by a repeating weight pattern of 3, 7, 1 and requires the total to be an exact multiple of 10. Writing the nine digits as d1 through d9, a routing number is valid when:

3·(d1 + d4 + d7) + 7·(d2 + d5 + d8) + 1·(d3 + d6 + d9) ≡ 0 (mod 10)

Worked example — 021000021, a well-known New York routing number. The digits are 0, 2, 1, 0, 0, 0, 0, 2, 1. Positions 1, 4 and 7 are 0 + 0 + 0 = 0, multiplied by 3 gives 0. Positions 2, 5 and 8 are 2 + 0 + 2 = 4, multiplied by 7 gives 28. Positions 3, 6 and 9 are 1 + 0 + 1 = 2, multiplied by 1 gives 2. The total is 0 + 28 + 2 = 30, which is a multiple of 10 — so the number passes. Change any single digit and the sum shifts away from a multiple of 10, which is why the test catches every single-digit typo and most transposition errors.

The weights 3, 7 and 1 were chosen deliberately: each is coprime with 10, so altering one digit always changes the weighted sum by a detectable amount. Because the ninth digit carries weight 1, the correct check digit can be recovered directly from the first eight — this tool does exactly that when a number fails, so you can see at a glance whether the problem is a mistyped final digit or an error somewhere earlier in the number.

Why we don't show the bank name

You may notice that other routing-number sites display a bank name next to each result — and this tool deliberately does not. Here is the honest reason. The authoritative source for which institution owns which routing number is the Federal Reserve's E-Payments Routing Directory, and its terms of use explicitly prohibit republishing or using the directory data for commercial purposes without a license. Sites that show you bank names are either violating those terms or paying for licensed data from an official registrar — and in the second case they have every incentive to collect the numbers you type in order to justify the cost.

We chose a different trade-off: this page performs only the mathematical verification, which is public-domain arithmetic defined in the ACH operating rules, and it performs it entirely in your browser. No routing number you paste here is transmitted, logged or matched against any database. You get an instant, trustworthy answer to the question the checksum can actually answer — "is this number well-formed?" — and for the question it cannot answer ("which bank is this?") the right place is your bank's own documentation or the official Fed directory itself.

When you should validate routing numbers

Before submitting ACH files. A NACHA file containing a routing number with a bad check digit will be rejected at the operator or returned with code R13/R28, delaying the whole batch. Running the checksum locally before submission catches these entries while they are still cheap to fix.

During payroll setup. Direct-deposit enrollment is the classic source of mistyped routing numbers — employees copy them by hand from a check or a banking app. Validating at the point of entry turns a failed salary payment (and the awkward conversation that follows) into an instant red underline on a form.

When onboarding vendors and customers. Accounts-payable teams collecting bank details on W-9 packets or supplier portals can screen every routing number in seconds: paste the column into the box above, one per line, and get a per-line report. A checksum failure at onboarding time costs a follow-up email; the same failure discovered at payment time costs a late payment, a return fee and sometimes a fraud investigation.

In data cleanups and migrations. When bank details move between systems, truncated leading zeros are the silent killer — a spreadsheet that stored 011000015 as the number 11000015 has destroyed the value. Because this validator requires exactly nine digits, it flags those cases immediately.

FAQ

Does passing the checksum mean the routing number belongs to a real bank?

No. The 3-7-1 checksum only proves the nine digits are internally consistent — that the number is correctly formed. Roughly one in ten random nine-digit strings passes it by chance. Whether a number is actually assigned to a financial institution is recorded in the official Federal Reserve directory; the checksum is a first filter against typos, not a registry lookup.

Where do I find my routing number?

On a paper check it is the nine-digit number printed in magnetic ink at the bottom left, before your account number. It also appears in your online banking under account details, and on your bank's website — many banks publish different routing numbers for wires, ACH and paper checks, so always match the number to the payment type you are setting up.

Why do some banks have multiple routing numbers?

Large banks that grew through mergers kept the routing numbers of the institutions they absorbed, and many banks deliberately use separate numbers for ACH transfers, domestic wires and paper checks. All of them are valid ABA numbers that pass the same checksum — what matters is using the one your bank designates for the specific payment rail.

Validating routing numbers in your own system?

Our pay-per-use API validates ABA routing numbers, IBANs and other identifiers in bulk — 25 free calls per month, no card required.

Format and checksum validation only (ABA 3-7-1 algorithm). This tool does not confirm that a routing number is assigned to any institution, does not identify banks, and does not query the Federal Reserve directory or any other registry.