Check a card number’s Luhn digit, scheme and length in your browser; it is never sent
Runs in your browser. Nothing you type is sent anywhere. Checked against sources on 15 Oct 2026.A card number validator checks the arithmetic, not the account: the Luhn check digit, the scheme its first digits belong to (Visa starts with 4, American Express with 34 or 37) and whether the length fits. The check runs on this page and the number is never sent anywhere. Passing proves only that the number is well formed; it cannot pay for anything or show that a card exists.
| Scheme | Starts with | Digits |
|---|---|---|
| Visa | 4 | 13, 16 or 19 |
| Mastercard | 2221-2720, 51-55 | 16 |
| American Express | 34, 37 | 15 |
| RuPay | 60, 65, 81, 82, 508 | 16 |
| Discover | 6011, 644-649, 65 | 16 to 19 |
| JCB | 3528-3589 | 16 to 19 |
| Diners Club | 30, 36, 38, 39 | 14 to 19 |
| UnionPay | 62 | 16 to 19 |
| Maestro | 5018, 5020, 5038, 5893, 6304, 6759, 6761, 6762, 6763 | 12 to 19 |
| Mir | 2200-2204 | 16 to 19 |
Type or paste the card number; spaces and hyphens are fine.
Read the verdict: Luhn check passes, or the last digit the number should have.
See the scheme the first digits belong to and whether the length fits it.
If the number is a published sandbox card, the page names the gateway that lists it.
Every payment gateway gives developers a sandbox: a test mode with its own keys, where a checkout can be tried end to end without moving money. Each gateway also publishes the card numbers its sandbox accepts. Stripe's best known is 4242 4242 4242 4242, a Visa that always succeeds; Razorpay lists domestic cards for India, including a RuPay card, 6527 6589 0000 1005.
This page hands out exactly those published numbers and nothing else. That is a deliberate rule. A "generator" that put random digits behind a real issuer prefix could produce the number of somebody's live card, and a gateway's sandbox would refuse it anyway, because test mode only knows its own list. So each number here is copied digit for digit from the gateway's page, with the source linked and the date it was read, and only the expiry date and CVV are made up: a month one to five years ahead, and three digits, or four for American Express, as Stripe asks.
The checker works on any number you paste. It runs the Luhn check, the mod 10 checksum in ISO/IEC 7812 that catches a mistyped digit and most swapped pairs, names the scheme from the first digits, and checks the length. It also says when a number is one of the published test cards. A pass means only that the number is well formed: whether a card exists, is active or has funds is known only to its bank.
The rest of the article, and all 6 questions about Test Credit Card Numbers, are on the Test Credit Card Numbers page.
Stripe's standard test card is 4242 4242 4242 4242, a Visa that always succeeds in test mode. Use any future expiry date and any three-digit CVC; American Express test cards take four digits. Stripe also publishes cards that decline, cards issued in countries such as India and the UAE, and cards that ask for 3D Secure.
Razorpay publishes domestic test cards such as the Visa debit 4100 2800 0000 1007 and the RuPay credit 6527 6589 0000 1005, plus international Mastercard and Visa cards. Enter any future expiry and any CVV, then an OTP of 4 to 10 digits on the test bank page for a successful payment.
Random digits behind a real issuer prefix can match the number of a real person's card, and gateways' sandboxes accept only their own published numbers anyway. Every number on this page is copied from Stripe's or Razorpay's test-card page, so it cannot belong to a live card and does work in test mode.
Paste the number into the checker. The Luhn check confirms the last digit fits the others, the first digits name the scheme, and the length is compared with what that scheme uses, such as 15 digits for American Express. A pass shows the number is well formed, not that the card exists or has funds.
Rates and rules change; check the source before you rely on a figure.
Still stuck? Ask about Test Credit Card Numbers and anybody who knows can answer. No account needed.
Same job, other tools: Twitter Card Validator – Check twitter:card tags and the og: tags X falls back to.
On the related tools: Readability Checker – Flesch reading ease and grade level, with what to change · JSONPath Evaluator – Evaluate a JSONPath expression and get the matching values and their paths.
In the collection Test Data Generators.