How to Fix "Invalid GTIN" Errors on Amazon and Google
The four causes behind almost every GTIN error — a mistyped check digit, Excel eating your leading zeros, codes that were never licensed through GS1, and brand mismatches — and exactly how to fix each one.
A GTIN (Global Trade Item Number) is the GS1-managed product identifier behind the barcodes you see on retail packaging. It comes in four lengths: GTIN-8, GTIN-12 (the North American UPC-A), GTIN-13 (the EAN-13 used in most of the world), and GTIN-14 for cartons and cases. When Amazon Seller Central rejects a product ID, or Google Merchant Center flags an item with an "Invalid value [gtin]" or "Unsupported value" issue, the platform is telling you that the number you submitted failed one of its validation layers. The good news: the failure is almost always one of four specific problems, and each has a concrete fix.
What Amazon and Google actually check
Both platforms run your GTIN through several layers of validation:
- Structure: the code must be 8, 12, 13, or 14 digits — digits only, no letters, spaces, or hyphens.
- Check digit: the last digit must satisfy the GS1 Modulo-10 algorithm. A single typo anywhere in the number will usually break it.
- Number range: some prefixes are reserved. GS1 sets aside codes beginning with 2 (and UPC-12 codes beginning with 2 or 4) for restricted distribution and internal store use, such as variable-measure fresh food. Google Merchant Center explicitly rejects GTINs from these restricted ranges, along with coupon ranges.
- GS1 registration and brand ownership: Amazon states in its product ID requirements that it verifies GTINs against the GS1 database, and that codes not matching GS1 records may be considered invalid. Google likewise checks that the GTIN plausibly belongs to the brand you declare.
Work through the four causes below in order — they are sorted from quickest to fix to most involved.
Cause 1: A wrong check digit (usually a typo)
The final digit of every GTIN is a check digit calculated from all the preceding digits. The algorithm is simple: working from the right, multiply the digits alternately by 3 and 1, add everything up, and the check digit is whatever brings the total up to the next multiple of 10.
Take the EAN-13 4006381333931. The first twelve digits, weighted 1, 3, 1, 3… from the left, sum to 89. The next multiple of 10 is 90, so the check digit is 1 — which matches, so the code is structurally valid. Now imagine a data-entry slip turns it into 4006381339331 (two digits transposed). The math no longer works, and both Amazon and Google will reject it even though it looks perfectly plausible to a human.
The fix: paste the code into our free GTIN check digit calculator. It validates UPC, EAN, and GTIN-14 codes instantly and computes the correct final digit. If the check digit is the only thing wrong, compare the code against your GS1 certificate or the number printed under the physical barcode, fix the typo in your feed, and resubmit. Never "fix" a typo by simply recalculating a new check digit onto a mistyped body — you would create a syntactically valid code that identifies the wrong (or nobody's) product.
Cause 2: Excel stripped your leading zeros
This is the sneakiest one, and it hits UPC sellers hardest. Open a CSV in Excel and any column it interprets as numeric gets mangled in two ways:
- Leading zeros disappear. The 12-digit UPC
036000291452becomes the 11-digit36000291452— instantly invalid. - Long numbers flip to scientific notation. A 13-digit EAN can display and re-save as something like
8.85E+12, destroying the code entirely.
The fix:
- Never double-click a CSV to open it. In Excel, use Data → Get Data / From Text (or the legacy Text Import Wizard) and set the GTIN column's type to Text before loading.
- For existing spreadsheets, format the column as Text and re-enter the codes from your source of truth, or use a formula like
=TEXT(A2,"000000000000")to pad UPC-12 values back to twelve digits (thirteen zeros for EAN-13). Only do this when you know the zeros were leading — padding cannot repair a digit lost from the middle. - Before re-uploading, run the whole column through our bulk barcode validator. Paste up to thousands of codes and it flags wrong lengths, non-digit characters, and check digit failures line by line, so one bad row does not sink an entire feed.
One related trap: some feeds want your GTIN in a specific length. A UPC-A can always be written as an EAN-13 by adding a leading zero, and our UPC to EAN converter does that (and the reverse, when possible) without touching the check digit.
Cause 3: The GTIN was never licensed through GS1
If the code is structurally perfect but Amazon still rejects it — or accepts it and later suppresses the listing — the number itself is likely the problem. Legitimate GTINs are built on a GS1 Company Prefix (or a single GS1-licensed GTIN) obtained from a GS1 member organization. Over the years a gray market of "cheap UPCs" has grown up: resellers offering codes carved out of prefixes originally issued to other companies, often decades ago. Those codes may pass every mathematical check, but when Amazon compares them against GS1 records, the registered prefix holder is not you and not your brand.
The fix:
- Look your code up in GS1's free Verified by GS1 service (gs1.org). If the licensee shown is a company you have never heard of, the code is not yours in any meaningful sense.
- License your own barcodes directly from GS1 — either individual GTINs or a company prefix, through your national GS1 member organization. This is the only source Amazon recommends for GTINs, and codes you license are registered to your company name.
- If your products genuinely have no GTINs — private label, handmade, some bundles and parts — apply for a GTIN exemption in Amazon Seller Central instead of buying questionable codes. On Google Merchant Center, submit the item without a GTIN and set
identifier_existstofalsewhere the product truly has no assigned identifier. Do not invent numbers; both platforms treat fabricated identifiers as policy violations.
Cause 4: Brand and GTIN don't match
The final layer trips up even sellers with legitimate codes: the brand on the listing must line up with the GTIN's registration. Typical scenarios:
- You enrolled your brand in Amazon Brand Registry, but the GTIN you submitted is licensed to a different company (a manufacturer, a former business name, or a reseller's prefix).
- You are listing another brand's product with a GTIN that GS1 records associate with a different brand owner.
- The brand field says one thing ("AcmeGear") while the GS1 registration says another ("Acme Gear S.r.l.") — close, but not matching what the catalog expects.
The fix: first confirm who actually holds the GTIN license via Verified by GS1. If it is your company under a slightly different name, update the brand attribute on the listing to match, or update your GS1 registration data so the two agree. If you resell someone else's products, use the manufacturer's real GTIN and their brand name — never your own brand with their code. And if you own the brand but the codes belong to someone else, that is Cause 3 wearing a different hat: license your own numbers.
A quick triage checklist
| Symptom | Likely cause | First step |
|---|---|---|
| Code rejected instantly on entry | Length or check digit | Validate at /gtin-check-digit/ |
| Whole feed fails after editing in Excel | Lost zeros / scientific notation | Re-import as Text, run bulk validation |
| Valid-looking code rejected or suppressed later | Not GS1-licensed to you | Check Verified by GS1 |
| Error mentions brand or ownership | Brand / prefix mismatch | Align brand attribute with GS1 record |
If you manage large catalogs and want to catch these problems before upload rather than after rejection, the same validation logic is available programmatically through the CodeClassify API, so you can gate your feed pipeline on it.
FAQ
Why does Amazon say my UPC is invalid when the barcode scans fine in stores?
A barcode scanner only reads the digits printed under the bars; it does not confirm that the number was legitimately issued. Amazon goes further: it validates the check digit and compares the GTIN and its associated brand against GS1 records. A code that scans physically can still be rejected if its check digit is wrong, if it was never licensed through GS1, or if the GS1 company prefix belongs to a different brand than the one on your listing.
Can I reuse a GTIN from a discontinued product on a new product?
No. Under GS1 rules that took effect in 2019, GTINs are never reused, even after a product is discontinued. Marketplaces also keep historical catalog data tied to each GTIN, so submitting an old code for a new item typically creates a mismatch error rather than a clean listing.
Do I need a different GTIN for each size and color of my product?
Yes. GS1 allocation rules require a distinct GTIN for every variant a buyer needs to distinguish, including each size, color, flavor, and pack quantity. Amazon and Google both expect variation listings to carry one unique GTIN per child variant.
Validate your GTINs before the marketplace does
Paste any UPC, EAN, or GTIN-14 into the free GTIN check digit calculator for an instant verdict — or check an entire product feed at once with the bulk barcode validator.
This guide is general information, not legal or compliance advice. GTIN licensing rules are set by GS1 and its national member organizations, and marketplace requirements are defined by Amazon and Google and can change; always confirm current policies in Amazon Seller Central help, Google Merchant Center help, and at gs1.org before making listing decisions.