Technical SEO / E-commerce
GTIN, UPC, EAN & ISBN Checksum Validator
Paste a batch of product barcodes or book ISBNs, one per line. We recompute every check digit with the real GTIN (mod-10) and ISBN-10 (mod-11) algorithms and flag anything Google Merchant Center or a Product rich result would reject.
You can paste bare codes, codes prefixed with "ISBN"/"UPC"/"EAN"/"GTIN", codes with spaces or dashes, or spreadsheet exports like "SKU-1042, 9780306406157" — the label before the last comma or tab is kept for reference and ignored in the check.
What this tool checks
Every GTIN, UPC, EAN and ISBN ends in a check digit computed from the digits before it. A single mistyped or transposed digit anywhere in the code changes that check digit, which is exactly how Google Merchant Center, POS scanners, and library systems catch bad codes automatically — this tool runs the same math so you can catch it before they do.
How the checks work
Nothing here is guessed — each code is classified by its length, then validated against its real published check-digit algorithm.
GTIN family (mod-10): EAN-8, UPC-A, EAN-13, GTIN-14
The GTIN.org / GS1 algorithm: starting from the digit just left of the check digit, alternate weights of 3 and 1, sum the products, and the check digit is whatever makes the total a multiple of 10. This covers 8, 12, 13, and 14-digit codes with one formula.
ISBN-10 (mod-11)
A different, older algorithm used only by 10-digit ISBNs: each of the first 9 digits is weighted 10 down to 2, summed, and the remainder mod 11 gives the check digit — where a remainder of 10 is written as the letter X, not a two-digit number.
Duplicate detection
The same code appearing twice in a batch is flagged separately from validity — a duplicate GTIN across two different products is one of the most common reasons Google Merchant Center suspends listings, even when both codes individually pass the checksum.
Why it matters for SEO & Merchant Center
Schema.org Product markup (gtin8/gtin12/gtin13/gtin14/isbn) and Google Merchant Center feeds are both validated against these same check-digit rules — an invalid code is silently rejected or flagged as a data-quality issue, which can block Product rich results and shopping ads entirely.
Frequently asked questions
What is a "check digit" and why does one wrong digit matter so much?
It is the last digit of a barcode or ISBN, mathematically derived from every digit before it. If any single digit in the code is mistyped, duplicated, or swapped with its neighbor, the check digit almost never matches anymore — which is exactly why scanners and Google Merchant Center use it to catch data-entry errors automatically.
My 13-digit code passed as EAN-13 but I expected it to be an ISBN. Why?
ISBN-13 codes are, mathematically, ordinary EAN-13 codes reserved in the "Bookland" ranges 978 and 979 — the checksum math is identical. This tool labels a 13-digit code as ISBN-13 automatically when it starts with 978 or 979, and as generic EAN-13/GTIN-13 otherwise.
Can this tool tell me the correct check digit for a code that failed?
Yes — for any code with a valid length whose check digit does not match, the results table shows both the digit you provided and the one the algorithm actually computes, so you can see exactly what to fix.
Does this tool support UPC-E (compressed 6-8 digit codes)?
Not yet — UPC-E requires expanding the compressed code back to its full 12-digit UPC-A form before the checksum applies, which is a different process from validating a code that already carries its own check digit. Expand it to UPC-A first, then paste the 12-digit result here.