Missing or invalid GTIN in Merchant Center: how to fix it

What limited performance and invalid GTIN mean in Merchant Center, where to find numbers, when identifier exists helps and how to handle own brands.

ecomando editorial8 min read
Contents
  1. Why Google wants the GTIN
  2. Diagnosis: which message do you have?
  3. Causes and fixes, case by case
  4. Special cases
  5. Step by step: clear missing GTIN messages out of Merchant Center
  6. Checklist for new products

"Limited performance due to missing identifiers", "Invalid value: GTIN" or "GTIN is reserved for another product": these Merchant Center messages cost visibility without necessarily taking a product offline. That is exactly why they sit untouched for months. This article explains which GTIN messages exist, how to find the cause of each, and how to submit own-brand products, bundles and one-offs correctly.

Why Google wants the GTIN

The GTIN (Global Trade Item Number) is the number under the barcode: usually 13 digits as an EAN in Europe, 12 digits as a UPC in North America, the ISBN for books. Google uses it to match your offer to the same product other merchants are selling. That matching is what produces product pages with price comparison, ratings and specifications.

Without a GTIN, Google has to guess which product you are offering. In practice that means:

  • The product appears for fewer matching queries.
  • It is missing from comparison views where competitors with a GTIN are listed.
  • Ratings and specifications from Google's product database are not shown.
  • The price benchmark in the Pricing tab under Analytics in Merchant Center stays empty for that item, because Google builds the benchmark from retailers selling a product with the same GTIN.

Google documents the format rules in the help page for the gtin attribute: 8, 12, 13 or 14 digits, a present and correct check digit, and no numbers from restricted ranges. Note the status while you are there. The attribute is recommended for all products the manufacturer assigned a GTIN to, not universally mandatory. The consequence of omitting one that exists is limited visibility, not automatic removal.

Diagnosis: which message do you have?

In the product view, the items that need attention carry the exact wording. The messages mean different things:

Message (in substance)SeverityMeaning
Limited performance due to missing identifierswarningGTIN, brand or MPN missing, item serves with less reach
Invalid value: GTINdisapprovalwrong length or wrong check digit
GTIN from a restricted rangedisapprovalnumber comes from an internal, coupon or special range
Incorrect value: GTINdisapprovalGoogle associates the number with a different product
Identifier exists set incorrectlywarningyou declared no identifier, Google knows one
Ambiguous product identifierwarning or disapprovalthe same GTIN on several products that are not variants

Note how many products each message affects. A handful points at individual data errors; hundreds point at an export problem or a missing feed column.

Causes and fixes, case by case

Case 1: the GTIN is missing but one exists

The most common situation with resale goods. The number is on the packaging but never made it into the item record, or the feed does not carry it.

How to check: Open one affected product in your inventory or store system. Is the field for EAN, barcode or GTIN empty? Or filled, but not mapped to the feed attribute gtin?

Fix:

  • Fill the field in the store. Sources are supplier price lists, manufacturer catalogs or the packaging itself.
  • On Shopify the number lives in the Barcode field of each variant, and the Google & YouTube channel submits it as the GTIN. Shopify states that a product with a GTIN needs it filled in before you can publish the product to the channel, and that products without one need an MPN and a brand instead. Other platforms call the same field barcode, EAN or GTIN; the point is that it reaches the gtin attribute.
  • With a custom feed, check that the gtin column exists and is mapped to the right field.
  • If the number is missing on many products, ask suppliers for a list of EANs. That is usually faster than looking each item up.

Case 2: the GTIN is invalid

Google checks length and check digit. The usual culprits are spreadsheets and copy-paste.

How to check: Compare the number in the feed with the one on the packaging. Is a leading zero missing? Did spaces or letters creep in? Was the number exported as 4.01234E+12?

Fix:

  • Format the column as text in the export so leading zeros survive and no scientific notation appears.
  • Re-enter the number from the packaging. Google tolerates and ignores spaces and dashes, but not other characters.
  • For individual items, recalculate the check digit with the GS1 check digit calculator that Google links from its help page.

Case 3: the GTIN comes from a restricted range

Numbers beginning with 02, 04 or 2 are reserved for internal use, for example in-store labels for fresh produce. Ranges such as 05, 98 and 99 belong to coupons. Google rejects numbers from these ranges.

How to check: Does the number start with one of those prefixes? Does it come from your own label printer or POS software rather than from the manufacturer?

Fix: Remove internal numbers from the feed. If the product has a genuine manufacturer GTIN, use that. If it has none, go to case 5.

Case 4: the GTIN belongs to another product

Google already knows the number, but as a different product. Common causes: a GTIN copied from a similar item when the product was created, all variants sharing the number of the main variant, or a supplier reusing a number.

How to check: Search the number on Google or on the manufacturer's site. Does a different product come back? Do several of your variants carry the same number?

Fix:

  • Every variant gets its own GTIN. Size 8 and size 10 have different numbers, even though they belong together via item_group_id.
  • Correct copied numbers. If a variant has no number, leave the field empty rather than entering a wrong one. The warning for a missing identifier is milder than a disapproval for a wrong one.
  • For bundles, never use the GTIN of one component.

