A store owner asks a simple question: “Can ChatGPT actually see my store?” The honest answer is often “it depends”, and the reasons are usually boring. A price that only appears after a script runs. A bot that was blocked by accident. A product page that says one thing while its hidden data says another.
The good news is that most of these problems can be checked in a few minutes, without special software. This guide walks through a seven-step audit you can run yourself on any Shopify store, starting with the checks that matter most. For each step you will see what to look at, how to look at it and what to do if it fails.
There are two separate questions. Can AI tools read your store? (technical visibility) and would they recommend it? (recommendation visibility). This audit covers the first question thoroughly, because if the answer is no, nothing else you do matters. Passing it does not guarantee you get recommended, but it removes the most common reason you are invisible.
1. Check that your price and availability are in the raw HTML
When you visit a store in your browser, the page you see is often built in two stages. First the basic page arrives, then scripts run and fill in details like price, stock status and reviews. Search engines such as Google are good at running those scripts. Many other automated tools are not. They fetch the first version of the page and stop.
If your price and availability only appear after the scripts run, those tools see a page with a title and not much else.
How to check.
- Open a product page in your browser. Right-click and choose View page source (not “Inspect”).
- Press Ctrl+F (or Cmd+F) and search for the price, the product name and the word “availability”.
- If you can find them in the source, they are in the raw HTML. If they only appear in “Inspect” and not in “View page source”, they are added by scripts.
If it fails. Ask your developer or theme provider to render price, availability and key product facts on the server, not only with scripts. It is one of the most valuable fixes on this list, because it decides whether some tools can read the page at all.
2. Check which bots are allowed in
Every website has a small file at yourstore.com/robots.txt that tells automated visitors what they may fetch. Open it in your browser and read it. You are looking for lines that block AI-related bots.
It helps to know that each company runs more than one kind of bot, and they do different jobs:
- Training crawlers collect content to help train AI models.
- Search crawlers build the index that an AI search feature draws on.
- User-triggered fetchers visit a page live when a person asks a question about it.
For example, OpenAI documents separate bots for training, search and user requests (GPTBot, OAI-SearchBot and ChatGPT-User). Anthropic and Perplexity follow a similar pattern (ClaudeBot, Claude-SearchBot and Claude-User; PerplexityBot and Perplexity-User). Google uses Googlebot for Search, and a separate control called Google-Extended decides whether your content may be used for its Gemini models. Bot names and roles change over time, so check each company’s current documentation before you decide what to allow.
What to look for. Whether you want to allow training is your own decision. But if you want to appear in AI answers, do not block the search and user-triggered bots by accident.
The part people miss. A block does not have to be in your robots.txt. On Shopify, the default file generally does not block these bots, but a customised robots template, an app or a security or CDN service in front of your store can. Some of those services have AI-crawler settings switched on by default. Check both places, or you can get a false all-clear.
You can see how we handle this on our own site at chyshabo.com/robots.txt.
3. Check that your product schema is present and readable
Schema (also called structured data) is a block of code that describes a page in a format machines understand, for example: this is a product, its name is this, its price is that, it is in stock. It lives in a script of the type application/ld+json.
How to check. On a product page, use View page source again and search for application/ld+json. You want to find a block that describes a Product with an Offer inside it (price, currency and availability). If it is only visible in “Inspect” and not in the page source, it is being added by scripts, which brings you back to step 1.
You can also paste a product page address into Google’s Rich Results Test to see what structured data it finds.
4. Check that schema and visible page tell the same story
A page can pass a schema test and still be misleading. It happens when the price or stock status in the hidden data no longer matches what a shopper sees. Discount apps, currency converters and variant pickers are common causes: the page shows a sale price while the schema still holds the old one.
This matters because tools that compare the two may trust neither. A validator says “valid”, but the facts disagree.
How to check. Pick your top products and every product currently on sale. For each one, compare four things: the price on the page, the price in the schema, the availability on the page and the availability in the schema. Always check in the same country and currency, or you will see false mismatches.
If it fails. Find out which app or theme section writes the schema, and fix it at the source, so a sale price changes the visible price and the structured data together.
5. Check your review data is actually in the schema
Many stores have thousands of genuine reviews and still show none of them to machines. The review app displays stars on the page, but the numbers never reach the structured data. To a tool reading only the schema, a product with a thousand reviews looks the same as one with none.
How to check. In the product schema you found in step 3, look for aggregateRating (the average rating and review count). If your store has reviews on the page but no aggregateRating in the data, your review app or theme is not passing them on.
If it fails. Check the settings of your review app. Most major review apps can output review schema. If yours does, make sure it is switched on and that you do not end up with two apps writing conflicting schema.
6. Put key facts in visible text, not just in code
Structured data is helpful, but it should not be the only place your facts live. When an assistant fetches a page in the moment, it mostly reads the text a visitor would see. If your specifications, ratings or answers exist only inside a hidden block, there may be nothing quotable on the page.
What to do. Mirror your important facts in normal on-page text: what it is made of, dimensions, what is in the box, who it is for, who it is not for, how shipping and returns work. Write them as plain statements, not as adjectives. “Made from 100% organic cotton, 180 gsm” gives a reader (or a machine) something to work with. “Ultra soft and premium” does not.
7. Check that your pages answer real comparison questions
This last step is about content rather than code. People do not ask assistants for “product descriptions”. They ask questions like “what is the best backpack for a weekend trip?” or “which one should I pick for sensitive skin?”
A page that only lists features is hard to use in an answer. A page that says clearly who the product is for, how it differs from similar options and when a different choice would be better is much easier to quote.
What to do. On your top products and collections, add a short, honest section that answers: who is this for, how is it different from the alternatives and what should someone check before buying. Do not pad it with keyword lists. The aim is new, specific information a shopper would actually want.
A simple routine to keep it working
These checks are not one-off. Themes update, apps change and sale prices come and go, so problems creep back. A light routine is enough:
- Monthly: repeat steps 1, 3 and 4 on your top 20 products and everything currently discounted.
- After any theme, app or currency change: re-check a few product pages straight away.
- Every quarter: re-read your robots.txt and any security service settings.
How to measure whether it is working
Measuring AI-driven traffic is still messy. Some visits arrive with a referrer that names the assistant, some arrive as “direct” traffic and some are impossible to tell apart. Instead of hunting for one perfect number, keep three separate views:
- Bot and fetch activity. This tells you about discovery only. A bot visiting your page is not a shopper visiting your page, so never count it as traffic.
- Referrals and a simple survey. Track known assistant referrers and add “ChatGPT / an AI assistant” as an option to a post-purchase “How did you hear about us?” question. It is directional, never exact.
- Test prompts. Ask assistants questions a buyer would ask, both with your brand name and without it, and note what happens. Branded questions usually get easier once your product data is clean. Non-branded ones are the harder fight.
Treat a clean audit as “safe to recommend”, not “will be recommended”.
Final thoughts
Most stores that are invisible to AI tools are not being ignored on purpose. They are hiding behind small technical problems: a script-only price, a forgotten bot block, a review count that never reaches the data. Those are cheap to fix compared with almost anything else you might do to grow.
If you would like this audit done for you, our Shopify technical SEO and store audit services cover it, and our free Store Health Score is a quick way to see where you stand today. To get a picture of how other stores are built, try the Shopify App Detector.



