GTIN Validator
Validate GTIN-8, GTIN-12, GTIN-13 and GTIN-14 product identifiers. Verifies the check digit locally — no signup, no upload.
Result
Paste a GTIN and press Validate. The detected type, cleaned number and check digit will appear here.
Supported GTIN types
The validator handles every standard GS1 GTIN length with the same mod-10 algorithm.
8-digit EAN-8 for small retail packages.
12-digit UPC-A used in the US and Canada.
13-digit EAN-13 — the global retail standard.
14-digit ITF-14 used on cases, cartons and pallets.
How the GTIN check digit is calculated
Every GTIN ends in a mod-10 check digit that catches most single-digit typos and many transpositions. The validator runs exactly these steps for you — here is the math worked out by hand so you can verify a code anywhere.
- Take the GTIN without its check digit0 3 6 0 0 0 2 9 1 4 5
- Multiply digits alternately by 3 and 1 (from the right)0×3 3×1 6×3 0×1 0×3 0×1 2×3 9×1 1×3 4×1 5×3
- Sum the products0 + 3 + 18 + 0 + 0 + 0 + 6 + 9 + 3 + 4 + 15 = 58
- Round up to the next multiple of 1060
- Subtract the sum — that's the check digit60 − 58 = 2
The same algorithm applies to GTIN-8, GTIN-12, GTIN-13 and GTIN-14 — only the number of digits changes.
About this GTIN validator
This GTIN validator confirms whether a product identifier is structurally correct using the GS1 mod-10 check digit algorithm. It accepts all four GTIN lengths — GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13) and GTIN-14 (ITF-14) — so you can paste any retail or logistics code without thinking about the format up front.
The check runs entirely in your browser. There's no upload step, no signup and no paid API behind it.
When to use it
- Bulk-checking GTINs before sending a product feed to Amazon, eBay or Shopify.
- Catching mistyped digits in a supplier's spreadsheet before importing it.
- Verifying a GTIN-14 carton code matches the inner GTIN-13 item code (after wrapping).
- Confirming a freshly minted GTIN before issuing it to a printer.
- Debugging why a marketplace listing is being suppressed for an invalid identifier.
How it works
- Paste the GTIN
Type or paste any GTIN-8/12/13/14. Spaces, dashes, underscores and dots are cleaned automatically.
- Auto-detect the type
Length determines whether the code is treated as GTIN-8, GTIN-12, GTIN-13 or GTIN-14.
- Check the check digit
We run the GS1 mod-10 algorithm and compare against the digit you provided.
- See the result
Valid codes show the detected type and cleaned number. Invalid codes show the expected check digit.
- Copy or fix
Copy the cleaned, validated code to the clipboard or apply the suggested fix.
What to avoid
- Validating GTINs that still have spreadsheet apostrophes or thousand-separators attached.
- Assuming a structurally valid GTIN means the product exists — it only means the number is well-formed.
- Treating GTIN-14 cartons and inner GTIN-13 items as interchangeable in feeds.
- Using internal SKU numbers as GTINs — they almost never validate.
- Trusting any code where someone has 'fixed' the check digit by hand without recomputing it.
Tips & tricks
- If validation fails with a one-off check digit, you almost certainly have a typo in the body.
- Use the Check Digit Calculator when you have the first 7/11/12/13 digits and need the missing one.
- For bulk lists, paste each GTIN in turn — batch tooling is on the roadmap.
- A GTIN-13 starting with 0 is the same code as a GTIN-12 (UPC-A) — both are valid.
- GTIN-14 'indicator digits' 1–8 mean inner packs/cases; 9 means variable measure.