Credit Card Validator – Luhn Check & Card Type Detection

Check whether a credit card number passes the Luhn (mod 10) checksum and see which network issued it — Visa, Mastercard, Amex, Discover, JCB, Diners, Maestro, UnionPay, Elo, Hipercard, Dankort, or Mada. A step-by-step breakdown shows every doubled digit and the running sum. Built for developers testing payment forms — runs fully in your browser, so use test numbers only.

🔒 Pure browser tool — nothing is uploaded.

Testing Only: Never enter real credit card numbers in online tools. Use test card numbers for development purposes.

Card Number

Card Details

-
Card Type
-
Digits
-
Checksum

Test Card Numbers

Click to use these test numbers:


Invalid test numbers:

Validation Result

Enter a card number to validate

Card Number Prefixes

CardPrefixLength
Visa416
Mastercard51-55, 2221-272016
American Express34, 3715
Discover6011, 6516
JCB3516
Diners Club36, 3814
Maestro5018, 5020, 5038, 6304, 6759, 6761-63, 677112-19
UnionPay6216-19
Elo5066, 5067, 509, 636316
Hipercard6062, 384116
Dankort501916
Mada5297, 5892, 4370, 490316

How to validate a credit card number

  1. Type or paste a card number into the field — it auto-formats into 4-digit groups as you type.
  2. Click Validate Card Number (or press Enter), or tap one of the test-card buttons.
  3. Read the result: the detected network, digit count, and whether the Luhn checksum passes.
  4. Open the Luhn Algorithm Breakdown to see every digit, which ones are doubled, and the running sum mod 10.

The Luhn check confirms the number is internally consistent — it cannot tell you whether a card is real, active, or funded. Use it for client-side form validation to catch typos before a number ever reaches a payment processor, and always test with the provided dummy numbers rather than live cards.

Related developer tools:

Frequently Asked Questions

The Luhn algorithm (mod 10) is a checksum formula used to validate credit card numbers, IMEI numbers, and other identification numbers. It catches accidental errors like typos.

This tool runs entirely in your browser - nothing is sent to any server. However, you should never enter real credit card numbers in online tools. Use test numbers only.

Payment processors provide test numbers like 4111111111111111 (Visa) or 5500000000000004 (Mastercard) for developers to test their integrations without real charges.

No. This validates the number format and checksum only. It doesn't verify if the card exists, is active, or has available balance.

Visa, Mastercard, Amex, Discover, JCB, Diners Club, Maestro, UnionPay, Elo, Hipercard, Dankort, and Mada based on number prefixes and lengths.

It shows each digit, whether it's doubled, the result after doubling and subtracting 9 if needed, and the final sum.

Test cards let developers integrate payment systems and test checkout flows without processing real transactions or handling actual card data.

Validation only checks format. Declines happen for many reasons: insufficient funds, expired, blocked, incorrect CVV/zip, etc.

Yes. Perfect for adding client-side validation to payment forms to catch typos before submitting to payment processors.

Co-branded cards display two network logos (e.g., Cartes Bancaires/Visa, Bancontact/Maestro). They're processed through either network. Our validator detects the international brand, which handles routing automatically.