GTIN errors are the most common single reason for product disapprovals in Google Merchant Center, and a steady contributor to account-level suspensions when the same error repeats across hundreds of SKUs. This guide covers every GTIN error code, what it actually means, and how to fix it inside Shopify, WooCommerce or directly in the feed.
A GTIN (Global Trade Item Number) is the unique barcode identifier that the product manufacturer assigns to every variant of a product. It is the same number printed under the barcode on the package. The format depends on the region and product type:
| Format | Digits | Used for |
|---|---|---|
| UPC-A | 12 | North America (most products) |
| EAN-13 | 13 | Europe and worldwide |
| EAN-8 | 8 | Small packages where 13 digits won't fit |
| ITF-14 | 14 | Outer cartons and wholesale |
| ISBN-13 | 13 | Books |
| JAN | 13 | Japan |
The last digit of a GTIN is always a check digit, calculated from the rest. Google validates this automatically. A GTIN whose check digit does not match the rest of the number is rejected immediately with "invalid GTIN."
Google uses GTINs to match your product to a known catalog entry. The match unlocks better Shopping placement, free listings eligibility, price competitiveness benchmarks, and rich product data on the listing page. A missing or wrong GTIN doesn't just risk disapproval, it actively suppresses your product's visibility even when it does show.
Google requires a GTIN for any product that has a manufacturer-assigned one. In practice this covers:
GTIN is not required for:
If GTIN is not required for one of these categories, you cannot just leave the field blank. You must set the identifier_exists attribute to false. Leaving the field empty without that flag is treated the same as a missing required attribute and triggers disapproval.
The product has no GTIN value submitted, and identifier_exists is not set to false. Google's response: "Missing GTIN [gtin]." Common cause in Shopify: the Barcode field was left empty on the variant. Common cause in WooCommerce: the product has no _global_unique_id meta key. Fix: paste the manufacturer GTIN from the product packaging, or set identifier_exists to false if no GTIN exists.
The number you submitted does not pass format and checksum validation. Common causes: a UPC submitted as 11 digits because a spreadsheet stripped the leading zero, a typo in one digit (which breaks the check-digit math), or a number invented to fill the field. Google's response: "Invalid GTIN [gtin]." Fix: verify the number against the actual product packaging or the manufacturer's product database. Online GTIN validators can confirm whether the check digit matches.
The number is valid (correct format and checksum) but it points to a different product in Google's catalog than what you are actually selling. Common causes: the GTIN was copy-pasted from a related variant during a bulk product import, or your supplier sent a generic GTIN that belongs to another item in their catalog. Google's response: "Incorrect GTIN [gtin]." Fix: open the affected product in Merchant Center, click the GTIN, and check what catalog entry Google is matching it to. If the title, brand, or category does not match your product, replace the GTIN.
The GTIN belongs to a category that Google restricts (controlled substances, certain age-restricted items, gambling-adjacent products). Common causes: vape and CBD merchants accidentally submitting product GTINs that are flagged as restricted. Google's response: "Restricted GTIN [gtin]." Fix: confirm the product is actually allowed in your target country. If it is allowed but restricted, you must comply with the additional advertising requirements for that category. If it is not allowed, remove the product from the feed.
The number is in a format Google does not accept (most often a non-standard internal SKU, an ASIN, or a manufacturer's internal part number). Google's response: "Invalid GTIN in unsupported format." Fix: the GTIN field is reserved for the barcode-standard identifier only. Internal part numbers go in mpn (Manufacturer Part Number) and your own SKU goes in id. Move the value to the right field.
In Shopify, GTINs live under each product variant in the Inventory section, in the field labeled "Barcode (ISBN, UPC, GTIN, etc.)". The field is per-variant, which matters for products with size, color or material options.
For products without a real GTIN (private label, made-to-order, custom), leave the Barcode field blank and use the Google & YouTube channel app, which exposes "Does this product have a GTIN?" as a configurable option. Setting it to No automatically passes identifier_exists=false in the feed.
WooCommerce stores GTINs in a meta field that varies depending on which Google feed plugin you use. The three most common patterns:
_global_unique_id or _gtin. Update the meta box on the product edit screen, or in bulk via the WP All Import plugin.After saving, force a feed re-fetch in Merchant Center rather than waiting up to 24 hours for the scheduled refresh.
The free GMCSuspension audit scans your store and feed against the 43+ GMC policy requirements, including all five GTIN error types and the missing identifier_exists flag.
Run Free AuditIndividual GTIN errors cause product-level disapprovals. They do not by themselves suspend an account. But when the same error repeats across a large share of your catalog, Google escalates. Specifically:
This is why GTIN errors are worth fixing in bulk rather than one at a time. The disapproved products guide covers how to triage and prioritize fixes across a large catalog.
If you have already been suspended and GTIN errors are part of the cited reason, run these checks before submitting an appeal:
The full pre-appeal checklist walks through this in the context of the rest of the policy requirements. The misrepresentation checklist covers the broader category that GTIN issues fall under.
A GTIN (Global Trade Item Number) is the unique barcode identifier the product manufacturer assigns to every variant of a product. It is the same number printed under the barcode on the package: a 12-digit UPC in North America, a 13-digit EAN in Europe, an 8-digit EAN for small packages, or an ISBN on books. Google uses GTINs to match your product to a known item in its catalog, which determines pricing competitiveness, eligibility for free listings, and Shopping ad placement.
GTIN is required for all branded products that have a manufacturer-assigned GTIN, which covers most consumer electronics, packaged goods, branded apparel, and books. It is not required for custom-made items, handmade products, store-brand items, antique or vintage items, or product bundles. For products without a real GTIN, you must set identifier_exists to false rather than leaving the field empty or using a fake number.
Invalid GTIN means the number you submitted does not pass the format and checksum validation. Common causes: too few digits (a UPC submitted as 11 digits instead of 12), leading zeros stripped by a spreadsheet, the wrong barcode type for the country, or a number invented to fill the field. Google validates the check digit (the final number, which is calculated from the others) and rejects any GTIN where the math does not work.
Incorrect GTIN means the number is valid (the format and checksum are correct) but it points to a different product than what you are selling. This happens most often when a merchant accidentally reuses one product's GTIN for several variants, or when a product feed pulls the GTIN of a related product. Google detects this when the brand, title or category in your feed does not match its catalog entry for that GTIN.
In Shopify, GTINs live under each product variant in the Inventory section, labeled "Barcode (ISBN, UPC, GTIN, etc.)". Open the affected product, expand the variant, and paste the correct manufacturer GTIN. For products without a real GTIN (private label, custom, handmade), leave the barcode field blank and add a metafield "identifier_exists" set to "false", or use a Shopping app like the Google & YouTube channel which surfaces this option in its product configuration.
The free GMCSuspension audit flags all five GTIN error types across your full catalog in under a minute. Free, no signup.
Run Free Audit