AI engines are answering buying questions and citing specific stores. Here’s how to be the store they cite instead of the one they skip.
When someone types “best eco-friendly yoga mats under $80” into ChatGPT or Perplexity, the engine doesn’t show ten blue links. It picks two or three stores and tells the shopper why those stores. If your Shopify store isn’t one of them, that buyer is gone — and you had no idea the question was even asked.
This is the core problem AEO (Answer Engine Optimisation) solves. It’s not about gaming algorithms. It’s about making your store legible to machines that are increasingly the first stop for purchasing decisions. The good news: most Shopify stores have not done this work yet, which means the competitive gap is real and closable.
Below are the concrete steps, in priority order.
llms.txt File to Your StoreThe llms.txt specification was proposed in 2024 and has been adopted by a growing number of sites that want to give AI crawlers structured guidance. Think of it as robots.txt for LLMs: a plain-text file at the root of your domain that tells AI systems which pages matter, what each section covers, and which content is authoritative.
For a Shopify store, a minimal but useful llms.txt looks like this:
# llms.txt # Site: yourdomain.com # Purpose: Hints for AI crawlers about content priority ## About - /pages/about: Who we are, founding story, brand values ## Products - /collections/all: Full product catalogue - /collections/[your-best-category]: Primary product category, best reviewed - /products/[your-hero-product]: Flagship product, most complete data ## Policies & Help - /pages/faq: Frequently asked questions including shipping, returns, sizing - /policies/refund-policy: Full return and refund policy - /policies/shipping-policy: Shipping times, carriers, international info ## Contact - /pages/contact: Customer service contact options
Shopify does not expose a direct root file route without code, so you have two practical options: (1) use a custom app to serve the file at /llms.txt, or (2) add it as a page served via a URL redirect in Shopify’s Online Store > Navigation > URL Redirects, pointing /llms.txt to a raw-text hosted file (Cloudflare R2, GitHub raw, or your CDN). The second approach is simpler for most merchants.
llms.txt file tells it where to focus. Without it, the crawler has to infer priority from link structure and may deprioritise your most important product pages in favour of navigation boilerplate.
Shopify emits Product schema JSON-LD on product pages by default. The problem is that default themes often omit the fields AI engines rely on most to confidently recommend a product. Here are the fields most commonly missing:
| Schema Field | Shopify Default | AEO Impact |
|---|---|---|
offers.availability |
Often missing or hardcoded | High — AI engines won’t recommend out-of-stock products but need this to know |
offers.priceCurrency |
Sometimes omitted | Medium — required for multi-currency trust |
aggregateRating |
Only if review app adds it | High — AI engines use review signals heavily for recommendations |
brand |
Often missing | Medium — helps AI attribute the product to your brand entity |
description |
Present but often truncated | High — AI engines extract this for answers; it needs to be complete |
image |
Usually present | Low for citations but required for rich display |
To fix this, edit your theme’s product.json or the relevant section schema in your Liquid templates. A complete Product schema block for Shopify looks like:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "{{ product.title | escape }}",
"description": "{{ product.description | strip_html | escape }}",
"sku": "{{ product.selected_or_first_available_variant.sku }}",
"brand": {
"@type": "Brand",
"name": "{{ shop.name | escape }}"
},
"image": "https:{{ product.featured_image | img_url: '1200x' }}",
"url": "{{ shop.url }}{{ product.url }}",
"offers": {
"@type": "Offer",
"url": "{{ shop.url }}{{ product.url }}",
"priceCurrency": "{{ cart.currency.iso_code }}",
"price": "{{ product.selected_or_first_available_variant.price | money_without_currency }}",
"availability": "{% if product.available %}https://schema.org/InStock{% else %}https://schema.org/OutOfStock{% endif %}",
"seller": {
"@type": "Organization",
"name": "{{ shop.name | escape }}"
}
}
{% if product.metafields.reviews.rating %}
,"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "{{ product.metafields.reviews.rating.value }}",
"reviewCount": "{{ product.metafields.reviews.rating_count }}"
}
{% endif %}
}
If you’re using a review app like Judge.me, Loox, or Okendo, check whether it’s adding aggregateRating automatically — most do, but verify with Google’s Rich Results Test before assuming.
AI engines that surface shopping recommendations (ChatGPT Shopping, Perplexity Shopping, Google SGE) draw from product feeds as well as crawled pages. A Shopify store with an incomplete or stale Google Merchant Center feed is invisible in these surfaces.
The most common feed gaps that cause AI engines to skip your products:
google_product_category, but it often picks a generic category. Review and correct this for your top products.This is the highest-leverage AEO action for most Shopify stores, and the one most overlooked.
When someone asks ChatGPT “does [brand] offer free returns?” or “how long does [brand] take to ship?” the engine looks for a page on your site that directly answers that question in plain language. If it finds one, it cites you. If it doesn’t find one, it either says it doesn’t know or cites a competitor who does have the answer.
Concrete FAQ content to add to your Shopify store:
/pages/faq) with 15–30 questions that match actual buyer language. Pull these from your support tickets — the questions customers actually type into your chat or email are exactly the questions AI engines receive.FAQPage schema, helps AI engines surface your product in response to specific questions about it.Crucially, mark all FAQ content with FAQPage JSON-LD schema. Without it, AI engines may still find the content, but structured markup makes it unambiguous. Here is a minimal FAQ schema block:
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Do you offer free returns?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. We accept returns within 30 days of delivery, no questions asked. We cover return shipping for orders over $50."
}
},
{
"@type": "Question",
"name": "How long does shipping take?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Standard shipping takes 3-5 business days within the US. Express 2-day shipping is available at checkout."
}
}
]
}
AI language models work with named entities — they know about brands, products, and companies that appear consistently across the web. A Shopify store with no presence beyond its own domain is harder for an AI to recommend confidently because it has limited corroborating evidence that the store is legitimate and what it claims to be.
Steps to build entity recognition:
@type: Organization with name, url, logo, sameAs (pointing to your social profiles), and contactPoint. The sameAs array is particularly important — it connects your website to your presence elsewhere on the web.The final step is verification. You cannot improve what you cannot measure, and right now most Shopify merchants have no idea whether AI engines are sending them traffic or skipping them entirely.
The manual approach: open ChatGPT (or Perplexity, or Claude with web search enabled) and run 5–10 queries that a real customer in your niche would ask. Examples:
Check which sources the AI cites. Note whether your domain appears, and if not, which competitors do.
For a structured audit of your Shopify store’s AEO signals — schema completeness, feed hygiene, FAQ coverage, and entity signals — use the free Hatchloop AEO Check tool. It runs the checks above against your store URL and surfaces the gaps by priority.
If you can only do two things this week:
If you have more time, do llms.txt, entity schema, and feed hygiene. Then verify with the AEO Check tool and track your progress monthly.
Traditional SEO was about ranking for queries. AEO is about being the answer. The shift matters because when ChatGPT recommends three stores and yours is not among them, the user rarely asks a follow-up. They just click one of the three stores that was mentioned.
The stores that win in AI-mediated discovery will be the ones with the most complete, most accurate, and most machine-legible data. That is not a function of budget — it is a function of attention. Most Shopify stores have not done this work. The window to get ahead is open now.
If you are building this for the first time and want a shortcut to what’s actually broken on your store right now, start with the free AEO audit at hatchloop.dev/tools/aeo-check/. If you want a more hands-on setup with someone who has done this for Shopify stores specifically, the founding support programme is the place to start.
SEO optimises for search engine ranking pages — getting into the top 10 blue links on Google. AEO optimises for answer engines — getting your store cited directly in AI-generated answers on ChatGPT, Perplexity, Claude, and similar systems. The signals overlap (authoritative content, schema markup, technical hygiene) but AEO places much heavier weight on structured data completeness, direct question-and-answer content, and entity recognition.
They serve different purposes. Your XML sitemap tells search-engine crawlers which URLs exist and when they were last updated. llms.txt tells AI systems which pages are most important and what each section covers. They are complementary, not substitutes. A sitemap alone does not give an AI crawler the priority signals that llms.txt provides.
Perplexity is currently the most aggressive web crawler of the major AI answer engines and the most likely to actively index your store and cite it in shopping answers. ChatGPT’s Shopping mode draws from Bing’s index. Claude with web search draws from multiple sources. Optimising for Perplexity and Bing (via Google Merchant Center) covers most of the surface area.
No. The foundations are the same: fast pages, correct technical implementation, quality content, and backlinks. AEO layers additional signals on top: schema completeness, llms.txt, FAQ structure, and entity consistency. Stores with strong traditional SEO have a head start on AEO, but there are specific gaps to fill.
Free AEO audit for your Shopify store: hatchloop.dev/tools/aeo-check/ — check your schema, FAQ coverage, and AI-visibility signals in one pass.
Want hands-on help implementing these changes? Hatchloop’s founding support programme works directly with early-stage Shopify merchants.