llms.txt is a text file at the root of your domain that tells language models what
your store is and what content it holds. It doesn't make you citable on its own:
it's a map, not content. Its job is to get you described well and to help models find what
matters. And it's useless if your robots.txt blocks the AI bots — that's the
correct order of priorities.
Summary
- It lives at
yourstore.com/llms.txt, in plain text with Markdown formatting. At the root of the domain, next to robots.txt, never inside the theme folder. - robots.txt grants permission; llms.txt gives context. One controls access and the other summarizes what you are. They don't replace each other, and robots.txt is the one in charge.
- It's a proposed standard, not an official one. Neither OpenAI, Anthropic nor Google has adopted it: do it because it takes twenty minutes, not because it guarantees anything.
- On WooCommerce and PrestaShop you upload it in two minutes; on Shopify you can't. Shopify gives no access to the domain root, so you need an app, a proxy, or you skip it.
- First check the bots can get in. If your robots.txt blocks them, llms.txt is a sign inside a locked shop.
What it actually is
When an AI assistant lands on your store, it finds the same thing a distracted visitor does: menus, templates, cookie banners, breadcrumbs and, somewhere, the content. It has to guess what you sell and what matters. Sometimes it gets it right, and sometimes it describes your electronics store as "a site about shipping policy", because that was the cleanest text it found.
The llms.txt is the answer to that: a short file where you tell it directly. It's a
2024 proposal by Jeremy Howard, and it consists of a Markdown file at the root of
the domain with a summary of the site and links to what really matters.
It's a proposed standard. Neither OpenAI, Anthropic nor Google has officially adopted it, and no one guarantees they'll read it. We recommend it because it takes twenty minutes to do well and because the cost of getting it wrong is zero — not because it's a ranking trick. Anyone selling it to you as "the way to show up in ChatGPT" is spinning you a story.
How it differs from robots.txt
It's the most common confusion, and it's worth clearing up because it changes the order you should work in.
| robots.txt | llms.txt | |
|---|---|---|
| What it does | Grants or denies entry | Explains what you are and what you have |
| For whom | Any crawler | Language models |
| Format | Directives (User-agent, Disallow) | Natural-language Markdown |
| If it's missing | Everyone can enter | The model guesses on its own |
| Priority | This one rules | Only matters if the other lets you through |
That's why the order is: first check access, then write the map. If your
robots.txt blocks GPTBot or PerplexityBot —which happens more than you'd think,
sometimes because of an inherited template—, the llms.txt is a sign inside a locked
shop. You can check it for free with our
AI citability test, which reviews the nine
bots that matter today.
What to put inside when you run a store
This is where the generic guides fall short: almost all of them are written for software documentation or for blogs. An ecommerce store has other things to say.
What to include
- What you sell and to whom, in a sentence that isn't a slogan.
- What sets you apart in a verifiable way: own brands, manufacturing, a different warranty, real specialization.
- Your main categories with their link. Not all forty: the ones that define the business.
- Concrete commercial information: shipping, delivery times, returns, the countries you ship to. It's what an assistant needs to recommend you with confidence.
- Key pages: contact, buying guides, sizing, FAQs.
What to leave out
- The entire catalog. That's what the sitemap is for. This is an executive summary, not a data dump.
- Marketing with no data. "Unbeatable quality" says nothing to a model. "Ships in 24 h nationwide" does.
- Anything you can't back up. If an assistant repeats it and it isn't true, that's your problem.
A template to copy
Replace what's in brackets. This gives you a correct file in ten minutes:
# [Your store name] > [What you sell] for [who]. [A verifiable fact that sets you apart]. > We ship to [countries] in [timeframe]. Online store since [year]. ## What we sell - [Category 1]: [one-line description] — https://yourstore.com/category-1 - [Category 2]: [one-line description] — https://yourstore.com/category-2 - [Category 3]: [one-line description] — https://yourstore.com/category-3 ## What makes us different [Two or three sentences with verifiable facts: specialization, in-house manufacturing, advice, technical service, brand exclusivity.] ## Commercial information - Shipping: [timeframe and cost, countries] - Returns: [window and conditions] - Support: [hours and channel] - Payment: [accepted methods] ## Key pages - Buying guide: https://yourstore.com/guide - FAQ: https://yourstore.com/faq - Blog: https://yourstore.com/blog - Contact: https://yourstore.com/contact ## Contact [contact email]
If you want to see a real one in action, this site's is published at contentmood.blog/llms.txt. We practice what we preach, partly because it would be awkward not to.
If you would rather not start from a blank file, our
llms.txt generator reads your store and fills in
what can be verified from the outside — name, categories with their real URLs, shipping and
returns, platform — and marks everything only you can write with [FILL IN: …]. It
invents nothing, which is exactly the problem with tools that promise the whole file with zero
input from you.
How to upload it, platform by platform
PrestaShop
Upload it by FTP or from your hosting's file manager to the public root, the same
folder where robots.txt lives. Then check it responds at
yourstore.com/llms.txt.
The recurring mistake: putting it inside the theme folder. When you update the template, it disappears. It goes in the root, not the theme.
WooCommerce and WordPress
Same thing: to the root of the installation, by FTP or through the file manager. If you use an SEO plugin that handles virtual files, make sure it isn't intercepting the path and serving a 404 instead.
Shopify
This is where it gets tricky, and it's worth knowing before you waste an afternoon: Shopify gives no access to the domain root. You can't upload a standalone file. You have three ways out:
- An app that serves it for you at the correct path.
- A proxy or your own subdomain that serves the file, if you control the DNS and have someone technical on hand.
- Skip it and reinforce the rest: Shopify's
robots.txtis editable throughrobots.txt.liquid, and product structured data carries more weight than thellms.txtanyway.
The third option is perfectly reasonable. It isn't the part that moves the needle most.
How to check it works
- Open
yourstore.com/llms.txtin an incognito window. You should see plain text, not an error page or your template. - Check it's served as
text/plain. If your server downloads it instead of showing it, review your MIME type configuration. - Verify the links inside work. A map with streets that don't exist is worse than no map.
- And first of all, even if you do it last: check the AI bots can get in.
What to expect from this (and what not to)
Nothing spectacular, and anyone who tells you otherwise is lying. The llms.txt is one
of the four levers of visibility in assistants, and it isn't the heaviest one. The real order of
importance is this:
- That the bots can get in. Without this, there's nothing to do.
- Being in Bing's index, which is where ChatGPT searches. A page Bing doesn't have, ChatGPT can't cite.
- That the content is extractable: direct answer up top, figures with their unit, clear structure.
- Signaling: this is where the
llms.txtcomes in, alongside the sitemap and structured data.
Do it because it's cheap and because it removes an excuse. But if your content says nothing that another forty sites don't already say, no text file is going to fix that.
Frequently asked questions
Does llms.txt make ChatGPT cite me?
Not on its own. It's signaling: it helps you get discovered and described well. It doesn't turn non-citable content into citable content, and it doesn't replace authority.
Do I have to update it often?
When something real changes: new categories, different shipping conditions, a repositioning. Two reviews a year are enough for most stores.
And what about llms-full.txt?
It's the extended variant, meant to dump full documentation. For an ecommerce store it doesn't make much sense: your long content is product pages and articles, and the sitemap already covers that.
Can having it hurt me?
Only if you lie or let it go stale. A llms.txt that promises 24 h shipping when you
take a week is worse than not having one: you're handing wrong ammunition to something that will
repeat it.
Before llms.txt, check whether they can read you
Our free test reviews the nine AI bots that matter and tells you which ones you have blocked. No sign-up, in ten seconds.
Run the free test