Introduction
A disapproved product on Google Merchant Center is an invisible product on Google Shopping. No clicks, no traffic, no sales — while your competitors keep appearing.
The good news: in 95% of cases, the disapproval can be fixed in less than 24 hours, once you've identified the exact cause and applied the right solution. This guide gives you the complete protocol: from reading the GMC error message to final validation.
Table of Contents
- Understanding GMC Disapprovals
- Cause #1: Google Policy Violation
- Cause #2: Product Data Issues
- Cause #3: Non-Compliant Product Page
- Cause #4: Non-Compliant Images
- Cause #5: Missing Shipping or Return Information
- Cause #6: Missing Legal Pages
- Fixing a Disapproved Product: Step-by-Step Protocol
- Re-approval Timelines After Fix
- Preventing Future Disapprovals
- 20-Point Checklist
Understanding GMC Disapprovals
The 3 levels of issues in GMC
Google Merchant Center distinguishes three types of issues, in increasing severity:
| Level | Icon | Impact | Example |
|---|---|---|---|
| Warning | Yellow | Reduced visibility | Low quality image |
| Product disapproval | Red | Product invisible | Price mismatch |
| Account suspension | Critical red | All products blocked | Serious policy violation |
This article covers product disapprovals — by far the most common case.
Where to find disapproved products
- Log in to Google Merchant Center
- Go to Products → All products
- Filter by Status: Disapproved
- Click on a product → Issues tab to see the exact error message
Important: read the error message word for word. GMC always indicates the problem category — that's your starting point.
Cause #1: Google Policy Violation
This is the most serious cause. Google enforces strict policies on product listing content.
Common violations
Promotional content prohibited in titles or descriptions:
- "Best price guaranteed", "Sale -50%", "Limited time offer"
- Excessive capitalization: "FREE SHIPPING", "EXCLUSIVE DEAL"
- Decorative characters: ★, ✓, ❗ in titles
Misleading or inaccurate content:
- Price shown differs from the real price on the page
- Stock shown as "In stock" when the product is actually sold out
- Description not matching the product actually sold
Restricted categories without authorization:
- Medicines and supplements
- Alcohol (requires account verification)
- Adult products (requires specific activation)
Solution
- Remove all promotional text from titles and descriptions
- Limit capitalization to first letters
- Ensure the feed price exactly matches the page price
- If your category is restricted: check the specific requirements in the GMC Help Center
Cause #2: Product Data Issues
Incorrect or missing data in your feed is the number one cause of disapproval.
Price mismatch (most frequent)
Symptom: "Incorrect price" or "Price mismatch" message
Causes:
- Promotion active on the site but not in the feed (or vice versa)
- Sync delay between your e-commerce platform and GMC
- Currency or price format not standard (
EURinstead of€)
Solution:
- Use
sale_pricefor promotions, alongside the baseprice - Sync your feed hourly if you run frequent promotions
- Accepted format:
19.99 EUR(with space and ISO 4217 code)
Missing or invalid GTIN
Symptom: "Missing product identifier" or "Invalid GTIN" message
Google rule: Any branded product with an existing GTIN (EAN/UPC/ISBN) must include it.
Solution:
- Branded product: obtain the EAN from your supplier or via GS1
- Handmade / no EAN: add
identifier_exists: falseto the feed - Never invent or reuse a GTIN — it's grounds for account suspension
Missing mandatory attributes
The following attributes are mandatory for all products:
| Attribute | Example | Problem if missing |
|---|---|---|
id |
SKU-12345 |
Product ignored |
title |
Men's organic cotton t-shirt blue XL |
Disapproval |
description |
100 characters minimum | Disapproval |
link |
Full page URL | Disapproval |
image_link |
Main image URL | Disapproval |
price |
29.99 EUR |
Disapproval |
availability |
in stock / out of stock |
Disapproval |
condition |
new / used / refurbished |
Disapproval |
Solution: Audit your feed with the GMC diagnostic tool (Feeds → Diagnostics) and fix all empty or incorrectly formatted fields.
Cause #3: Non-Compliant Product Page
Google crawls your product page at the time of evaluation. If the page doesn't match the feed, the product is disapproved.
Inaccessible or broken URL
Symptom: "Destination URL not accessible" or "Crawl error" message
Checks:
- Does the URL return an HTTP 200 status code? (no 404, no redirect loops)
- Is the page accessible without login?
- Is Googlebot blocked by your
robots.txt? - Does your server respond in under 3 seconds?
Tool: Google Search Console → URL Inspection → Test URL live.
Page content differs from feed
Google compares key data between the feed and the page:
- Price: must match (±5% tolerated)
- Availability: "In stock" on the page must match
in_stockin the feed - Title: can differ slightly but the product must be the same
Common case: product out of stock on the page but still in_stock in the feed → immediate disapproval.
Cause #4: Non-Compliant Images
Images are one of the fastest disapproval causes to fix.
Google Shopping mandatory image standards
| Criterion | Minimum requirement | Recommended |
|---|---|---|
| Resolution (non-clothing) | 100 × 100 px | 800 × 800 px |
| Resolution (clothing) | 250 × 250 px | 800 × 800 px |
| Format | JPG, PNG, GIF, WebP | JPG or PNG |
| File size | No fixed limit | < 16 MB |
| Background | Neutral recommended | Pure white |
What causes disapproval
- Watermark or logo on the main image
- Promotional text in the image ("Sale", "-30%", phone number)
- Generic or placeholder image (icon, silhouette, "Image coming soon")
- Colored border around the image
- Broken image URL (returns a 404 error)
- Image not publicly accessible (behind authentication)
Cause #5: Missing Shipping or Return Information
Since 2023-2024, Google requires this information to display products in Shopping.
Shipping not configured
Symptom: "Missing shipping information" or "Shipping not configured for this country"
Solution:
- In GMC: Settings → Shipping and returns
- Create a shipping service with:
- Destination country
- Delivery time (min / max business days)
- Rate (flat, free, weight-based or amount-based)
- Associate this service with your account (applies to all products) or use the
shippingattribute in the feed for per-product rates
Return policy not configured
Solution:
- In GMC: Settings → Shipping and returns → Returns
- Configure:
- Return window (e.g., 30 days)
- Return cost (free, at customer's expense)
- Refund method (full refund, exchange)
- Publish a dedicated returns page on your site and link it in your GMC account
Cause #6: Missing Legal Pages
Google checks that your site meets minimum commercial transparency standards before approving your products.
Pages required by Google
| Page | Expected content | Impact if missing |
|---|---|---|
| Legal notice | Company identity, registration | Disapproval or suspension |
| Privacy policy | GDPR, cookies, data collected | Disapproval |
| Terms & Conditions | Pricing, shipping, returns, warranties | Strong warning |
| Contact | Email, phone or contact form | Reduced visibility |
| Return policy | Timelines, costs, procedure | Disapproval since 2024 |
Critical point: these pages must be accessible from the homepage via a footer or menu link. A broken link or empty page is enough to trigger disapproval.
Fixing a Disapproved Product: Step-by-Step Protocol
Step 1 — Identify the exact cause
- GMC → Products → All products → Filter: Disapproved
- Click on the product concerned
- Issues tab → note the error code and exact message
- Click Learn more to access Google's documentation
Step 2 — Fix at the source
If the problem comes from the feed:
- Fix the attribute directly in your XML file, Google Sheets or via the API
- Trigger a manual feed update (GMC → Feeds → Refresh)
If the problem comes from the product page:
- Fix directly in your CMS (Shopify, WooCommerce, PrestaShop)
- Check the page with Search Console's URL inspection tool
- Wait for Google's bot to re-crawl the page (or request forced indexing)
If the problem comes from GMC settings:
- Shipping, returns, policy → fix in GMC Settings
- Setting changes apply to all products automatically
Step 3 — Request re-review
After fixing, don't wait — actively request re-review:
- GMC → Products → All products → select product(s)
- Click Request review
- Confirm that you've fixed the reported issue
For feed corrections: simply re-trigger the feed fetch — GMC automatically reprocesses.
Step 4 — Monitor status
- Typical delay: 24 to 72 hours for a simple approval
- Delay for policy violation: up to 7 business days
- Check in GMC → Dashboard → Product status
Re-approval Timelines After Fix
| Type of fix | Typical delay |
|---|---|
| Feed attribute fix (price, title, image) | 24 - 48 hours |
| Product page fix (URL, content) | 48 - 72 hours |
| Adding missing legal page | 48 - 72 hours |
| GMC shipping / return configuration | 24 - 48 hours |
| Policy violation (prohibited content) | 3 - 7 business days |
| Account suspension (extreme case) | 7 - 28 days (with appeal) |
Tip: after fixing a URL or page issue, force crawling with Google Search Console (URL Inspection → Request indexing) to speed up the process.
Preventing Future Disapprovals
Set up real-time synchronization
Disapprovals for "price mismatch" or "incorrect availability" nearly disappear when your feed syncs hourly. Most e-commerce platforms support this natively:
- Shopify: Google & YouTube App → automatic sync
- WooCommerce: WooCommerce Google Feed Manager or YITH plugin
- PrestaShop: official Google Shopping module or Lengow
- Custom: implement the Content API for real-time updates
Run regular audits
Don't rely on Google's email alerts — they're often delayed. Schedule:
- Weekly: check the GMC dashboard and approval rate
- Monthly: full audit of legal pages and return policy
- Quarterly: check image compliance and structured data
Use Schema.org structured data
Product pages with valid Product structured data (price, availability, reviews) are less frequently disapproved because Google extracts data directly from the page, reducing the risk of feed/page mismatch.
Recommended attributes:
{
"@type": "Product",
"name": "Product name",
"offers": {
"@type": "Offer",
"price": "19.99",
"priceCurrency": "EUR",
"availability": "https://schema.org/InStock"
}
}
20-Point Checklist
Feed data (6 points)
- Price identical between feed and product page
- Valid GTIN provided (or
identifier_exists: falseif applicable) - Title between 70 and 150 characters, no promotional text
- Description over 100 characters, factual
- Availability (
in_stock/out_of_stock) synchronized in real time - Feed updated at least every 24 hours
Images (4 points)
- Main image without watermark, text or border
- Resolution ≥ 800×800 px for non-clothing
- Image URL publicly accessible (200 status code)
- At least one additional image via
additional_image_link
Product page (4 points)
- URL returns HTTP 200 status code (no 404 or broken redirect)
- Page accessible without login required
- Googlebot not blocked in robots.txt
- Schema.org
Productstructured data present and valid
GMC configuration (3 points)
- Shipping service configured with timelines and rates
- Active return policy in GMC
- GMC account linked to Google Ads
Site legal pages (3 points)
- Legal notice accessible from the footer
- Privacy policy accessible from the footer
- Contact page with at least one working contact method
Diagnose and Fix in 30 Seconds
Manually identifying the cause of a disapproval takes time. MyGoogle automatically scans your product page and tells you in 30 seconds exactly what's blocking approval — with the fixes to apply.
Launch the free audit — no installation required, immediate results.