Skip to main content

Mismatched price in Merchant Center: product data vs page

A mismatched price means the price in your product data and the price on the product page disagree, and the product can be disapproved until they match. Find the stale side, fix it where it starts, and make the sync fast enough that it stops happening. It is rarely fraud; it is usually a sync that fell behind.

Critical5 min read

You run this check yourself

Our scanner can’t see inside your Google accounts, so this one’s on you. Work through the checklist below without running a scan.

How do I fix a mismatched price in Google Merchant Center?

Work out which side is stale, the product data or the page, and fix it where it starts. Rarely fraud. Usually a sync that fell behind. Google’s “How to fix: Mismatched product price” page says a product whose landing page price differs from the [price] in your data source may be disapproved, that prices in the HTML need to match the uploaded prices exactly, and that product data prices that differ from your website can end in an account suspension. In Merchant Center, download the affected items from the Needs attention tab. For a sample, open each product link in a private window and note three prices: on first load, in the structured data and in the cart. Google’s fix page names the causes: site changes that reach Merchant Center late, wrong structured data, a sale price with the wrong [sale_price_effective_date] or time zone, and pack items sent with a single-unit price. Put the real price in the HTML when the page loads, not one a script swaps in later.

Why this matters

Google's “How to fix: Mismatched product price” page is blunt about the stakes. When the landing page price and the [price] in your data source differ, “the product with the mismatch may be disapproved”, and the same page warns that product data prices that differ from your website can end in an account suspension, not just a paused item. It is specific about what the page has to carry, too: “Prices reflected in the HTML need to match exactly the prices uploaded in Merchant Center.” A price that only appears after a script runs is one of the causes it names.

The “Price [price]” page sets the rule for both sides: “Submit an amount and currency that match the price on your landing page and the checkout pages”, and “Keep your prices up to date.” Google's landing page requirements add a timing rule that plenty of themes trip over: “Make sure your pricing and availability information is consistent through the process of page load.” A page that loads one figure and then swaps in another has two prices, and only one of them can match.

The fix page lists the usual causes, and none is exotic: site changes that reach Merchant Center late, incorrect structured data markup, a sale price whose [sale_price_effective_date] or time zone is wrong, and pack or minimum-quantity items sent with a single-unit price. Google's “Issues in Merchant Center” page describes a stricter mode as well: “Preemptive item disapproval (PID) occurs if the price or availability of your products don't match between your product data and website landing pages.” Automatic item updates help at the edges, but Google's automations page is clear that “Automations aren't a replacement for regular updates of your product data.”

Manual check first: StoreVerifier does not see your product data, so the side-by-side against Merchant Center is yours. The free scan covers the page half. It reports a cart price higher than the product page as a failure, and flags structured data whose price disagrees with the price on the page. The full list of price checks is on the misrepresentation checker. For sale prices, see discounts and “was” prices; for currencies, currency in Merchant Center.

Typical evidence

A price change between updates

This example shows a sale beginning after a daily feed run. Compare the public offer and submitted product data after a material price change; the timing depends on the merchant’s setup.

Mon 09:00
Feed regenerated — price correct
Feed: £29.99 · Page: £29.99
Mon 23:00
Flash sale starts — price drops on site
Feed: £29.99 (stale) · Page: £19.99 (live)
Tue 07:00
Manual spot-check finds the difference
8-hour public-price difference
Tue 09:00
Feed regenerates — mismatch closes
Feed: £19.99 · Page: £19.99
Fix: use `sale_price` + `sale_price_effective_date` instead of changing `price`. The base `price` stays stable; the sale window auto-applies and auto-expires.
Set up webhook-triggered feed regeneration on any price change. Or better: never change the `price` attribute for sales — use `sale_price` with an explicit date window.

