Your store may be invisible to ChatGPT — 3 things I keep finding

Over the past few weeks I’ve been going through Shopify stores looking specifically at how AI assistants read them, since more shoppers now ask ChatGPT or Perplexity for recommendations before they ever open Google. Three things keep coming up, and all three are free to check yourself.

  1. Test in your customer’s language, not in English.

Most people only ever test in English. If your customers shop in Spanish, German or Arabic, ask the question in that language and you get a completely different list of brands. Open a fresh session, don’t mention your brand name, and ask the way a customer would: “best [category] for [use case] in [country]”. If five brands come back and you’re not one of them, that’s your starting point. Ask twice though — the answer shifts between sessions, so treat it as a signal, not a verdict.

  1. Check your collection handles for lookalike characters.

This one surprised me. On more than one store I found a Cyrillic “С” where a Latin “C” should be, in collection titles and handles (the URL part, like /collections/creams). They are visually identical. Google indexes them as words that don’t exist in that language, so those collections are effectively invisible in search. It usually comes from copy-pasting supplier feeds or translated spreadsheets. Worth checking every handle by hand — it costs nothing to fix and you don’t need any tool for it.

  1. Supplier descriptions give an AI no reason to pick you.

If your product copy came from your supplier, it’s identical across hundreds of stores. A model answering “where do I buy X” has nothing to distinguish you from anyone else selling the same SKU. Same with titles left in the supplier’s language — and since Shopify generates image alt text from the product title, that carries into image search too.

One honest caveat so nobody expects magic: this moves on an 8–12 week timeline, not days. And whether an AI assistant mentions you depends heavily on how often your brand appears across the wider web — reviews, roundups, other people’s posts — not just on your own pages. What you control is whether your pages say anything specific enough to be worth citing. That’s a necessary condition, not a sufficient one.

Curious whether anyone here has tested their own store this way, and what came back.

Disclosure: I build a tool in this space (Optaru), so weigh that accordingly. Everything above you can check without it.

Hey @optaru ,

Thanks for sharing these observations. I think the multilingual testing point is especially valuable since many merchants only test prompts in English, even though their customers search in other languages.

One thing I’d add is that AI assistants seem to rely on more than just what’s on your Shopify store. Your overall web presence such as reviews, mentions on other websites, FAQs, structured data, and consistent business information provides additional signals that can influence whether your brand is surfaced.

For Shopify merchants, it’s also worth investing in unique product descriptions, clear use case content, FAQ sections, and proper schema markup. These improvements benefit traditional SEO while also making your pages more useful for AI systems that summarize or recommend products.

I also agree with your caveat that this isn’t something to measure over a few days. AI-generated recommendations are constantly evolving, so checking periodically over several weeks is likely to provide a much more accurate picture than relying on a single prompt or session.

If you found my reply helpful, feel free to mark it as the accepted solution so it can help other merchants following this discussion.

Thank You !

@optaru ,
One thing I have noticed is that AI assistants tend to trust pages that answer complete buying questions not just describe the product. Instead of only listing features explain who its for when it’s a good choice and when it might not be the best fit. That kind of content is useful for shoppers and gives AI something meaningful to reference.

also recommend checking whether your important content is actually visible in the page source. If key details like FAQs, shipping information, or specifications only load after JavaScript or are hidden behind interactions some crawlers may not pick them up consistently. Its a simple check that can make a surprising difference.

The Cyrillic lookalike one is a nice catch, I’ve only ever seen that from pasted supplier spreadsheets and it’s almost impossible to spot by eye.

One more I’d add from doing these checks on client stores: bundle, kit and “set” pages are usually the emptiest pages in the whole catalog. They tend to be auto-generated with a title, a price and nothing else, so an assistant has literally nothing to cite about what’s in the set or why you’d buy it over the items separately. If you sell bundles, writing two or three real sentences about what’s included and who it’s for is one of the cheapest wins available.

Agree on your caveat too. We’ve seen the same 8 to 12 week lag, and the stores that get mentioned are almost always the ones that already have third-party coverage. On-page work makes you citable, it doesn’t make you cited.

We do this kind of audit work at Ecom Swift LLC, happy to sanity-check anyone’s handles if they want a second pair of eyes.

if this helped, please mark it a solution

One thing I’ve been noticing is that AI visibility seems to reward consistency across the entire website, not just a few optimized pages.

In my own work, I’ve found that pages with clear intent, original content, and supporting information tend to perform better than pages that simply repeat manufacturer or supplier text. Even small differences like adding practical FAQs, explaining real use cases, or answering follow-up questions can make a page much more useful for both users and AI systems.

I also think many people still treat AI visibility as a separate strategy, when in reality it builds on strong fundamentals: unique content, structured information, technical accessibility, and a recognizable brand footprint across the web.

It will be interesting to see how merchants start measuring AI-driven traffic over the next year, since this is becoming part of the buying journey for many customers.

@Ecom_Swift the bundle point is the sharpest thing in this thread. Bundles are usually the highest-margin pages in the catalog and the emptiest — worst possible combination. Your “citable vs cited” line sums it up better than my original post did.

