Check4Real
Live · Federal Reserve directoryv1.0

Verify any routing number
in under a second.

Check4Real validates ABA routing numbers using the official Mod-10 algorithm and cross-references the public Federal Reserve E-Payments directory. No accounts, no logs, no tracking.

ABA Standards
Mod-10 Verified
Federal Reserve Data
Zero Data Stored
TLS Encrypted
check4real.io / verify
0/9

The 9-digit number printed on the bottom-left of any U.S. check.

How it works

Three layers of verification, in real time.

Each request runs through structural validation, the ABA check-digit algorithm, and a directory lookup — entirely on the server, with nothing stored on disk.

01

Structural validation

Confirms a 9-digit numeric format and verifies the leading prefix matches a valid Federal Reserve district.

02

Mod-10 check digit

Applies the ABA's weighted Mod-10 algorithm: 3·(d1+d4+d7) + 7·(d2+d5+d8) + (d3+d6+d9) ≡ 0 (mod 10).

03

Directory lookup

Cross-references the official Federal Reserve E-Payments directory to surface bank name, location, and contact.

Built on the right primitives

Bank-grade methodology, without the friction.

We don't guess. Verification is grounded in published ABA standards and the Federal Reserve's public directory — the same primitives banks themselves use.

  • Privacy by default

    Routing numbers are processed in-memory and discarded. No logs, no analytics, no cookies.

  • Rate-limited fairly

    10 verifications per minute per IP keeps the service free and abuse-resistant.

  • Open, inspectable logic

    Mod-10 is deterministic — re-derive the same result yourself anytime.

29,000+

U.S. financial institutions

<200ms

Average response time

0

Records stored on our servers

100%

Free, no account needed

verify.ts
const sum = 3*(d[0]+d[3]+d[6])
+ 7*(d[1]+d[4]+d[7])
+ (d[2]+d[5]+d[8]);
return sum % 10 === 0;

FAQ

Common questions.

Don't see yours? Read the privacy policy for the technical details.

Does Check4Real guarantee a check is real?

No tool can. Verifying a routing number proves the bank exists and the number is well-formed — not that the issuer has funds or that the check itself is authentic. Always confirm with your bank before depositing.

Where does the bank data come from?

We use the public Federal Reserve E-Payments directory (FedACH/Fedwire) as the authoritative source, supplemented by the BankRouting.io API for enriched lookups.

Do you store any data I enter?

No. Routing numbers are processed in-memory and discarded immediately after the response is returned. We don't use cookies, analytics, or any tracking.

Is there a rate limit?

Yes — 10 requests per minute per IP. This keeps the service free and abuse-resistant. If you need higher throughput, contact us.

Can I use this commercially?

Check4Real is provided as an informational utility. For production payment systems, you should use a licensed provider with SLAs and a contractual data source.

Informational use only

Verification confirms a routing number's structure and the issuing bank — it does not guarantee check authenticity or available funds. Always verify with your bank before accepting or depositing a check.

Read Privacy Policy