Skip to content

Fix

Shopify rich results not showing? 9 causes, checked in order

Stars, price or stock missing under your Shopify result in Google? The nine causes in the order they usually turn out to be, with the test for each.

· 7 min read · Ahoi Apps team

Quick answer

Rich results are never guaranteed, but when they're missing it's usually one of these, in this order: Google hasn't recrawled the page yet (wait, then request indexing), the markup is on the page but incomplete (run the Rich Results Test), there are two Product blocks that disagree (theme plus app), the stars come from a review app the schema doesn't read, you're looking at a collection or home page (stars show on product pages only), or you're waiting for FAQ rich results, which Google retired on 7 May 2026. The checks below take about twenty minutes and need nothing but Search Console and the test tool.

In this post · 9 causes

First: what “rich results” means on a product page in 2026

Under a product result Google can show price, availability, review stars, shipping cost and return window. Google calls the whole set merchant listing when the page sells the product, and product snippet when it only describes it. The stars alone are a review snippet. All of them come from JSON-LD on the page; your theme outputs the basics, an app or theme code adds the rest.

Two things to stop waiting for: FAQ rich results, which Google stopped showing for all sites on 7 May 2026, and HowTo, gone since 2023 (Google’s update log). If that’s what’s “not showing”, nothing is wrong with your store.

Google hasn’t recrawled the page yet

The most common cause and the most boring. You added the markup yesterday; Google last fetched the page a month ago.

Check

Search Console › URL inspection › paste the product URL. “Last crawl” tells you when Google saw the page. If it’s before your change, that’s the answer.

Fix

Click Request indexing for a handful of your most important products. Don’t do it for 500; the quota is small and Google recrawls on its own within days to weeks. Rich results then take another few days to appear after the crawl.

The markup is there but incomplete

Google needs specific fields before it shows anything. For price and availability: offers with price, priceCurrency and availability. For stars: aggregateRating with ratingValue and reviewCount. A Product block without an image or with an empty description is valid and still won’t earn a rich result.

Check

Paste the product URL into the Rich Results Test. Green with “Merchant listings” or “Product snippets” means Google can read it. Warnings (yellow) are missing recommended fields; errors (red) block the result. Also open the Merchant listings and Product snippets reports in Search Console: both list every product page with errors and warnings, which beats testing one URL at a time.

Fix

Fill the missing fields. On Shopify that usually means a product with no image, no description, or a price of zero. Fix the product, not the markup.

Two Product blocks that disagree

Dawn and most current themes output Product JSON-LD through Shopify’s structured_data filter. Install a schema app or paste a snippet on top and the page has two Product blocks. Google doesn’t pick the better one; when they disagree on price or availability, it tends to show nothing.

Check

View the page source (or the Rich Results Test’s code view) and search for "@type": "Product". Two hits is the problem.

Fix

Keep one. Either switch the app’s Product output off and let the theme do it (you lose stars and shipping fields), or remove the theme’s: in the theme editor’s product template, look for a structured data or SEO setting; if there’s none, comment out the script around {{ product | structured_data }} in the product section or snippets/structured-data.liquid.

sections/main-product.liquid
{%- comment -%}
<script type="application/ld+json">
  {{ product | structured_data }}
</script>
{%- endcomment -%}

That last step means editing theme code, and no app we know of, ours included, can do it for you safely; every theme puts the line somewhere else.

Stars from a review app the schema doesn’t read

Review stars need aggregateRating in the Product block. Your theme’s structured_data doesn’t know your review app exists. Either the review app injects its own rating markup (Judge.me, Loox, Stamped, Yotpo and REVIEWS.io all can), or a schema app reads the rating from the review app and adds it. If neither is switched on, or the schema app doesn’t support your review app, there are no stars to show.

Check

Rich Results Test › Product › look for aggregateRating. Missing means nobody is adding it.

Fix

Switch on rich snippets in your review app’s settings, or pick a schema app that lists your review app. Don’t switch on both: that’s cause 3 again, with two aggregateRatings.

You’re looking at the wrong page