@rshrivastava63 good one. Quick version: View Page Source, Ctrl+F a sentence you can see on screen. Not there? It may not be getting picked up.

@Steve_TopNewYork the point about checking periodically rather than once is the one I’d stress hardest. A single prompt tells you almost nothing — ask the same question three times across a week before you conclude anything.

@oliviacarter361 agreed it’s not a separate strategy. I split it out because the failure mode differs — with Google you rank low, with an assistant you’re simply absent, and absent shows up in no dashboard you already have.

One nobody’s mentioned: image filenames and alt text inherited from suppliers. I’ve seen product images on English stores still named in Russian transliteration. Shopify pulls alt text from the product title, so a supplier-language title takes your images out of image search too. Free to fix, never checked.

Not marking a solution — it’s a discussion, not a question.

Something I’ve noticed is that merchants often optimize product pages but ignore category pages. If an AI assistant is asked “What’s the best collagen supplement for runners?” or “Best leather backpacks under $200,” the collection page is often a better candidate than an individual product because it provides context and comparison.

I think collection pages are becoming more important for both AI search and traditional SEO when they’re treated as landing pages instead of just product listings.

@SEOLab that’s the sharpest point in the thread, and probably the most ignored one — collection pages don’t feel like content, so nobody writes any.

The Shopify-specific version: the collection description field is empty by default, and on some themes it isn’t rendered at all. So the page ships as a grid of titles and a price range. Nothing there to cite. Two or three sentences on who the collection is for and how to choose between the items usually does more than another 500 words on a single product page.

Worth adding that a lot of smaller stores only really have /collections/all, which can’t be a landing page for anything.

Happy to look at collection handles for anyone who wants to drop a store URL here — I’ll say what I see, nothing more. If you’d rather not post your URL publicly, DM works too.

Great list — one pipeline-level cause worth adding: the supplier image pipeline itself. Most 1688/Alibaba suppliers ship WebP files with Chinese-language filenames, and Shopify auto-generates alt text from the product title. So a store importing directly from suppliers inherits THREE visibility killers at once:

1. Alt text is derived from the title — if the title is supplier-language or generic ("Hot Sale 2026 New Style"), the alt text is equally useless for both image search and AI multimodal parsing. Fixing alt text in the admin, one image at a time, is not feasible at catalog scale.

2. WebP with opaque filenames — AI crawlers and shopping agents handle WebP inconsistently, and a filename like "IMG_20260801_0930.webp" carries zero semantic signal. Converting to standard JPG with descriptive filenames (product-handle + variant) measurably improves image-index visibility.

3. Variant-image mapping — when one product has 4-8 variant images, AI systems can't tell which image belongs to which variant unless the underlying data is structured (variant row -> image row). Losing that mapping at import time means agents can't answer "does this come in red?" — and the product drops out of comparison answers.

The fix that scales: normalize the pipeline at import time, not in the admin. A local browser tool like EasyCatch (client-side Chrome extension) transpiles supplier WebP to high-res JPG in your browser via a Local Canvas Transpiler, regenerates clean alt-able filenames, and emits a Matrixify-compliant ZIP with variant-image rows pre-mapped. Being 100% Local-First, your supplier URLs and product data never touch a cloud server — which also matters for stores that don't want their sourcing signals public.

All three match what I see. I scan small Shopify stores for a living (I build in this space, so grain of salt) and two more keep showing up that are also free to check.

Theme placeholder text that never got replaced. A surprising number of stores still open their about page with “At Store Name, we are dedicated…” straight from the theme demo. A shopper skims right past it. A machine reading that page never actually learns the store’s name, so there is nothing to cite. Two minute check.

The default agent instructions file. Since Shopify rolled out llms.txt platform wide, every store technically has one, but the default only tells assistants how to transact. It says nothing about what you sell or why anyone should buy it from you. Most merchants I talk to do not know the file exists, let alone that it is the first thing an agent fetches.

And I will second the bundle point above. In my scans the bundle and gift set pages are reliably the thinnest pages in the whole catalog, usually just a list of what is in the box.

Hi @optaru,

The collection handle point carries over to Google too. A Cyrillic С in the URL means you potentially have two different pages that look identical in the browser but aren’t, and Search Console will list both separately, each with thin signals. It also breaks internal links if half your site references one version and half the other. Worth running your handles through a Unicode checker if any inventory came from supplier spreadsheets.

On the supplier description issue: Merchant Center catches this in a different way. If your feed copy matches the supplier’s version and another merchant syncing the same feed submits the same SKU, the “value on landing page” check starts flagging inconsistencies. Not always a hard disapproval, but it degrades individual product performance in Shopping.

The alt text thing extends to structured data. Since Shopify generates alt text from the product title by default, any theme or app that also outputs a JSON-LD product block will end up with an image property carrying a supplier-language string. Rich Results Test won’t flag it as a hard error, but it muddies the signal.

One thing I’d add to your list: duplicate JSON-LD blocks. A lot of themes output a native product schema, and SEO apps inject a second one on top. When those two blocks conflict on price or availability, Google filters the product out of rich results entirely. Quick check: view-source on any product page where an SEO app is active alongside the theme’s own schema.

