Suspension Check

Guides · Google Merchant Center

Price mismatch disapproval in Merchant Center: why the price Google sees is not yours

Google crawls your product page and compares the price it finds in the page's structured data with the price in your feed. When the two differ, the item is disapproved for 'mismatched value (page crawl)'. On Shopify the usual cause is markup written by a theme or app that does not follow the selected variant, or two apps both writing Product JSON-LD.

What usually causes it

How to fix it

  1. Find every source of Product JSON-LD on a product page (view source, search for 'application/ld+json') and keep one.
  2. Make the offer price follow the variant Google is sent.
  3. Use one currency per target country and state it.
  4. Re-fetch the page and check markup price against the shown price before requesting a re-crawl.
Takes about 30 seconds. We read the public pages any reviewer reads: home, contact, about, policies and a sample of products.

The checks that detect it

CheckRule
Price consistent between page and markup
The price in the product's JSON-LD matches the store's own product data.
Product data specification: price [price] (read 2026-10-06)
Availability consistent
In-stock status in the JSON-LD matches the variant data.
Product data specification: availability [availability] (read 2026-10-06)
Product structured data present
Product pages carry Product JSON-LD with an offer, so Google can verify price and availability automatically.
Google Search Central: Product structured data (read 2026-10-06)
Currency stated with prices
Prices show their currency (a code such as USD or a symbol plus the currency somewhere on the page), as the processors' website checklists ask.
Stripe: Website checklist (read 2026-10-06)

Not legal advice. Policies change; each rule above names the page it restates and when it was read.