Shopify SEO check

Why Shopify SEO check matters for Shopify merchants

When a result from Shopify SEO check should change a plan, and when it should not.

Key takeaways

  • Act on a result only when it points at a decision you can make this week.
  • A clean result means this question came back clean, not that the store is fine.
  • Measure the effect somewhere this tool cannot see.

The decision it can change

Use the check after a theme publish or after an app that injects its own product schema. The decision is whether a crawler is being told the same name, price, and stock the shopper sees. A shopper at one price and a crawler at another are being shown two products.

It is the wrong tool when the question is “why does this keyword not rank.” Rankings depend on more than readable markup. Allowing a crawler makes a page eligible to be fetched. It does not decide whether an assistant will quote it. Which crawler does which job is in ChatGPT and Google on a Shopify store.

The next question, if this one is answered

A popup that covers the product on a phone can also block the buy button. how Shopify popups sit with Google’s mobile rules is the practical version of that conflict.

Run it on Shopify SEO check.

The decisions a Shopify SEO check is for

Run it after a theme publish, after you install or update an app that touches product schema, and after you change a price that ads are still quoting. Those are the moments the HTML and the buy box drift apart. A weekly run on an unchanged hero product is low value. A run the afternoon you publish is the one that catches the second Product node.

The decision is small and concrete. Either the crawler is allowed to fetch the URL you want fetched, or you have disallowed it on purpose. Either the name, price, currency, and availability match the buy box, or you have a field to correct. You do not need a rank report to make that call.

It is the wrong afternoon for this check when the argument is “we need to rank for a category term.” Readable schema does not win that argument. The page can be perfectly described and still be a weak result for a query that stronger pages answer. Use Search Console and the page content for that argument. Use this check so you are not also invisible or contradictory.

It is also the wrong tool for a dispute about whether to block AI training. That dispute is a policy choice about Google-Extended and GPTBot. The check can show you the current robots.txt. It should not make the policy for you. Decide what you want used for training, then edit robots.txt.liquid to match, and fetch the file again.

A price mismatch is a merchandising bug

Say the product page shows $42 and the structured data says $39. A shopper who arrived from an ad sees $42. A surface that trusts the data may show $39. You now have a complaint waiting to happen, and you have a page that looks sloppy to anything reading both. This is not an SEO theory problem. It is the offer.

Find which system printed $39. Common sources are a compare-at field mapped into the price, a market that the fetch did not expect, a bundle app pricing a set, or an old app block left after you uninstalled the app in the admin but not in the theme. View the page source and search for the wrong number. The block that contains it tells you who wrote it.

Fix the source, publish, and run the Shopify SEO check on that product URL again. Do not “fix” it by adding a third block with the right price. Extra Product nodes are how the mismatch happened. One product, one offer that matches the button.

If the $39 is the real price and the page is wrong, change the product in Shopify admin, not the schema by hand. The theme should print whatever the admin says. Hand-edited JSON-LD that fights the product will break again on the next theme update.

Search inclusion and an AI answer are different outcomes

Allowing Googlebot makes the URL available to Google Search. It does not choose your position. Allowing OAI-SearchBot makes the URL available to ChatGPT search. Opting out means you are asking not to be shown in those search answers. A person can still ask ChatGPT to open a link. That is the user-initiated fetch, and it is a separate control.

None of these switches place a sentence in an answer. An assistant quotes a page when its system decides the page is relevant and allowed. You can make the page allowed and make the product facts unambiguous. You cannot force the quote. Treat a missing citation as a fact about that query, not as a broken checker.

If a popup covers the product on a phone, fix it because shoppers cannot buy, and because Google has published mobile rules about intrusive interstitials. The popup is a page problem that happens to sit next to this check. Removing it will not, by itself, produce rankings.

How to share the result without overclaiming

Send the URL, the field that mismatched, and what you think printed it. “SEO is bad” is not a handoff. “The product schema price is $39 and the buy box is $42 after the review app update” is a handoff.

Say what you did not learn. You did not learn the keyword position. You did not learn whether ChatGPT will mention the product. You learned whether this fetch could read the page and whether the offer matched.

Ask for a rerun after the publish. Schema fixes often look done in a preview and stay wrong on the live theme, or the reverse. The live product URL is the one to check.

Collections, blogs, and pages are a different check

A product URL carries an offer: name, price, currency, availability. A collection URL carries a grid. A blog article carries a story. Running a Shopify SEO check on all three and expecting the same fields is how a clean article gets called a failure, or a product gets a pass because the homepage looked fine. Match the check to the template.

On a collection, the useful questions are whether the page is fetchable, whether the title describes the grid, and whether the products in the grid are the ones you meant to rank. Faceted filter URLs can multiply into thousands of near-duplicate pages. If robots.txt or a canonical is supposed to keep those filters out of the index, confirm the rule still allows the main collection. Blocking the collection while you meant to block only the filtered sorts is a common own-goal.

On an article, product schema is the wrong target unless the article is actually selling one SKU with a price. Forcing a Product node onto a gift guide that mentions eight items creates eight chances to be wrong, or one node that does not match any buy box. Let the article be an article. Link to the product pages and check those.

Password pages, coming-soon pages, and wholesale gates are supposed to be hard to fetch. A failed check there is the gate working. Do not “fix” robots.txt to expose a catalog you locked on purpose.

Shopify questions

Should I change the store because of one Shopify SEO check result?

Not from one pass. Use it to choose what to inspect. Confirm the change in the theme editor, the ad account, or Shopify Analytics before you publish it.

What if the result and my analytics disagree?

Trust the measured behavior for the business decision, and use the tool to explain the page. A public checklist cannot see your sessions, your cost, or your repeat rate.