Credit Card Validator

Free credit card validator. Check a card number with the Luhn checksum, identify the issuing network (Visa, Mastercard, Amex, Discover…) from the BIN, and format it. Validates only — nothing is stored or sent. Runs in your browser.

Enter a card number to validate it. Nothing is stored or sent.

How credit card validator works

This validator runs two checks on a card number. First it identifies the issuing network from the BIN — the first few digits — using the published IIN ranges: Visa starts with 4, Mastercard with 51-55 or 2221-2720, American Express with 34 or 37, Discover with 6011, 65 or the 622126-622925 range, and so on.

Then it applies the Luhn checksum: starting from the rightmost digit, every second digit is doubled and, if the result exceeds 9, 9 is subtracted; the sum of all digits must be a multiple of 10. A number is valid only when it passes Luhn AND its length matches the identified network (for example 16 digits for Mastercard, 15 for Amex).

The tool validates only. It never stores, transmits, or logs the number — every check runs in your browser, so it is safe to paste a real card. It cannot tell you whether an account is open, has funds, or is authorised; it only confirms the number is structurally well-formed. Use it to catch typos in forms or to test payment-form input validation.

Frequently asked questions

Is it safe to enter my real card number?
Yes. The validation runs entirely in your browser — the number is never stored, sent to a server, or logged. Still, for routine form testing you can use any Luhn-valid number in the recognised test range rather than your own card.
What is the Luhn algorithm?
The Luhn checksum doubles every second digit from the right, subtracts 9 from any result over 9, and sums everything. If the total is divisible by 10 the number passes. It catches single-digit errors and most transpositions, which is why it is used on card numbers.
Can a number pass Luhn but still be fake?
Yes. Luhn only checks the checksum, not whether an account exists. A number can be structurally valid and pass Luhn yet not correspond to any real account. This tool confirms a number is well-formed, not that it is issued.
How does it know the card network?
Each network owns specific starting digit ranges (the BIN/IIN). The validator matches the leading digits against those published ranges — Visa 4, Mastercard 51-55 and 2221-2720, Amex 34/37, Discover 6011/65/622126-622925, JCB 3528-3589, and more.