Make your structured data match the page

Structured data and the visible page should say the same thing. When they disagree, an agent may quote a price the shopper never sees.

Check P4 in the Product data dimension, worth 4 points of 100 and measured by software.

What we check

We compare the price and availability in your JSON-LD with the price and stock status the page shows for the default variant. Prices match within 0.01 once both are in the same currency, and a sale price shown next to a crossed-out one counts as the page's price. The score is the share of compared pairs that match, counting only pairs where both sides are known.

Why it matters

An agent quoting the wrong price or stock loses the shopper's trust, and Google can disapprove the listing.

How to fix it

Make the JSON-LD read the same variant the page displays. Typical effort: half a day.

  1. Have the JSON-LD read the same variant the page selects by default, usually product.selected_or_first_available_variant in Liquid.
  2. Check apps that change prices in the browser, such as currency converters, discount badges or wholesale pricing, since the JSON-LD keeps the price Shopify rendered.

Check it yourself

Compare the price in Google's Rich Results Test with the price on the page, for a product on sale and for one that's sold out.

See how your store does

The free audit runs this check and the rest on your store and emails you your score, your grade and your top findings, with the evidence for each.