Does Your Schema Match Your Page?
Compare prices in your HTML with JSON-LD schema.org data for a single URL. AI engines stop citing products with inconsistent data.
Free. No email. Results in seconds.
Price mismatches kill AI trust
Wrong price = lost sale
AI shopping assistants display your schema price directly to users. If it is wrong, customers see incorrect pricing and abandon — or the AI engine stops showing your product entirely.
Mismatches erode AI trust
AI engines compare schema data with visible page content. Inconsistencies signal low data quality — your products get demoted or silently removed from AI-generated results and recommendations.
Dynamic pricing needs dynamic schema
Sales, promotions, and multi-currency pricing create mismatches silently. Automated sync between your product catalog and schema markup is essential to maintain AI visibility.
Common Schema Mismatches & Fixes
Schema shows €49, page shows €39
Page cache not cleared after a price update
Clear your CDN and page cache after every price change
Schema currency: USD, page displays EUR
Multi-currency setup does not sync priceCurrency in schema
Ensure priceCurrency dynamically matches the displayed currency per locale
Discounted price only visible in HTML
Schema plugin generates Offer from base price, ignoring sale price
Configure your SEO plugin or theme to use the active sale price in Offer schema
Schema: InStock, page shows Out of Stock
Schema availability not updated when inventory changes
Ensure the availability field is dynamically set from your real-time inventory system
Several Offer objects with conflicting prices
Product variants generate multiple Offers without clear mapping
Ensure each variant Offer has its own correct price and availability values
No structured data found on product page
Theme or SEO plugin is not generating Product schema
Install an SEO plugin with schema support or add a manual JSON-LD template to your product layout
All products show the same price in schema
JSON-LD template uses hardcoded values instead of dynamic product data
Replace hardcoded prices with template variables (Liquid, PHP, Smarty) that pull from product data
lowPrice is higher than highPrice in AggregateOffer
Min/max price calculation error in theme template
Verify that lowPrice ≤ highPrice and both values reflect the actual variant price range
Platform-Specific Fix Guide
- →Check theme.liquid for the JSON-LD output block — it controls all product schema.
- →Use product.price | money_without_currency in Offer.price to ensure dynamic pricing.
- →Ensure product.available maps correctly to the schema availability field.
- →Clear Shopify CDN cache after theme edits — stale cache is the #1 cause of mismatches.
- →Consider Shopify's native JSON-LD (2024+) which auto-syncs prices and availability.
Next Steps
DIY (free)
- ✓Compare JSON-LD prices with visible page prices for 5 key products
- ✓Check that sale and promotional prices are reflected in schema markup
- ✓Verify priceCurrency matches the currency displayed to users
- ✓Confirm availability status matches real-time inventory
- ✓Test multi-variant products for correct Offer-to-variant mapping
- ✓Clear CDN and page cache, then re-check after applying fixes
Done-for-you
- ✓Full AI Search Readiness Score (100-point audit)
- ✓22+ signals across 4 dimensions
- ✓20-40 prioritized Jira-ready fix tasks
- ✓Platform-specific playbooks
- ✓Product-level analysis for up to 50 products
Want the full picture?
This free tool checks a few signals. The full audit evaluates 22+ signals across 4 dimensions and delivers an actionable fix plan.
- ✓Precise score out of 100 across 4 dimensions
- ✓20-40 prioritized Jira-ready fix tasks
- ✓Platform-specific playbooks (Shopify, WooCommerce, Prestashop)
- ✓Product-level analysis for up to 50 products
- ✓Re-scan after fixes to verify improvements
About This Tool
The Schema Mismatch Detector is a free micro-tool that compares the prices in your JSON-LD structured data (schema.org Product/Offer) with the prices visible on your HTML page. AI shopping assistants like ChatGPT Shopping and Perplexity Shopping pull prices directly from schema markup — if those prices do not match what users see, the AI engine detects the inconsistency and may stop recommending your products. This is one of the most common yet overlooked reasons for poor AI search visibility.
Frequently Asked Questions
What does this tool check?+
It fetches a single URL, extracts JSON-LD structured data (Product/Offer schema), reads visible prices from the HTML, and compares them. If the schema price differs from what users see on the page, AI engines may stop citing or recommending your products.
Why do price mismatches matter for AI search?+
AI shopping assistants like ChatGPT Shopping and Perplexity Shopping display prices directly from your schema.org data. If those prices do not match what is visible on the page, the AI engine detects the inconsistency and reduces trust in your data. This can lead to your products being excluded from AI-generated recommendations.
What types of schema does it detect?+
The tool detects Product, IndividualProduct, Offer, and AggregateOffer types in JSON-LD format. It also follows nested structures like Product > offers > Offer and @graph arrays.
Do I need to create an account?+
No. This tool requires no sign-up, no email, and no account. Just paste a product page URL and get instant results.
What counts as a price mismatch?+
A mismatch is flagged when the price in your JSON-LD schema differs from the visible HTML price beyond normal rounding differences. For example, if your schema shows €49.00 but the page displays €39.00, that is a mismatch. Minor cent-level rounding (e.g., €49.99 vs €50.00) is reported as a warning rather than a failure.
Can this detect dynamic pricing issues?+
Yes. If your page shows a sale or promotional price but the JSON-LD schema still contains the original full price, the tool flags it. This is one of the most common mismatch causes — your CMS updates the visible price for a sale but the structured data template still pulls from the base price field.
Does it check availability mismatches too?+
Yes. The tool compares the schema availability value (e.g., https://schema.org/InStock) with visible stock status labels on the page. If your schema says "InStock" but the page shows "Out of Stock," that inconsistency is flagged — AI engines use availability data to decide whether to recommend your products.
How do I fix mismatches on Shopify or WooCommerce?+
It depends on the platform. Shopify auto-generates schema from Liquid template variables — ensure your theme uses product.price (not a hardcoded value) in the JSON-LD block. WooCommerce relies on SEO plugins like Yoast or Rank Math for schema output — check plugin settings and ensure sale prices sync correctly. See the platform-specific tips section for detailed guidance.