4 min read
Fix library - item disapproved
Product disapproved: missing GTIN
Merchant Center Diagnostics shows "Missing value [gtin]" and the product stops serving in Shopping ads. Here is what the issue actually means, where to get real identifiers, and the fix, verified against Google's current help.
Last verified: 2026-08-10
The problem
One or more products are disapproved with an issue named after the [gtin] attribute: "Missing value [gtin]", "Invalid value [gtin]", or the related "Missing value [identifier_exists]". Disapproved products do not serve in Shopping ads or free listings, so the item is effectively invisible on Google until the issue clears.
This is an item-level issue, not an account-level one. It does not suspend your account on its own, but a catalogue full of missing identifiers is exactly the kind of pattern that contributes to broader problems, so it is worth clearing properly rather than patching around.
Why it happens
Google requires unique product identifiers for most products: a GTIN (Global Trade Item Number, the barcode number), an MPN (manufacturer part number), and a brand name. When a product has an assigned identifier and the feed does not include it, Google limits its visibility or disapproves it.
The common causes: the identifier was never entered in the ecommerce backend, the feed app is not mapping the field, a third-party supplier's data drops the column, or someone set identifier_exists = no on products that do have identifiers to make the error go away. That last one is the most dangerous shortcut, because it does not fix anything: the product still underperforms or gets disapproved, and now the feed contains a false statement.
Google Merchant Center Help, "About unique product identifiers": https://support.google.com/merchants/answer/160161
Direct quotes: "Products with an assigned GTIN, but submitted without one, may have limited visibility." And: "Don't make up, guess, or include values from similar products. If you provide incorrect identifiers, your product(s) may be disapproved."
How to fix it, step by step
- Open Diagnostics and read the exact issue. Note whether it is "Missing value [gtin]", "Invalid value [gtin]", or "Missing value [identifier_exists]". They have different fixes: missing means the field is empty, invalid means the value is malformed, and identifier_exists means the flag is set wrong.
- Get the real identifiers. For branded products, the GTIN is printed as the barcode on the product or its packaging, or supplied by the manufacturer or the wholesaler. If you sell another brand's products, their data sheets list the GTIN and MPN. If you have your own brand, you register your own GTINs through the GS1 organisation in your country; that is the legitimate route for private label.
- Never invent or copy one. A made-up GTIN, or one borrowed from a similar product, is worse than a missing one: Google's docs are explicit that incorrect identifiers get products disapproved, and a false identifier can poison every listing that shares it.
- Enter the fields and regenerate the feed. In Shopify that means the product barcode field (which maps to GTIN) plus brand, in the Google & YouTube channel or whichever feed app you use. Check the field mapping actually carries the value into the feed file: many apps map barcode by default, some do not. Regenerate and let Google reprocess.
- Only for genuinely identifier-less products, set identifier_exists = no. Custom one-off items, handmade goods, and some private label products genuinely have no GTIN and no brand. For those,
identifier_exists = nois legitimate. It is only a lie when the product does have identifiers, and Google treats it as one. - Verify the count drops. After reprocessing, Diagnostics should show the disapproved count falling. If it does not, screenshot the state and check whether the feed file itself contains the values (view the raw feed).
- Request a review if it is still flagged. Once the feed is correct, use the review request path in Merchant Center rather than resubmitting the same file and hoping.
When to get help
This fix is quick when it is a handful of products. Hand it over when: the issue covers hundreds or thousands of SKUs and you need the identifiers sourced, the feed app is dropping or mangling the field, the products are private label and the GTIN registration route needs sorting, or the missing-identifier issue is sitting on top of other disapprovals and you want the whole catalogue cleared in one pass.
The item-level rescue is part of the £99 rescue plus feed fix: the underlying feed problem found and fixed, then verified. If your account is already suspended, start with the suspended account guide.
Not sure what your Diagnostics page is telling you?
Take the free 5 question audit for a straight verdict on your account, or run the free feed health check for a plain-language reading of the common errors.
Take the free audit →Can I just set identifier_exists = no for everything?
No. That flag is only correct for products that genuinely have no identifiers: no GTIN and no brand. Products with an assigned GTIN submitted without one may have limited visibility or be disapproved, and a false identifier_exists flag is the same lie as a fake GTIN.
Where do I find the GTIN for products I buy from a supplier?
The GTIN is printed as the barcode on the product or its packaging, and it is listed on the manufacturer's or wholesaler's data sheets and invoices. Copy it exactly, including all digits: a malformed GTIN fails validation and shows up as "Invalid value [gtin]".