@Maxime_StoreCanary the Search Console angle hadn’t occurred to me, and it’s worse than what I described — two URLs that render identically in the browser is exactly the kind of thing nobody finds by reading a report. Duplicate JSON-LD is a good catch too.

Since a couple of people asked how common the Cyrillic thing actually is, I checked a 548-product store this week. Fourteen instances. Six products, and three of them were top-level collection handles: crema-facial, cremas-hidratantes, cremas-para-los-ojos. Those are the store’s main category pages, and they’d been live for months.

@Nick_Claridex the placeholder text one is brutal precisely because it’s invisible to the owner. They’ve read their own about page a hundred times and stopped seeing the words. The llms.txt point is new to me — easy enough for anyone reading to check at yourstore.com/llms.txt.

@Shopify_CSV_Helper one small correction on the WebP part: Shopify’s CDN serves WebP to supporting browsers regardless of what you upload, so converting to JPG before import doesn’t change what a crawler receives. The filename and variant-mapping points stand.

Still happy to check handles for anyone who posts a store URL — takes a minute and I’ll just say what’s there.

Hey, @optaru
Hope you are doing great!
The multilingual AI testing point is really interesting. I also agree that unique, specific product content matters much more than simply adding keywords. Testing from a fresh session seems like a good way to get a more realistic picture of how your store is being discovered.

@optaru — Great technical nuance! You’re completely right about Shopify CDN auto-serving WebP at render time.

The pre-conversion from supplier WebP to JPG isn’t for the storefront renderer — it’s for Shopify’s background CSV ingestion worker. Raw supplier WebP links (especially from Asian CDNs like 1688/Alibaba with dynamic parameters) frequently fail HTTP handshakes during bulk CSV imports, causing quiet image drops. Transpiling to static JPG binaries locally before import ensures 100% ingestion reliability before the CDN takes over!

That is exactly it. The words stop being information to the person who wrote them. I have started suggesting merchants read their about page out loud once a year. The placeholder jumps out the moment it is spoken.

One note on the llms.txt check, since people will now go look at theirs: most stores that check will find a file and assume they are covered. Since May, every Shopify store serves a default one. The tell is what it talks about. If it explains how to transact and never mentions a single product you actually sell, that is the platform default, not yours. A custom file reads like a guide to your catalog.

The handle checking offer is generous, by the way. This thread turned into the useful kind, everyone leaves with homework.

@Custom-Cursor thanks for reading it.

The language part caught me off guard, honestly. I assumed it was just translation. It isn’t. Ask in Spanish and the model pulls from Spanish reviews and Spanish roundups, so you can be the obvious answer in English and basically not exist in the market you actually sell to.

Quick way to check the character thing with no tool: open your admin, search your collections, and type the name by hand. Don’t paste it. If nothing comes up, that letter isn’t the letter you think it is. I found 14 like that in one store. Three of them were main categories.

@Shopify_CSV_Helper I’d put the blame somewhere else, though I could be wrong. I’ve never had the format itself break an import. What breaks them for me is dynamic URL parameters, hotlink protection on the supplier’s CDN, and links that go dead halfway through the job. Host the images somewhere stable and most of that disappears.

The thing that quietly goes missing in these imports is the alt text column. Supplier files basically never include it. Nobody notices, because the import itself works fine. I went through a store last week with 2,570 images. Not one of them had alt text.

@Nick_Claridex the read-it-out-loud thing is good. Works on product descriptions too. Read the first two sentences aloud and you know within about five seconds whether you’re saying anything.

On llms.txt, one thing people are going to hit now that they’re checking: /llms.txt and /llms-full.txt both fall back to /agents.md unless you add the template files yourself. So plenty of people will open theirs, see a real file sitting there, and assume someone wrote it. Easiest tell is the bottom. The default ends with a Shopify line pointing at Start your online store today. Start selling tomorrow. - Shopify . Seven million stores quietly telling every AI that reads them where to go open a store.

If you do want your own it’s a llms.txt.liquid template in the theme editor, under Templates. I’d go slow with it though. A great file sitting on top of supplier descriptions doesn’t buy you much. The file points at the pages. The pages still have to say something.

If anyone wants their collection handles checked, drop the URL here and I’ll go through them. If I find something ugly I’ll send it to you privately rather than post it, no one needs their store picked apart in public.

@optaru — You hit on a massive blind spot that most merchants never notice: 2,500 product photos importing with zero Alt text!

Supplier catalog feeds (especially from Asian manufacturers like 1688/Alibaba) completely omit Alt text columns. When merchants run bulk CSV imports, Shopify imports the images successfully, but every single photo gets published to the CDN with a blank Alt tag — completely severing the image indexing path for ChatGPT and Google Vision models.

That exact 2,500-photo Alt text gap is why pre-import catalog normalization is so critical. In spreadsheets, generating structured Alt text (e.g., combining Title + Option1 Value into the ‘Image Alt Text’ column) before running the import ensures that every variant image lands on Shopify’s CDN with indexable SEO metadata from day one.

Great observation on that 2,570-photo store audit!