Luhn Check Digit Calculator

Paste a partial number (without its check digit) and get the Luhn check digit plus the completed, valid number. Runs entirely in your browser — nothing is uploaded.

Result

Generate a Luhn check digit in your browser

Paste a partial number — the payload without its check digit — and instantly get the Luhn (mod-10) check digit plus the completed, valid number. Everything runs locally in your browser; the number is never uploaded.

What you get

Check digit vs. validation

This tool generates the missing check digit — every digit you enter is treated as payload. If you instead have a complete number and want to know whether it's already valid, use the Luhn Validator, where the last digit is treated as the existing check digit.

Notes

FAQ

Do I include the last digit of my number when pasting?

No — paste the payload without its check digit. This tool treats every digit you enter as payload and appends the missing mod-10 digit. If you paste a full 15-digit card body, you get back the 16th digit and the completed number. To test a number that already has its check digit, use the Luhn Validator instead.

What characters are allowed in the input?

Digits, spaces, and dashes — separators are stripped before computing, so 4242-4242-4242-424 and 4242 4242 4242 424 both work. Any other character (letters, dots, etc.) produces an explicit error rather than being silently dropped, and an input with no digits at all is rejected.

Does a valid Luhn check digit mean the card number is real?

No. Luhn is only a typo detector — it catches single-digit errors and most adjacent transpositions. Any random digit string can be completed to a Luhn-valid number, so a passing checksum says nothing about whether a card account exists, is active, or belongs to anyone.

Where is Luhn used besides credit cards?

IMEI numbers on phones, Canadian Social Insurance Numbers, many national ID and loyalty-card schemes, and various invoice/reference-number formats all append a Luhn mod-10 check digit — this tool works for any of them since the algorithm is identical regardless of length.

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool luhn-checkdigit "424242424242424"

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/luhn-checkdigit/?number=424242424242424

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.