Routing Number Validator
Paste a 9-digit ABA routing number and this tool tells you whether it passes the official check-digit formula that every U.S. bank uses. It runs entirely in your browser, so the number you type never leaves your computer.
A failed check almost always means a typo. Catching it here, before the number reaches the routing field of a positive pay or check issue file, keeps your bank from rejecting the upload or flagging good checks as exceptions.
How the routing number check digit works
An ABA routing number is exactly 9 digits. The last digit is a check digit, a value calculated from the first eight so that machines can spot a mistyped number instantly. The math uses a repeating weight pattern of 3, 7, 1 applied left to right across all nine positions.
The number is valid when the weighted sum is evenly divisible by 10:
[ 3(d1 + d4 + d7) + 7(d2 + d5 + d8) + 1(d3 + d6 + d9) ] mod 10 = 0
If that total does not end in a zero, the number cannot be a real routing number. This validator runs the same formula, so a green result means the number is structurally sound. It does not confirm which bank owns the number, only that the digits are internally consistent.
Why this matters for positive pay
A positive pay file, also called a check issue file, lists every check you wrote so your bank can match presented checks against your records. Most bank layouts include the routing number tied to the account the checks are drawn on. If that field holds a transposed or mistyped routing number, the whole file can fail validation at upload, or individual records can post as exceptions that you then have to clear by hand.
Validating the routing number before you generate the file removes one of the most common upload errors. See the positive pay file format reference for where the routing field sits in common bank layouts, and read what is positive pay for how the matching process works end to end.
Where to find a routing number
The routing number is the first group of 9 digits in the MICR line, the magnetic-ink characters printed along the bottom of a check. It sits between two transit symbols on the left side of that line. If you are reading it straight off a check image, the MICR line and positive pay guide explains how to tell the routing number apart from the account and check numbers, and our MICR line decoder can pull all three out for you.
What a valid result does and does not mean
A passing check digit confirms the number follows ABA rules. It does not prove the bank is currently active, that the account exists, or that you copied the right number for the right account. Treat this tool as a fast typo filter, then confirm the actual routing number against a bank statement, a voided check, or paperwork from the bank itself before you rely on it for payments.
Frequently asked questions
What is a routing number check digit?
It is the ninth and final digit of an ABA routing number. It is calculated from the first eight digits using a fixed 3, 7, 1 weight pattern so that any single mistyped or transposed digit makes the number fail the formula. This tool runs that exact calculation.
Does a valid routing number mean the bank account is real?
No. The validator only confirms the 9 digits are internally consistent and could be a real routing number. It does not verify that the bank is active or that any specific account exists. Always confirm the number against bank paperwork before using it for payments.
Why does my routing number fail validation?
Almost always a typo. Check for a transposed pair of digits, a missing or extra digit, or a number that is not exactly 9 digits long. Re-read it from the MICR line on a check or from a bank statement and try again.
Is the routing number the same as the number in my positive pay file?
Many bank positive pay layouts include the routing number for the account the checks are drawn on. Validating it here first helps the file pass your bank's upload checks. See the positive pay file format reference for where the field appears in your bank's layout.
Is this routing number validator safe to use?
Yes. The check runs entirely in your browser using JavaScript. The number you type is never sent to a server or stored anywhere, so nothing leaves your computer.