First, the reassuring part: it is almost never because your product is worse. In scan after scan, brands with positive sentiment, loyal customers, and genuinely good products still get zero citations on the questions that matter. The models aren’t judging your product. They’re judging whether they can confidently cite you when a shopper describes a need without naming a brand.
That distinction — being named versus being cite-able — is the whole game, and it splits cleanly in the data. Most brands we scan are cited on the prompts that already contain their name (“is [brand] good for X”) and invisible on the prompts that don’t (“best X for Y”). The first kind is brand recall. The second kind is where new customers are won, and it’s the kind your competitor is beating you on.
Here are the five reasons that decide it. Each is drawn from real scans, and each is fixable.
1. Your competitor has structured data and you don’t
Schema markup (Product, Offer, FAQ, Review) is how a language model reliably reads your price, contents, and rating. Without it, the model is guessing from raw page text. On price-bounded prompts this is decisive: in one scan, a gift-set brand had the highest mention rate in its category yet scored zero on “best grooming gift set under $75” — the model couldn’t read its prices, so it couldn’t match the “under $75” filter. The competitor that won that prompt had Product and Offer schema. Adjacent finding: the discovery winner used structured data effectively; the loser had none detected.
2. Reviews — how many, and where they live
Models weight brands with deep, visible review volume, and they weight reviews that live where the model can see them (product pages, Google, third-party retailers) more than reviews locked inside an app widget. In a deodorant scan, the brand winning discovery carried deep, visible review volume and broad third-party retail presence; the brand it beat had neither, and its 25% mention rate turned out to be entirely brand recall — every citation came from prompts that already named it.
3. Content depth on product pages — facts vs adjectives
Models quote specifics and summarize away vague copy. “94% of testers reported reduced redness in 14 days” gets cited verbatim; “deeply nourishing” gets paraphrased and loses your attribution. Comparison tables are extracted almost word-for-word. In a beard-care scan, the losing brand’s product copy was adjectives and its blog was a single stale post; the winner’s pages carried facts, ingredient specs, and comparison tables. Same product quality, five times the citations — a content gap, not a product gap.
4. Third-party mentions — Reddit, press, listicles
The model triangulates. When independent sources describe your brand consistently for a specific use case, it becomes confident enough to name you unprompted. Perplexity in particular weights Reddit, review sites, and listicles heavily before it touches your own site. A brand with positive sentiment but no external footprint — no blog, no YouTube, no roundup coverage — gives the model nothing to corroborate, so it stays silent on discovery prompts even when it likes the brand.
5. Feed and product-data quality
Empty collection pages, missing descriptions, no alt text, and thin feeds all signal a low-information site the model can’t confidently cite. One scan surfaced 32 collection pages with no descriptions and 298 product images with no alt text on a single store — each one a page the model can’t read. Clean, complete product data is the unglamorous baseline that makes everything else legible.
The pattern underneath all five
Notice what the five reasons have in common: none is about your product, and all are about whether a machine can read, quote, and corroborate your store. Schema makes you legible. Reviews and third-party mentions make you credible. Facts and comparison tables make you quotable. Complete product data makes you readable at all. Your competitor didn’t out-build you — they out-documented you, in the specific ways a language model rewards.
The good news is that every one of these is a page-level change, most of them shippable in Shopify admin in an afternoon. No repositioning, no ad spend. The hard part isn’t the fix — it’s knowing which prompts you’re losing and to whom, before you spend the afternoon. For the full method, see the GEO for Shopify guide; for worked examples, the teardowns show real brands winning and losing these prompts.
Frequently asked
Why does ChatGPT recommend my competitor instead of me?
Usually one of five reasons: your competitor has structured data (schema) and you don’t, they have more visible reviews in places the model can read, their product pages carry facts and comparison tables the model quotes, they’re mentioned by third-party sources (Reddit, press, listicles), or their product data is simply more complete. It is rarely about product quality — it is about being cite-able.
Is this the same as SEO?
It overlaps but it is not the same. SEO earns you a ranked link. Generative engine optimization (GEO) earns you a mention inside a single AI answer that has already narrowed to a few brands. Schema, reviews, content depth and third-party corroboration help both, but AI search often returns one recommendation, not ten links.
How do I find out which prompts I’m losing?
Run your category’s buying prompts across the AI engines and log which brands get cited, split by whether the prompt named you (brand-aware) or described a need (discovery). The discovery prompts are where new customers are won or lost. Citelix does this automatically and scores your store with a GeoScore — you can start with a free scan.