When Your Schema Says One Thing and Your Page Says Another

When Your Schema Says One Thing and Your Page Says Another

A schema mismatch is structured data that states something the visible page does not, such as a price, a star rating or a stock status the shopper cannot see. Google's structured data guidelines say markup must be a true representation of the page content and must not describe content that is hidden from readers, so a mismatch can cost a page its rich results and gives every machine a reason to doubt the rest of your data.

By Margareta Petrovic, CISA, CISSP, founder of Visibility Mesh. Updated November 9, 2026.

Missing schema leaves a gap. Contradictory schema is harder on you, since a machine cannot tell which of your two versions is true. This article is about that second problem. If your markup passes the validator but says too little, read why valid schema is not the same as effective schema instead.

Schema-content mismatch: a contradiction AI punishes. Schema that contradicts the page is worse than no schema at all. YOUR SCHEMA CLAIMS price: $189.00 availability: InStock rating: 4.8 (212) YOUR PAGE SHOWS price: $219.00 availability: Sold out rating: no reviews shown ≠ WHAT AI DOES Detects the contradiction and stops trusting your structured data all of it, not just the wrong field. One mismatch poisons the whole signal. Align schema to the visible page, every time. VISIBILITY MESH SCHEMA ≠ PAGE VM-S-P2-07 · r1.0 CAN AI READ YOU?

How does a mismatch happen on a Shopify store?

Nobody creates a mismatch on purpose. Mismatches arrive as side effects of ordinary changes, and they rarely show up in the storefront.

  • A sale changes the price on the page while an app keeps printing the old price in its own Product block.
  • A review app prints a star rating in the markup, but the theme no longer shows the reviews on the product page.
  • A product sells out, and a cached or hard coded block still says InStock.
  • A theme and an app both print Product markup, and the two copies disagree. Our guide to duplicate Product schema on Shopify covers that case on its own.
  • A developer pasted a block by hand years ago, with values that were true on the day it went in.
Your schema claims Your page shows What AI does
price: $189 $219 at checkout Distrusts your pricing data
availability: InStock “Sold out” Stops relying on your stock signal
rating: 4.8 (212) No reviews visible Discounts your trust signals entirely
One contradiction is enough for an engine to discount all your structured data, not just the field that is wrong.

Why is a mismatch worse than no schema?

A machine reads structured data because it is cheaper and clearer than prose. It also checks that data against the page, since markup is easy to write and a page is what the shopper actually sees. When the two disagree, the page looks less reliable. The doubt can spread beyond the one wrong field. Google says a page whose markup breaks its guidelines can lose its eligibility for rich results, and a serious case can bring a manual action.

In our June 2026 study of 216 Shopify storefronts, 72% failed Entity Integrity, the metric that reads the product and brand layer of structured data. A contradiction is one way to fail it, since data a machine could use becomes data it has to question. The figures are in The State of AI Visibility 2026.

How do I check my own pages for a mismatch?

Pick your best selling product and one product that is on sale or sold out. Give it twenty minutes.

  1. Open the product page in a private browser window and write down four values a shopper can see: the price, the availability, the star rating and the review count.
  2. Right click the page, choose View page source and search for "Product". Read the price, availability, ratingValue and reviewCount inside each Product block.
  3. Compare the two lists. Every value in the markup must match what you wrote down, and any rating in the markup must also be visible on the page.
  4. Count the Product blocks while you are in the source. More than one usually means a theme and an app are both printing markup, and they will drift apart over time.
  5. Run the same page through Google's Rich Results Test at search.google.com/test/rich-results to see which values Google itself picked up. Our guide to validating structured data shows what each screen means.

How do I fix each kind of mismatch?

Fix each value where it is created. On Shopify that usually means one of three places.

  1. If the price or stock is wrong, go to Products, open the product and check Pricing and Inventory first. If the admin is right and the markup is wrong, the markup comes from an app or a pasted block, and the fix is to remove that copy.
  2. If a rating appears in the markup but not on the page, open the review app under Apps and either turn its star display back on in your theme or turn off its structured data output. A rating belongs in the markup only when shoppers can see it.
  3. If an app prints a second Product block, go to Online Store > Themes, click Customize, open App embeds and switch off the embed that adds product markup. Check the page source again to confirm one block is left.
  4. If the block was pasted into the theme by hand, make a copy first (Online Store > Themes, the three dots, Duplicate) and have a developer replace the fixed values with Liquid that reads the live product data.

Prices and stock can change daily, so the only markup that stays true is markup that reads from the same data the page shows. Our article on live price, inventory and variant data explains how agents read those values.

What happens when a trail shoe page shows $119 and its markup shows another price?

Take a running shoe store on Shopify with 60 products and a spring sale. On one trail shoe, the page shows a sale price of $119 and the label "Only 2 left". In the page source, the theme's Product block also says $119, but a review app prints a second Product block with the old price of $149, a 4.9 rating and 212 reviews. The theme stopped showing that app's stars after a redesign.

The owner switches off the review app's product markup under App embeds and turns its star widget back on in the product template. The page now shows the rating, and one Product block in the source carries the same $119 price and the same rating the shopper sees. Two blocks that disagreed about the price were never going to settle it between themselves.

What else do owners ask about schema mismatches?

Why is mismatched schema worse than no schema?

Missing schema means a machine knows less about you. Mismatched schema tells it that your markup and your page disagree, so it has a reason to doubt both. Google also says it may withhold rich results from pages whose markup does not represent the visible content.

What causes schema mismatches on Shopify?

The usual causes are an app that prints its own Product block with an old price, a review app whose rating is in the markup but not on the page, cached stock values and hand pasted blocks with fixed values. A theme update can also leave two copies that disagree.

Can I mark up reviews that are not shown on the page?

You cannot. Google's guidelines say structured data must not describe content that is hidden from readers. Show the rating and review count on the product page, or leave them out of the markup.

How often should I check for mismatches?

Check after every sale, theme update or new app, since those are the changes that create them. A product on sale is the best test page, because its price is the value most likely to drift.

If you want every product page to carry one Product block built from your live data, Schema Mesh removes the duplicates and contradictions on Shopify and WordPress websites. For how the layer fits together, start with schema for ecommerce, explained.

Sources

See whether this applies to your site

This article is about what AI can read; the scan checks your structured data page by page.

The free Visibility Mesh scan checks whether AI crawlers can reach your website and reads the structured data and text of 5 key pages. The scorecard has 3 complete findings, and each one names the page and the fix. No install, no call, no card.

Run the free scan