Home / Fix a Problem / Tracking, Ads & Feeds / Structured data vs feed price mismatch

Structured data (the schema.org price markup search engines read directly from your page) and your Merchant Center feed are two separate sources of the same information, and when they disagree — a sale reflected in one but not the other, a currency mismatch, stale markup left over from a theme change — Google can flag it as a discrepancy even though neither number is technically wrong on its own.

Compare your page’s structured data against what’s actually displayed

Use Google’s Rich Results Test on a live product page and check the price it reads from your structured data against the price actually shown to a shopper on that same page. A mismatch there, independent of anything in your feed, confirms this specific issue rather than a feed-side problem.

MRC-013

Structured data vs feed price mismatch

Your page's structured data price reconciled against your feed, so search engines see one true number.

$109.32 delivered in 48 hours
Needs Merchant Center access and WP admin login. Create a limited sub-account — we never ask for your own password.
  • Full backup taken before we start
  • If we can’t fix it, you get your money back
  • We never ask for your own password

This or something else?

Structured data price disagrees with your displayed price or your feed This fix covers it
The mismatch is between your feed and your actual checkout price, not structured data Automatic item updates & price mismatch fix, the feed-side version
You haven’t set up structured data at all yet A different, initial implementation task
Products are disapproved for reasons unrelated to pricing Product feed disapproval diagnosis & fix, the broader version

What you are seeing

  • Google Search Console or Merchant Center flagging a structured data and feed price mismatch
  • Rich Results Test showing a different price than what’s actually displayed
  • The discrepancy possibly appearing only during sales or promotional pricing
  • Search result rich snippets showing outdated pricing

Common causes

  • Structured data generated statically at page creation, not updating when price changes
  • A theme or plugin update introducing duplicate or conflicting structured data markup
  • Sale pricing reflected in the feed but not in the page’s structured data, or vice versa
  • Currency or regional pricing differences not accounted for consistently across both sources
  • Cached page content serving stale structured data even after the underlying price updates

What we do

  1. Identify every source of structured data on affected product pages
  2. Confirm which source (theme, plugin, custom code) generates the markup
  3. Ensure structured data pulls live pricing rather than a static snapshot
  4. Align structured data and feed to reflect the same real-time price
  5. Test using Google’s Rich Results Test to confirm accuracy
  6. Check for the same issue across your broader catalogue

What is included

  • Structured data corrected to reflect live, accurate pricing
  • Consistency verified between structured data and feed
  • Testing confirmed using Google’s own validation tool
  • A written note on what was causing the mismatch

Not included

  • Setting up structured data from scratch, if none currently exists — a separate task
  • Guaranteeing rich snippet display in search results, which is Google’s own decision
  • Ongoing monitoring as pricing changes going forward
  • Resolving an unrelated feed disapproval issue

Questions about this fix

Why would this happen if my feed price is already correct?

Because structured data and your feed are generated independently — a correct feed doesn't guarantee the page's own markup updates the same way, especially if it's cached or generated statically.

Does this affect my search rankings, not just Shopping listings?

It can affect whether search results show rich pricing snippets and how Google trusts your site's data broadly, though it's a data-quality signal rather than a direct ranking factor on its own.

Will this recur every time I run a sale?

It can, if the underlying cause is static generation or caching — fixing the source so structured data reflects live pricing is what prevents it recurring with every future price change.

How is this different from a Merchant Center feed price mismatch?

The feed is what you explicitly submit to Merchant Center; structured data is markup search engines read directly from your page — this fix addresses the page-side source specifically.

Could a caching plugin be part of the problem here?

Yes, if a page is served from cache and the structured data was generated before a price change, the cached version can show stale pricing until it's refreshed.

Structured data vs feed price mismatch
$109.32 · delivered in 48 hours · needs Merchant Center access, WP admin login

Related fixes

If this is the second time this year

A bad update breaking the site is a symptom of updates not being tested first. Care plans run every update on a staging clone before it reaches your live site, which is the actual fix for this happening again.

See care plans

Your access, your rules

Create a separate admin account for us and delete it when we are done. For anything else, we get in touch and agree a method — never a form field on this site, never by reply to an email.

We back up first, always

Before anything is touched we take a full backup and keep it for 30 days. If a fix goes wrong, we put the site back exactly as it was.

If it is not what you bought

If the problem turns out smaller than what you ordered, we refund the difference. If it is bigger, we stop and send a quote before doing any extra work.

If we cannot fix it

You get back what we received. Diagnosis is on us — you only pay when the problem is actually solved. The payment processor takes its fee before the money reaches us, so we never hold it and it is not ours to return. That is true here as everywhere else.

If it comes back

Reply within seven days of delivery and we put it back on the bench at no cost. The fix is not finished until it holds.

What we are responsible for

If something goes wrong with a fix, our responsibility is limited to what you paid for it. We take a full backup first so mistakes can be undone, and we tell you before doing anything outside what you bought.