Blocking Affects: gtin identifier

Fix “Missing value [gtin]” on Google Merchant Center

Google Merchant Center reports this when a product is missing its GTIN (Global Trade Item Number) — the manufacturer-assigned barcode that uniquely identifies retail products. Affected items stop showing in Shopping ads, free listings, and Performance Max retail campaigns.

What you see in Google Merchant Center:

Missing value [gtin]

API identifier: missing_required_attribute

The "Missing value [gtin]" issue is the most common blocking issue on Google Merchant Center and one of the most operationally annoying because the fix path varies so much by case. For some products the GTIN simply needs sourcing — the manufacturer assigned one, you just don't have it. For other products the GTIN is in your system but mapped to the wrong feed field (Shopify's `barcode` field is the classic offender — many feed pipelines miss it). For a third category, the product is genuinely GTIN-exempt and you need to declare `identifier_exists: false` explicitly.

The triage instinct that works: filter the affected SKU list, then categorise. Branded products from manufacturers — source the GTIN, almost always findable. Own-brand products from your own manufacturing — your store name as brand, set identifier_exists: false. Resold items where you don't know if a GTIN exists — search the manufacturer's website; almost always present for standard retail goods.

The trap most catalogs hit: bulk-setting identifier_exists: false to bypass the issue. Channels audit this. Accounts using identifier_exists heavily on branded products eventually face account-level quality reviews, and the consequence is wider than the initial issue you were trying to dodge. Source the GTINs where they exist; declare exemption only where it genuinely applies.

For high-volume catalogs where GTIN sourcing across thousands of items is impractical, the AI Shopping Feeds Optimiser can extract GTINs from product images, supplier data, and existing descriptions where the GTIN exists somewhere in your data but isn't mapped to the right field. The Audit feature finds every instance of missing GTIN across Google, Meta, TikTok, and Pinterest in one pass.

Top causes

  • 1

    The product genuinely has a GTIN, but it's not in the feed (most common in apparel and electronics)

  • 2

    The GTIN exists in the product database but isn't being mapped to the gtin feed field (common on Shopify where the field is called barcode)

  • 3

    The product is genuinely GTIN-exempt but identifier_exists: false isn't being set (own-brand, custom-made, vintage)

  • 4

    The GTIN field is populated but with whitespace, dashes or other non-digit characters that fail validation

How to fix it

  1. 1

    Filter the affected SKUs

    In Merchant Center → Needs attention, filter by issue type 'Missing value [gtin]'. Export the affected SKU list as CSV.

  2. 2

    Categorise each product

    For each row, decide: does this product have a GTIN you can source? If yes, find it (manufacturer site, supplier catalogue). If no, is it genuinely GTIN-exempt? If yes, flag identifier_exists: false.

  3. 3

    Update the feed

    Add the GTIN to the gtin field where it exists, or set identifier_exists: false where it doesn't. Never use placeholders like 0000000000000 — they fail the check-digit algorithm and cause Invalid GTIN errors instead.

  4. 4

    Force a feed refresh

    Merchant Center → Data Sources → your feed → Fetch now. Don't wait for the scheduled cycle when fixing a blocking issue.

  5. 5

    Verify in Needs attention

    After the next fetch (typically within 15 minutes), affected items should clear. Items still flagged usually have a different overlaid issue (often Invalid value [gtin] — the GTIN exists but the check digit is wrong).

Before and after

Broken
id,title,price,availability,brand,gtin,identifier_exists
SKU-001,"Wireless Headphones",129.99 USD,in stock,Sony,,
Fixed
id,title,price,availability,brand,gtin,identifier_exists
SKU-001,"Wireless Headphones",129.99 USD,in stock,Sony,4548736011847,

The fix is populating the gtin field with the manufacturer's actual GTIN. For genuinely GTIN-exempt products, set identifier_exists: false instead.

Related fields

FAQ

Do I need a GTIN for own-brand products?

Not if you're the manufacturer and have genuinely never assigned a GTIN. Set identifier_exists: false in that case. If you're a reseller (white-label, drop-ship), the original manufacturer's GTIN still applies.

What if my supplier gives me UPCs but I'm selling in Europe?

UPCs (12 digits) work everywhere — they're a GTIN variant. You don't need to convert them to EANs for European listings. Same the other way around.

The error says missing but my feed has the GTIN — what's going on?

Three common causes. (1) The feed-generation logic reads from a different field than you think — check the actual feed file Google fetches, not your platform's UI. (2) The field is called barcode or ean in your feed instead of gtin — Google won't auto-map. (3) Formatting issues (spaces, dashes, leading zeros stripped) make the field look empty to the validator.

How quickly do GTIN fixes propagate?

Next fetch cycle. If you force a fetch, fixes appear in Needs attention within 5-15 minutes. Items re-enter Shopping inventory within 60 minutes typically.

Last reviewed: 26 May 2026

Free plan · No card

Why wait? Try it free today.

Stop managing feeds manually. Start optimising with AI in 30 seconds.

  • Free plan, no credit card required
  • 1 brand, 1 feed, 100,000 products per feed
  • Full AI Product Optimisation, Rule Engine, and 200+ channel exports
  • Pay only for AI credits when you need them