Merchant Center price and availability mismatches: why products get disapproved and how to fix them

Short answer

Google compares the price and availability in your product feed with what shoppers see on the product page. If they differ, the product can be disapproved. Make the page and the feed agree (same price, currency, tax treatment, sale price and stock status), add correct product structured data to your pages, and keep the feed updated at least daily.

How Google spots a mismatch

Google visits the product page each listing links to and compares what it finds with your feed: price, sale price, availability and condition. It reads the page’s product structured data, and where there is none it tries to work the values out from the page itself. It reads the HTML your server sends, so a price that JavaScript fills in after the page loads may not count.

When the two disagree, one of two things happens:

  • Merchant Center corrects the listing using the page data. This is called automatic item updates, and it’s switched on by default.
  • The product is disapproved until the feed and the page agree. Google also disapproves products when it can’t work out the price or availability from the page at all.

Automatic updates are a safety net, not a fix. Google says they may stop working if it finds too many mismatches, and they don’t work well for products whose price or stock changes more than once a day.

The usual causes

Cause What Google sees Fix
A sale on the site but not in the feed Page shows the sale price, feed shows the full price Send the sale price (and its dates) in the feed
Tax included on one side only Page shows prices with VAT, feed without (or the other way round) In the US and Canada, send prices without tax; in most other countries, including the UK and EU, include VAT or GST. The page must show the same price
Prices change by country or currency Google’s crawler sees a different currency or price than the feed Make sure each feed country matches what a visitor from that country sees, and that the structured data’s price and currency match the price shown, not your base currency
Wrong sale dates or time zone The sale has started or ended on the site but not in the feed Check the sale price effective dates and their time zone
Price filled in by JavaScript The HTML Google receives has no price, or an old one Put the price in the page’s HTML and structured data, not only in scripts
The page shows a different variant The page loads the default variant; the feed item is another size or colour Link each feed item to its variant URL (for example ?variant=… on Shopify)
Stock changed after the last feed update The page says sold out, the feed says in stock Update the feed more often; check the sync app runs
Out-of-stock pages still say “Add to cart” The page offers a product the feed lists as out of stock Show sold-out status clearly on the page and in its structured data
A cached or slow page Google gets an old version of the page Clear the cache after price changes; avoid caching product prices for long
Missing structured data Google can’t find the price, so guesses or gives up Add Product structured data with offers: price, currency and availability

How to find the affected products

  1. In Merchant Center, open Products, then the Needs attention tab, and filter for the price or availability mismatch issue. You can download the list as a CSV.
  2. Open three or four of the affected products. Compare the feed values with the live page in a private browser window (no cookies or logins).
  3. Look for the pattern: is it every sale item, one country, one variant type, or products that sold out recently? The pattern points to one of the causes above.
  4. Fix the cause, not the single product. One setting usually explains hundreds of mismatches.
  5. Once the feed and the page agree, you can request a website check to speed up reapproval. Google says the check can take up to 12 hours, and you can’t send another request in that time. If you don’t request one, Google recrawls the products over the next few hours or days.

Make it stick

  • Structured data: every product page should carry Product structured data with an offer giving the price, currency and availability, and it must match what the page shows.
  • Update frequency: at least daily, more often if you run flash sales or have fast-moving stock.
  • After any app or theme change, spot-check a few products. Sync apps and theme updates are the most common cause of sudden mismatches in merchant reports. In our analysis of 115 Merchant Center complaints, 72 involved a feed or app sync breaking something.

Questions people also ask

Will Google fix the price for me automatically?

Sometimes. Merchant Center's automatic item updates can correct price, sale price, availability and condition from your product page, but Google says they are no replacement for keeping your product data up to date, and the product can be disapproved instead of updated.

Why does Google see a different price than I do?

Google crawls from its own location without your cookies. If prices change by country, currency, customer group or after a pop-up, Google may see a different price than you do in your browser.

Does a sale price need to be in the feed?

Yes. If the page shows a sale price, send it as the sale price in the feed, ideally with the sale's start and end dates, so the feed and the page agree.

How often should the feed update?

At least daily, and more often if prices or stock change during the day. Google says automatic updates may not work for products that change more than once a day.

Sources