Google Merchant Center errors and how to fix every one
The disapproval message in Merchant Center rarely tells you which attribute to change. This guide maps every common error to the fix that actually clears it.

Merchant Center shows an error, you stare at your feed, nothing looks wrong. Sound familiar. The message names a policy or an attribute but almost never points at the row or the field that caused it. Below is the working list we use ourselves, grouped by category, with the exact feed change that clears each one.
Data quality errors
Missing value [gtin], [mpn] or [brand]
Google needs enough identifying information to match your product against its catalogue. For new products with a GTIN, send the GTIN. For products from an established brand without a GTIN (accessories, spare parts), send brand plus MPN. For your own private label, send identifier_exists = false and a brand.
Invalid GTIN
Merchant Center validates the check digit. A GTIN that looks right but ends with the wrong digit is treated as invalid. Copy the barcode from the packaging character by character, not from a supplier sheet. Do not left-pad with zeros to hit 14 digits, the API does that.
Mismatched value price
Google crawled your landing page and the price it saw does not match the price in your feed. Nine times out of ten this is VAT. Google Shopping in the UK expects prices inclusive of VAT. If your storefront shows ex-VAT to logged-in trade users but inc-VAT to guests, make sure the crawler sees the guest price. AiFeedOptimiser always emits prices with 20% VAT included.
Mismatched value availability
Feed says in stock, page says out of stock, or vice versa. Usually a caching issue. Shorten your product page cache, add a webhook so AiFeedOptimiser keeps the product feed in sync the moment inventory changes, and stop scheduling the fetch during an overnight sync window.
Image errors
Image too small
Minimum 100x100 px for non-apparel, 250x250 px for apparel. Recommended 800x800 px or larger. Send the biggest square you have. Do not upscale a small image, the disapproval will just come back as Poor image quality.
Promotional overlay on image
No text, watermark, logo or price sticker on the image. Use additional_image_link for lifestyle shots and keep image_link as a clean product on a white or transparent background.
Landing page errors
Landing page not accessible
Googlebot cannot fetch the URL. Check robots.txt, remove any geo-block that hides UK content from US crawlers, and confirm HTTPS certificate is valid. If you require a country splash screen, add Googlebot to the allowlist.
Desktop page not crawlable
You blocked crawling for the desktop user agent. Common on Shopify themes with a bot detection app. Whitelist Googlebot and Googlebot-Image.
Policy warnings
Insufficient contact information
Add a real address, phone number and email to your footer and to a dedicated Contact page. A generic contact form is not enough. Also add a full Returns and Refunds policy, a Delivery page and a Privacy policy.
Restricted product
You are listing something in a limited category (alcohol, CBD, weapons). Read the specific policy for that category, tag the affected products, and either remove them from the feed or apply the required feed attributes (age_group, adult, promotion_id restrictions).
How to check you actually fixed it
In Merchant Center Next, open the Needs attention panel, click the error, then Preview the affected products. Fix the feed, wait for the next fetch (or trigger it manually), and check the same panel 24 hours later. Some errors reprocess in minutes, some in a full day.
More from the blog
Supplemental feed in GMC Next made simple
A supplemental feed is the fastest way to patch attributes on live products without editing your primary feed. Here is how it works in the new Merchant Center.
Google feed URL where to find it and test it works
Before you paste a feed URL into Merchant Center, run three quick tests. If any one fails, the scheduled fetch will fail too.
Sale price and price how discounts show in Google Shopping
Sending a lower price is not the same as showing a discount. Google needs both attributes, in the right order, and a recent history of the higher one.
Ship a feed that passes on the first fetch
Start a 14-day trial of AiFeedOptimiser. No credit card required.
Start free trial