Which variants deserve their own URL and their own identifiers at all is a related question, covered in the article on Shopify product variants and SEO.

Case 5: the product genuinely has no GTIN

Handmade goods, one-offs, vintage items, custom work, spare parts without a manufacturer number, or a small own-label range with no GS1 registration.

Fix: Set identifier_exists to no (false also works, and the Merchant API expects true/false). That tells Google there is no GTIN, MPN or brand for this product, so it stops expecting one and the warning goes away. The details are in the help page for identifier exists.

Important: only use it when there really is no identifier. Google's documentation states that products where the attribute is incorrectly set to no, and where there is evidence a unique identifier exists, will receive a warning. In practice that means branded goods sold this way keep the message and lose reach.

Case 6: own brand without numbers

You sell under your own brand, have products manufactured for you, or make them yourself. Two options:

  1. Get your own GTINs. The GS1 organization in your country assigns a number range for a fee, from which you give every product and every variant its own GTIN. This is the clean route once you have more than a handful of products or sell on marketplaces that require GTINs.
  2. Brand plus MPN. Without a GTIN you can submit brand with your brand name and mpn with your own article number. Google accepts that combination as an identifier when the brand is used consistently across your catalog. For products that only exist in your store, that is often enough.

What does not work: inventing numbers, using the GTIN of a similar manufacturer product, or taking numbers from restricted ranges.

Special cases

Bundles. A set you assembled yourself has no manufacturer GTIN of its own. Google's rule for is_bundle is to submit yes when the bundle is your own creation and contains a main product. For the identifier, the practical route is the GTIN of that main product, or identifier_exists set to no plus your own brand and mpn. What you must not do is put the GTIN of a secondary component on the bundle.

Used and refurbished goods. The original GTIN stays valid, and condition has to be used or refurbished.

Books. The ISBN-13 is the GTIN. Convert ISBN-10 to ISBN-13, or use the ISBN field if your system offers one.

Different pack sizes. A 500 ml and a 1 l bottle have different GTINs. Submitting both under one number produces the "ambiguous identifier" message.

Step by step: clear missing GTIN messages out of Merchant Center

  1. Filter. Show all products with a GTIN or identifier message and group them by message type.
  2. Biggest group first. If "missing GTIN" affects 300 products and "invalid" affects twelve, start with the 300, because that is where the reach is going.
  3. Fix the source, not the feed. Enter numbers in the store or the inventory system, not in a hand-edited feed file. Otherwise the error returns with the next export.
  4. Harden the export. GTIN column as text, and a length check for 8, 12, 13 or 14 digits before the upload.
  5. Flag the exceptions. Products with no identifier get identifier_exists set to no; own-brand items get brand and mpn.
  6. Re-fetch the feed and check after two or three days which messages remain.
  7. Fix the process. Decide who enters the GTIN when a new product is created. A required field in the store or inventory system prevents most future messages.

Checklist for new products

  • GTIN taken from the packaging or the supplier list, stored as text
  • Every variant has its own GTIN
  • No number starts with 02, 04, 2, 05, 98 or 99
  • Brand entered in brand, own-brand items also carry mpn
  • Products without any identifier: identifier_exists set to no
  • Bundles flagged with is_bundle
  • Used goods carry the matching condition

Identifier warnings look harmless because the product keeps running. But they tend to hit exactly the branded items where matching against other merchants matters most, and they block the price benchmark you would use to judge those items. The wider set of reasons items stop serving is covered in the overview of products disapproved in Merchant Center, the most frequent single one in the article on price mismatches, and the account foundations in the Merchant Center setup walkthrough. Keeping identifiers in your on-page product schema markup as well makes the matching easier on the organic side. In ecomando limited and disapproved offers appear with their reason in the Google Shopping section, so GTIN gaps become visible before they pile up.

Frequently asked questions

What is a GTIN and where do I find it?

The GTIN is the globally unique article number of a product, most often the 13-digit EAN or the 12-digit UPC printed under the barcode. You find it on the packaging, in supplier price lists or in the item record of your inventory system; for books it is the ISBN.

Is a GTIN mandatory in Merchant Center?

No. Google lists the attribute as recommended for all products the manufacturer assigned a GTIN to. Products that have one but are submitted without it may have limited visibility. Products with no manufacturer identifier at all do not need one.

What does identifier exists do in the feed?

Setting identifier exists to no or false tells Google that a product has no GTIN, MPN or brand, for example a one-off or a custom-made item. If you set it to no while an identifier does exist, the item gets a warning.

Why is my GTIN invalid even though it came from the manufacturer?

The usual cause is a character lost in the export, typically a leading zero stripped by a spreadsheet, which breaks the check digit. Compare the number in the feed character by character with the one on the packaging.

Can I get GTINs for my own brand?

Yes, through the GS1 organization in your country, which assigns a number range for a fee. Invented numbers or numbers from restricted internal ranges are rejected by Merchant Center.

Keep reading