Two checks that answer it. Both run in your browser — nothing is uploaded, no account, no email.
Prefer one command? Same checks, run against your live store instead of pasted text:
curl -sO https://raw.githubusercontent.com/krisdiallo/ecom-agent/main/aivis.py
python3 aivis.py yourstore.com
Single file, no dependencies, no install, nothing uploaded — it reads your public pages directly. Source.
Ask Perplexity for the best place to buy merino base layers and it answers with REI, Smartwool, Icebreaker, Amazon. Ask about any category and you get the same shape of answer: a handful of names. If yours isn't among them, the sale was decided before a customer ever reached a search box.
Store owners are asking about this constantly and mostly getting sold a dashboard. The underlying mechanics are cheap and checkable, so here they are, free. This tool checks the two things that are binary and verifiable: whether AI search crawlers are allowed to read you at all, and whether your facts survive in raw HTML where they can actually be read.
This one is worth doing first because it's pass/fail and because it's the one people get backwards. There are two completely different kinds of AI crawler, and blocking them has opposite consequences:
| Kind | Tokens | If you block it |
|---|---|---|
| Search / answer | OAI-SearchBot PerplexityBot Claude-SearchBot Claude-User Amzn-SearchBot Amzn-User Applebot | You disappear from AI answers. |
| Training | GPTBot ClaudeBot Google-Extended CCBot Amazonbot Applebot-Extended meta-externalagent | Nothing changes in recommendations. This is a legitimate choice. |
Two that almost every "block AI bots" guide gets wrong: Amazonbot is
Amazon's training crawler, while Amzn-SearchBot is the one that makes you
eligible to appear in Alexa — block the wrong one and you lose Alexa visibility for nothing.
And Applebot-Extended does not crawl at all; Apple states pages disallowing it "can
still be included in search results," so blocking it costs you nothing.
Sources, checked directly: OpenAI states OAI-SearchBot is "used to surface
sites in ChatGPT's search results" while GPTBot is for model training. Perplexity states
PerplexityBot "is not used to crawl content for AI foundation models" — it's the one that
links you in results. Anthropic documents Claude-SearchBot for search quality and
ClaudeBot for training. Google states Google-Extended "does not impact a site's
inclusion in Google Search nor is it used as a ranking signal."
It's at yourstore.com/robots.txt — open it, select all, paste here.
Load a sample that has a problem
Most AI crawlers do not run JavaScript. If your theme renders price, specs or description on the client, the crawler sees an empty shell — and an assistant that can't read your facts cannot repeat them to a buyer.
To get what the crawler gets, you need view-source, not Inspect. Inspect shows the page after JavaScript has run, which is exactly the illusion we're testing for.
In Chrome or Firefox, open a product page and press
Ctrl+U (⌘+⌥+U on Mac). Select all, copy, paste below.
Optionally tell us the product name and price so we can check they survived.
Every number below comes from the dataset in the repo, regenerated from raw scans rather than typed in. The study page is generated from the same file, so the two cannot drift.
| Measured | Result |
|---|---|
| Storefronts probed | 70 |
| robots.txt files read | 62 |
| Product pages analysed | 51 |
| Stores blocking an AI search crawler | 0 of 62 |
| Stores blocking a training crawler | 2 of 62 |
| Pages carrying Product or ProductGroup schema | 45 of 51 (88%) |
| Median concrete measurements per product page | 2 |
| Pages with fewer than five | 40 of 51 |
| Pages with none at all | 14 of 51 |
| Median readable words per product page | 1,508 |
| Stores exposing a live agent-commerce endpoint | 49 of 70 |
| AI crawlers classified by what blocking them costs | 165 |
| Crawlers where no public source establishes that cost | 105 of 165 (64%) |
| Crawlers with a quoted, dated vendor statement | 21 |
Nobody in the sample was accidentally invisible. The fear this category is sold on — that a robots.txt mistake has hidden you from ChatGPT — did not occur once in 62 files. Structured data is mostly fine too, at 88% coverage.
The real gap is specificity. The median product page carries two concrete measurements, and 14 pages carry none. An assistant comparing two products repeats what it can attribute: "holds 120 lb" survives the trip, "premium quality" does not, because it is true of the entire category. So the honest advice is to run this check once, then go write better product pages — not to buy a $79–399/mo dashboard to monitor something that is mostly not broken.
Held to the same standard: this page previously carried zero concrete measurements while telling you that was the most winnable gap on the list. The tool flagged its own site, and this table is the fix.
It cannot tell you whether an assistant will recommend you. Nobody can — the ranking is not public, it varies by wording and location, and a single prompt is not a measurement. Anyone selling you a guaranteed AI ranking is ahead of the evidence.
It also can't see the factor that most likely matters most: whether independent sources describe you consistently. Assistants lean on third-party pages — roundups, review sites, forum threads — and read repeated agreement across unrelated places as consensus. That work looks like PR and reviews, not a subscription.
And the honest counterweight: search engines still handle the overwhelming majority of shopping queries. This is a channel worth being present in, not one to rebuild your store around. What this tool checks is the floor — being readable at all — because that part is free, binary, and genuinely does decide whether the rest is even possible.
Write down ten questions a customer might actually ask an assistant in your category. Run them monthly in ChatGPT and Perplexity. Log two columns: were you mentioned, and was what it said accurate. Vary the wording — one prompt is not a benchmark. That crude trendline is most of what monitoring dashboards charge for.