LegitInformant

Credit card number checker (Luhn)

Run the Luhn checksum and read the network and card type out of the leading digits.

Nothing leaves your browser. This tool does its work on your own machine — there is no upload, no server request, and nothing is stored.

Spaces and dashes are ignored. There is no network request on this page at all — open your browser's network tab and watch.

What the Luhn check is for

The Luhn algorithm was designed in 1954 to catch keying errors, and that is still exactly what it does. Double every second digit from the right, subtract nine from any result above nine, add everything up, and a valid number divides by ten. One wrong digit breaks it. Two adjacent digits swapped breaks it, with one exception: 09 and 90 produce the same sum.

This is why a checkout can tell you a card number is wrong before it talks to your bank. It is a spelling check, not an authorisation.

Why "valid" here means very little

Any number can be made to pass. Generators that produce Luhn-valid numbers are trivial and freely available, which is why a passing checksum is not evidence a card exists. Only the issuing bank knows whether an account is real, open, and funded, and it will not tell a website that.

So use this to catch a typo in a number you already have. Do not use it to judge whether a card number someone sent you is genuine — the answer will be yes, and it will mean nothing.

If someone asked you for these details

  • No legitimate bank, tax office, delivery company or police force will ever ask for a full card number, expiry and CVV over the phone, by email or in a chat.
  • The three digits on the back are the one part that proves the card is in your hand. Anyone asking for it is asking for the ability to spend without you.
  • If you have already given the details out, call the number on the back of your card and freeze it before anything else. Speed is what limits the damage.

Common questions

Should I type my real card number into this?

You can, because the page never transmits it. The check is arithmetic in your browser and there is no network request at all. Even so, make it a habit not to paste live card numbers into any website, and never into one that asks for the expiry date and CVV alongside.

What does the Luhn check prove?

Only that the digits are internally consistent. Every real card passes it, but so does any number a generator invents to pass it. It tells you a number is mistyped. It cannot tell you a card is real, active or funded.

What is a BIN?

The Bank Identification Number, the first six to eight digits. It identifies the network and the issuing bank, which is why a checkout can show the right card logo the moment you start typing.

These tools check form, not honesty. A valid checksum, a passing SPF record or a decoded link tells you something is well formed — never that the person behind it is telling the truth. When money is involved, verify on a phone number you already had, and run the link or address through the full check as well.