Waking up to a Merchant Center notification that your products are disapproved is one of the most frustrating experiences in ecommerce. Your campaigns are running, your budget is allocated, but your ads aren't showing. Here are the 8 most common causes — and exactly how to fix each one.

1. Price mismatch

What it is: The price in your Merchant Center feed doesn't match the price on your product landing page.

Why it happens: Your feed updates daily at midnight, but you changed prices on your website at 9am. Or your website shows prices ex-VAT, but your feed includes VAT. Or a flash sale on your website isn't reflected in your feed yet.

How to fix it: Ensure your feed updates at least daily, ideally twice daily. Confirm your feed and website both display prices consistently — both including VAT or both excluding. If you run flash sales, trigger a manual feed refresh at the same time as the sale starts.

2. Landing page not accessible

What it is: The URL in your feed returns a 404, 301 redirect, or takes too long to load.

Why it happens: You've deleted a product but it's still in your feed. You've moved a product to a different URL. Your website was down when Google crawled it.

How to fix it: Validate all product URLs return HTTP 200 before your feed is submitted. Remove discontinued products from your feed. If a product moves URL, update your feed immediately.

3. Low-quality or invalid images

What it is: Google rejects images that are too small, contain promotional text, have complex backgrounds (for apparel), or return 404 errors.

Why it happens: Many Shopify merchants use the same product images for their website and feed without checking minimum sizes. Some template-generated images include pricing or promotional overlays.

How to fix it: Minimum 250×250px for non-apparel, higher for apparel. No promotional text, watermarks, or borders on primary images. Ensure image URLs return HTTP 200. For apparel, white or very light neutral backgrounds are strongly preferred.

4. Missing GTIN where required

What it is: You're selling branded products that have EAN barcodes, but you haven't included them in your feed.

Why it happens: Your ecommerce platform stores barcodes in a field that isn't mapped to the gtin attribute in your feed output.

How to fix it: Map your product barcode field to gtin in your feed configuration. For products that genuinely have no barcode (handmade, custom, vintage), set identifier_exists: no.

5. Availability mismatch

What it is: Your feed says "in stock" but your website shows "out of stock", or vice versa.

Why it happens: Inventory changes between feed updates. A product sold out after your last feed refresh.

How to fix it: More frequent feed updates. Consider twice-daily refreshes for fast-moving inventory. Some feed tools support near-real-time inventory updates — worth implementing for high-volume SKUs.

6. Mismatched title or description

What it is: The product title or description in your feed significantly differs from what appears on the product page.

Why it happens: You've added keyword-optimised titles in your feed that diverge from your website's product names. Or your website uses JavaScript-rendered content that Google can't read.

How to fix it: Feed titles should match or be closely derived from your website's product title (H1). Don't add keywords that don't appear anywhere on your product page. If your website uses JavaScript rendering, ensure product titles are also in the static HTML.

7. Policy violations

What it is: Your product violates Google's Shopping policies — prohibited products, deceptive pricing, inadequate return policy disclosure.

Why it happens: UK merchants sometimes run into issues with supplement claims ("supports weight loss"), knife listings (requires age verification disclosure), or alcohol (requires market-by-market compliance settings).

How to fix it: Review Google's Shopping Ads Policies for your specific category. Policy disapprovals are more serious — repeated violations can result in account suspension. Address the specific issue cited in the disapproval notice.

8. Feed expiry

What it is: Google automatically expires products that haven't been updated in more than 30 days.

Why it happens: Your scheduled feed URL failed to load for over a month, or you manually submitted a one-time feed and forgot to set up a schedule.

How to fix it: Set up a scheduled fetch URL in Merchant Center rather than manual uploads. Ensure your feed tool has retry logic for failed runs. Trajekt sends error notifications when feeds fail so you can fix issues before they cause expiry disapprovals.

Stop disapprovals before they happen

Trajekt validates your feed against common disapproval causes — price format, required fields, image accessibility, and URL status — before submission.

Start free →

The quickest way to recover from disapprovals

Once you've fixed the issue, go to Products > All Products in Merchant Center and filter by "Disapproved". Select the affected products and use "Request review" to expedite re-evaluation. For feed-level fixes, resubmit your feed and allow 24-48 hours for processing.

For persistent disapprovals that don't resolve after fixing the identified issue, check whether there are multiple disapproval reasons on the same product — fixing one may reveal another underneath.