The public signals this check looks for:

  1. Merchant Center shows “Mismatched product price” on items whose price you changed on the s…

    Merchant Center shows “Mismatched product price” on items whose price you changed on the site that morning.

  2. A sale ended on the site, but the sale price in your product data is still running, or its…

    A sale ended on the site, but the sale price in your product data is still running, or its end date sits in the wrong time zone.

  3. The theme puts a placeholder or “from” price in the HTML and writes the real price in with…

    The theme puts a placeholder or “from” price in the HTML and writes the real price in with a script after the page loads.

  4. The product link opens a variant with a different price from the one in the product data

    The product link opens a variant with a different price from the one in the product data.

  5. Items sold in packs or with a minimum quantity are sent with the price of a single unit

    Items sold in packs or with a minimum quantity are sent with the price of a single unit.

  6. A pricing or trade-customer app changes the displayed price for some visitors

    A pricing or trade-customer app changes the displayed price for some visitors.

What it looks like once it is right

The same store sets [sale_price_effective_date] to the end of the sale in its own time zone and moves its price sync to hourly uploads. Listing, page and cart all read £49.00 the minute the sale ends.

Common mistakes

Common mistake

A sale ends on the site at midnight on Sunday, but the product data keeps sending £39.00 until the Tuesday sync. For two days the listing says £39.00, the page says £49.00, and the items sit in Needs attention.

Self-check steps

Choose an update method that fits the catalogue

Fast-changing prices or stock deserve a prompt, documented update path. Choose the method your platform supports and verify the submitted value after a material change.

Daily scheduled fetchup to 24h mismatch window
Trigger: Clock (e.g. 9am daily)
Setup effort: Zero — just set the schedule in GMC
Hourly scheduled fetchup to 1h window
Trigger: Clock (every hour)
Setup effort: Low — change the GMC fetch frequency setting
Webhook-triggered push2–10 min window
Trigger: Inventory or price change event
Setup effort: Medium — requires platform webhook + Content API integration
sale_price attributeZero (no regeneration needed)
Trigger: sale_price_effective_date window
Setup effort: One-time — restructure how sales are submitted in feed
The `sale_price` + `sale_price_effective_date` pattern eliminates the price mismatch window for promotional pricing entirely. The base `price` never changes; the sale auto-applies and auto-expires.

Questions merchants ask

Why does Merchant Center say my price is mismatched when the page looks right?

Often because the price you see is not the one in the page’s HTML or structured data when it first loads. Google's fix page says prices reflected in the HTML need to match the prices uploaded to Merchant Center, and names incorrect structured data and sale-date errors among the usual causes. Test the page with the Rich Results Test and look at what loads first.

Do automatic item updates fix price mismatches for me?

Only some of them. Google's automations page says they are designed to fix sporadic problems for a small percentage of products, are not a replacement for regular product data updates, and may not work for prices that change more than once a day. Treat them as a safety net and keep your uploads current.

Can a price mismatch affect my whole account?

It can. Google's “How to fix: Mismatched product price” page warns that product data prices that differ from your website can end in an account suspension. Its “Issues in Merchant Center” page also describes preemptive item disapproval, where products that are likely to violate the requirements are disapproved and a review is needed to clear them.

Remediation

Risk signal

A price mismatch is one of the cheaper problems to fix and one of the most annoying to leave running: every day it sits there, a listing is paused or a shopper meets a different number. Find the stale side, fix it at the source, then make the sync quick enough that it stops coming back.
PriorityTreat this and any other highest-severity findings as first-priority work, then document each fix.
EvidenceRecord the current state before each change, apply the fix, then capture the corrected state so every change is evidenced.

Similar cases

Sources

  1. How to fix: Mismatched product priceGoogle Merchant Center Help — support.google.com
  2. Price [price] — submitting accurate product pricesGoogle Merchant Center Help — support.google.com
  3. Allow Merchant Center to update product information automaticallyGoogle Merchant Center Help — support.google.com

Last reviewed 23 Sep 2026.

That is one issue. The library documents 134.

The free scan lists what it finds on your store. The paid report adds the affected pages, captured evidence and step-by-step fixes. Start free, with no account needed.