What you'll learn in this article
- How the automatic Shopping feed verification process works in Google Merchant Center: the three distinct phases every product goes through
- The difference between account-level and product-level disapproval — and why confusing them leads to the wrong responses
- The most frequent Google Shopping feed errors that cause Merchant Center product disapproval and how to fix them in priority order
- How to interpret error messages from the Google Merchant Center feed and distinguish critical errors from non-blocking ones
- The re-approval cycle: real timelines, algorithm behavior, and when to request manual review
- The most effective preventive strategies to keep the Merchant Center feed diagnosis clean on large catalogs
The Google Merchant Center feed verification is an automatic process that runs in the background on every product uploaded to the product feed. Google constantly checks that the feed data is consistent with the landing page, compliant with Shopping policies, and complete according to the category specifications. When something is wrong, the product is disapproved — and stops appearing in the Google Shopping carousel without any alert signaling the problem in active campaigns.
This is why monitoring the Google Merchant Center feed is something you cannot handle through the Google Ads interface alone. Campaigns — including shopping ads and Performance Max — can show unspent budget or a drop in impressions with no visible explanation — while the real cause is a disapproval that has removed the most-clicked products from the carousel.
In this article I analyze how Merchant Center works at the automatic verification level: the three phases of the process, the types of disapproval, the most frequent errors with their solutions, and the preventive strategies that reduce the risk of disapproval on large catalogs. The integration between Merchant Center and Google's automatic crawling system is what makes this process both powerful and hard to predict. What official documentation describes and what hands-on experience reveals often differ, and that gap matters.
How automatic feed verification works: the three phases
According to the official Google Merchant Center documentation on product data requirements (support.google.com/merchants/answer/160161), every product uploaded to the feed goes through a verification process that evaluates three distinct dimensions:
Phase 1 — Feed data verification (Feed Audit)
The first phase is the Merchant Center feed audit: Google analyzes the data provided in the feed file (XML, CSV, or API) against the product data specification and verifies that it is technically correct. It checks that mandatory attributes are present, that values are in the correct format (e.g. price with ISO currency, availability with standardized values), that the GTIN is in a valid format if provided, and that the Google product category from the Google Product Taxonomy is valid and recognized.
Errors in this phase are almost always technical formatting errors — prices without currency, dates in unrecognized formats, non-standard availability values such as "available" instead of "in stock". They are the easiest to identify because Merchant Center reports them with a specific error message and a precise column in the feed.
Phase 2 — Landing page consistency check (Crawl)
The second phase is the one that generates the largest number of Google feed attribute errors and disapprovals on accounts with technically correct feeds. Google crawls the landing page of each product and checks whether the product information on the page matches what the feed declared. It verifies:
- Price consistency: the price in the feed must match the price visible on the product page. A difference of ≥€0.01 can cause disapproval, regardless of the reason (rounding, VAT included/excluded, price updated on the site but not in the feed).
- Availability consistency: if the feed declares "in stock" but the page shows "out of stock" or has no "add to cart" button, Google flags the product as disapproved for inconsistent availability.
- Landing page availability: URLs returning 404, improperly handled 301 redirects, or pages with paywalls or login redirects, Merchant Center treats all of these as critical errors.
From hands-on experience: price consistency verification is the most frequent source of silent disapprovals on e-commerce accounts. Google catches this mismatch because Google Merchant Center and Google's crawl infrastructure run on independent schedules.
The feed updates at a set frequency (e.g. every 24 hours) but Google's crawl runs on its own schedule. If the site price changes between those two events, the product gets disapproved. On accounts with dynamic pricing or frequent promotions, one price change can take down tens or hundreds of products at once.
Phase 3 — Policy verification (Policy Review)
The third phase is compliance verification against Google Shopping policies (support.google.com/merchants/answer/6150127). Google checks that the product does not fall into prohibited categories: weapons, unqualified alcohol, prescription drugs, adult products without a verified account. It also verifies that ads do not contain misleading or unsupported claims.
Finally, it checks that the purchase experience on the landing page meets minimum requirements: the ability to buy, visible seller information, and a clear return policy.
Policy verification is the only one of the three phases that can lead to a suspension of the entire Merchant Center account — not just disapproval of individual products. A serious policy violation, or a pattern of repeated violations, can lead to account suspension with immediate effect on all Shopping and PMax campaigns in the linked Google Ads account. Reviewing Google's policy checklist before you submit your feed to Google Merchant Center is the most reliable way to avoid this outcome.
Disapproval types: account-level vs item-level
One of the most important distinctions in managing disapproved Google Shopping products is between account-level disapproval and individual product-level disapproval. Confusing them almost always leads to wrong responses — intervening on the feed when the problem is the account, or vice versa.
Account-level disapproval
Merchant Center account suspension can be caused by several distinct situations: serious Shopping policy violations, systematic mismatch patterns between feed and site (prices always off across the entire catalog), or use of the account for prohibited products.
Sites with severely non-compliant user experience also trigger suspension, no contact page, no return policy, or a purchase process that does not work.
When the account is suspended, all products are simultaneously removed from the carousel — and Shopping and PMax campaigns stop running without any explicit alert in the Google Ads interface. The typical signal is a vertical drop in impressions and clicks in the campaign report, with zero conversions, coinciding with the suspension.
Product-level disapproval (item-level)
Individual product disapproval is much more common and less severe. Each product carries an independent status in Merchant Center: "Approved", "Pending review", or "Disapproved". The disapproval of one product does not affect the others. However, that product immediately disappears from search results and the Shopping carousel until the issue is resolved.
According to the official Google documentation on product disapproval, each disapproval has a specific category: "Missing or invalid data", "Policy violation", "Unverifiable website", "Inconsistent price". The category determines both the cause and the correct solution.
Note on item-level disapproval: on accounts with catalogs of 500+ products, a disapproval rate of 3–8% on a continuous basis is normal. Products that go out of stock without a feed update, and price changes that create temporary mismatches, are the two main drivers of this rate. Weekly monitoring of the Diagnostics report in Merchant Center is sufficient to keep this rate under control without emergency interventions.
The most frequent Google Shopping feed errors and how to fix them
The Google Shopping feed errors that cause the largest number of disapprovals — in order of frequency on real e-commerce accounts — are:
1. Price mismatch between feed and landing page
Cause: the price in the feed does not match the price visible on the product page. Common triggers: feed updates that run out of sync with site promotions, VAT handling that differs between the feed and front-end, or a site cache still showing stale prices.
Solution: increase the feed update frequency (ideally every 6–12 hours for accounts with dynamic pricing), and verify that the price field in the feed always includes VAT if the site shows VAT-inclusive prices. The "Automatic updates" tool in Merchant Center can detect price discrepancies before they cause disapproval.
2. Inconsistent availability
Cause: the feed declares "in stock" for products that are out of stock on the site, or vice versa. This is the error with the greatest impact on campaigns because it affects flagship products at the moment of highest demand (stock running out = high demand = disapproval = no visibility).
Solution: synchronize the feed with inventory in real time via API or via a cron job that updates availability on an hourly basis. On the Google Merchant Center feed it is possible to set the availability attribute with standardized values: "in stock", "out of stock", "preorder", "backorder".
3. Non-compliant images
Cause: images with overlaid text (e.g. promotional banners, "OFFER", "NEW"), decorative borders, brand logos on the main image, or dimensions below the minimum required (100×100 pixels for most categories).
Solution: use only product images without text or graphic overlays. You can use lifestyle images as long as the product is the main subject and no text overlays are present. For additional images (the additional_image_link attribute), text restrictions are less strict.
4. Invalid or missing GTIN in categories where it is required
Cause: GTIN provided but invalid (wrong checksum, incorrect length), or GTIN not provided in categories where Google requires it for products that have an official EAN code.
Solution: verify the validity of GTINs through an EAN validation tool before uploading them to the feed. For products without a GTIN (handcrafted, custom, own-brand products), use the identifier_exists: false attribute to
explicitly communicate to Google that the product does not have a standard code.
5. Titles or descriptions with prohibited content
Cause: product titles containing promotional text ("OFFER", "50% DISCOUNT", "BEST"), unnecessary special characters, or clickbait-type content. Title fields have a hard limit of 150 characters. Go over it and Google silently cuts the title short, which can trigger content quality flags. Google considers these elements a violation of content quality policies.
Note on the most impactful errors: on accounts with multiple simultaneous disapprovals — often 30–100 products disapproved in a single day — the cause in almost all analyzed cases was a site promotion that had changed prices without updating the feed. This is not a structural configuration error: it is a process error. Implementing an automatic alert when the difference between the price in the feed and the price on the site exceeds a threshold (e.g. 5%) is the most effective solution — more than simply increasing the update frequency alone.
Prevention and re-approval cycle
The re-approval cycle: timelines and logic
After correcting an error in the feed or landing page, the product enters an automatic re-verification cycle. Standard timelines, according to Google documentation, are 3–5 business days for new products. For existing products that are corrected, re-verification can happen in 24–72 hours — but it is not guaranteed.
It is possible to request a manual re-verification from the Diagnostics section of Merchant Center for certain types of disapproval. This option is useful when you are certain you have corrected the problem but want to accelerate the return to visibility — especially for high-turnover products or during peak traffic periods.
Note on re-approval timelines: on accounts with a high-quality history (low historical disapproval rate, no previous policy violations), re-approval after correction of technical errors tends to occur within 24–48 hours rather than the stated 3–5 days. Accounts with a more problematic history or recently suspended tend to have longer timelines and more thorough reviews.
Preventive strategies for large catalogs
Proactive — rather than reactive — Merchant Center feed diagnosis is the most effective approach for accounts with catalogs of 100+ products. The practices that produce the best results:
- Weekly monitoring of the Diagnostics tab: check the Diagnostics report in Merchant Center every week to identify new disapprovals before they impact campaigns. The report shows the distribution of errors by type and the number of affected products — it is the starting point for any corrective action.
- High-frequency feed updates: for e-commerce with dynamic pricing or frequent promotions, updating the feed every 6–12 hours is standard practice. Merchant Center supports updates via API, SFTP, and scheduled URL fetch.
- Separate products by approval status: use custom labels to identify products in "disapproved" status and create separate groups in the campaign, so as not to waste budget on products that do not appear in the carousel.
- Price alerts on the site: implement an automatic comparison between feed price and site price with alerts when the difference exceeds a threshold. This requires a script or an external tool, but it is the only way to detect discrepancies before they cause disapproval.
FAQ on Google Merchant Center feed verification
How long does Google Merchant Center take to approve a product?
What causes product disapproval in Merchant Center?
Does a product disapproval affect the entire Merchant Center account?
How do you resolve a disapproval for price mismatch?
sale_price and sale_price_effective_date attributes to the feed to
tell Google the promotional price and its active dates. This avoids comparison with the base price and prevents disapprovals during promotional campaigns.What is the Diagnostics tab in Merchant Center?
How do you prevent disapprovals on accounts with dynamic pricing?
1) Update the feed every 6–12 hours via API or scheduled URL fetch.
2) Use sale_price and sale_price_effective_date for promotions instead of changing the base price.
3) Set up an automatic alert that compares feed price and site price and flags gaps before they trigger disapproval.
4) Turn on Merchant Center's automatic update to let it correct price and availability via site crawl.