Price mismatch: visible vs structured data
PRICE_MISMATCH · v1.0
What it detects
The visible on-page price and the Product JSON-LD's offers.price disagree.
Why it matters
An agent that trusts the structured price over the rendered one (or vice versa) can act on stale or wrong pricing — surfacing a deal that isn't real, or aborting a purchase that would have gone through at the correct price.
How to fix
- Find where the visible price (e.g. `<span class="price">$29.99</span>`) and the Product JSON-LD `offers.price` are each generated — they are likely populated from two different code paths or data sources. - Point both at the same source of truth (single price field/API call) so they can never diverge, rather than patching one value to match the other by hand. - Pay special attention to sale prices, currency conversion, and A/B-tested pricing — these are the most common causes of drift. - Verify: for a sample of pages, scrape the visible price and the JSON-LD price and assert they're numerically equal.
References
Last reviewed: 2026-09-01 · rule v1.0