Stars show on the product page. Not on the home page, not on collection pages, not on the blog post about the product. Google’s structured data guidelines say the markup has to describe the main content of that page, and Google doesn’t show self-serving review stars for an Organization or LocalBusiness at all. A store that marks up its own Google rating on the home page gets nothing, and risks a manual action.

Check

Search for the exact product name, not the brand. The product result is the one that can carry stars.

Fix

None needed on the product page. Remove aggregateRating from Organization markup if an app or snippet added it.

Price or availability doesn’t match what Google sees

Google compares the markup with the page. A product whose first variant is sold out while the markup says InStock, a sale price in the markup and the regular price on the page, or a currency that changes by visitor location (Shopify Markets) all count as mismatches, and Google drops the result rather than show a wrong price.

Check

The Merchant listings report in Search Console and its issue list; and look at the product in an incognito window from your main market.

Fix

Make the markup follow the variant Google indexes (the default one) and the market the page is served in. Shopify’s own structured_data handles the default variant; apps vary, and Markets with different currencies per domain is the hard case, ours included. It’s on our list.

The page is blocked or not indexed

No index, no rich result. Products set to noindex (by an SEO app, by a theme setting, or by Shopify’s password page), products in draft, or pages Google hasn’t indexed at all.

Check

URL inspection › “URL is on Google” or not. If not, the reason is in the same panel.

Fix

Remove the noindex, publish the product, make sure it’s in a collection that’s linked from the navigation (Shopify’s sitemap has it; a link helps more).

Shipping and returns don’t show, but stars and price do

That’s not broken; it’s the newest part. The shipping-cost and return-window lines need shippingDetails and hasMerchantReturnPolicy inside the Offer (or a return policy on the Organization). The theme doesn’t output them. Some apps do, some don’t; check the app’s listing or documentation.

Check

Rich Results Test › Merchant listings › look for shippingDetails and hasMerchantReturnPolicy.

Fix

An app that outputs them, or a snippet in the product template. Google also reads shipping and returns from Merchant Center if your store is connected; for a store with Shopping ads that’s the easier route.

Everything is right and Google still doesn’t show it

It happens. Google’s docs say rich results are not guaranteed, and in our experience a store with low traffic, few reviews or a brand-new domain can have perfect markup for months without stars. Google shows them when it trusts the page enough.

Check

The Merchant listings report in Search Console: “Valid” count going up with no errors. That’s all you can do on your side.

Fix

More reviews, more links, more time. Not another app.

Checklist

  1. URL inspection: crawled since the change? If not, request indexing and wait a week.
  2. Rich Results Test: green, with Merchant listings or Product snippets?
  3. Page source: one "@type": "Product", not two.
  4. aggregateRating present, from one source only.
  5. You searched for the product, and looked at a product page.
  6. Price and availability in the markup match the page in your main market.
  7. The page is indexed and not noindex.
  8. Shipping and returns missing? That’s the two Offer fields, not a bug.
  9. All green and still nothing: give it time, collect reviews.

FAQ

How long after adding structured data do rich results show?

Days to a few weeks. Google has to recrawl the page first, then decide to show the result. Requesting indexing for a few key pages shortens the first part.

Why do my competitors have stars and I don't?

Usually one of causes 2 to 4: they have aggregateRating in their Product markup from a review app and you don't, or yours is there twice.

Does Shopify add structured data automatically?

Most current themes do, through {{ product | structured_data }}: Product with name, image, price and availability. Not review stars, not shipping or returns.

Will FAQ schema give me rich results?

No. Google stopped showing FAQ rich results on 7 May 2026. Keep the markup if you like, but don't wait for it.

Can I put star ratings on my home page?

You can, but Google won't show them. Self-serving reviews on Organization or LocalBusiness markup are excluded by Google's policy, and overdoing it can earn a manual action.

Do I need a rich snippets app?

Not for price and availability; your theme has those. For stars, shipping and returns, you need either your review app's markup or a schema app, not both. How to add rich snippets to Shopify walks through the manual route.

Read time by our Estimated Read Time logic.

Related