An llms.txt file is a plain markdown file at the root of your site, at yourdomain.com/llms.txt, that tells AI tools what the site is and links to its most useful pages. For an ecommerce store it takes half an hour to write, and on Shopify or WordPress with Yoast it can be generated for you. It’s worth having. It’s also the smallest of the things that decide whether AI assistants recommend your products, and Google says plainly it doesn’t need one at all.
This is a build-along: what the format is, a worked example for a store, how to add it on each platform, how to check it, and where it fits among the jobs that actually move AI visibility.
What llms.txt is
The format was proposed by Jeremy Howard on 3 September 2024, and the specification site has been updated since. Its purpose is to give AI tools a short, clean summary and a list of links to read, instead of making them work through a site’s full HTML.
The format
The file is markdown. The specification makes only one part required: an H1 with the name of the site. After that it recommends a blockquote with a short summary, optional paragraphs of detail, and any number of sections under H2 headings, each a list of links with a short note. A section called Optional, by convention, holds secondary links a tool can skip.
| H1 heading | Yes, the only required part | The name of the site |
| Blockquote | Recommended | A one or two sentence summary |
| Paragraphs | Optional | Anything a tool should know before reading on |
| H2 sections | Optional | Lists of links, each with a short note |
| Optional section | By convention | Secondary links that can be skipped |
Its companion files
The specification also suggests offering markdown versions of important pages, at the same address with .md added, and an llms-full.txt with the full text in one file. For most stores, the short llms.txt is enough.
Who uses it
The specification site notes that OpenAI, Anthropic and Google publish llms.txt files for their own developer documentation, and says Chrome’s Lighthouse checks sites for it. Publishing a file for your own docs isn’t the same as your search crawler relying on other people’s. None of the major assistants has said its shopping or search results depend on llms.txt.
A worked example for a store
Here’s a complete llms.txt for an example outdoor clothing shop. Swap in your own name, summary and pages; the shape stays the same.
# Harbour Outdoor
> Harbour Outdoor sells waterproof clothing and camping kit for UK walkers,
> with free UK delivery over £50 and 30-day returns.
We design our own jackets and trousers and stock a small range of
tents and stoves from other brands.
## Shop
- [Waterproof jackets](https://example.com/collections/jackets): men's and women's, sizes XS to XXL
- [Walking trousers](https://example.com/collections/trousers): waterproof and softshell
- [Tents](https://example.com/collections/tents): one to four person
## Help
- [Delivery](https://example.com/pages/delivery): UK and Europe, costs and times
- [Returns](https://example.com/pages/returns): 30 days, how to send items back
- [Size guide](https://example.com/pages/size-guide): body measurements by size
## Optional
- [About us](https://example.com/pages/about): who we are and where we make thingsThe heading and summary
The H1 is the shop’s name. The blockquote says what it sells, to whom, and the two facts shoppers ask about most, delivery and returns. Keep it to what’s true all year: a summary that mentions a sale will be wrong in a month.
The sections
Shop links to the main collections, with a note on what each contains. Help links to delivery, returns and sizing, because those are the questions an assistant is most likely to be asked about a store. Optional holds pages a tool can skip.
What to leave out
Individual product pages don’t belong here: there are too many, they change, and your sitemap and product feed already list them. The basket, checkout, account pages and search results don’t belong either. The file is a map to the pages that explain the business, not an index of everything.
Keep it honest
Everything in it should match the pages it links to. An llms.txt that promises next-day delivery when the delivery page says three to five days is a good way to have an assistant repeat the wrong promise to a customer.
Adding it on each platform
The file has to be served at the root of your domain, as plain text. How you get it there depends on the platform.
Shopify
Shopify lets a theme customise the files AI agents read. Its guide to agentic storefronts lists three Liquid templates you can add: agents.md.liquid, llms.txt.liquid and llms-full.txt.liquid. Adding llms.txt.liquid to the theme and writing the file in it serves your own version, and because it’s Liquid, it can pull in collection names and links rather than hard-coding them.
WooCommerce and WordPress
Yoast SEO can generate the file. Its help page says enabling the feature creates llms.txt in the site root and updates it weekly, and there’s a manual mode to choose exactly which pages it lists. Without Yoast, upload a text file named llms.txt to the site’s root folder.
Magento and custom builds
Put a static llms.txt file in the web root, the same folder that serves robots.txt, and check it loads at yourdomain.com/llms.txt. On a custom build, it can be generated from the same data that builds the sitemap, so it never drifts from the real pages.
Check it after deploying
Open yourdomain.com/llms.txt in a browser. It should show as plain text, not a store page or a 404, and every link in it should load. Watch for a redirect to the home page, which is what some platforms do with an address they don’t recognise.
Checking it
There’s no official validator, but the specification is short enough to check by hand, and a few checks catch nearly every problem.
- One H1. The file starts with a single heading: the site’s name.
- Real links. Every link is a full address and loads a page, not a redirect or an error.
- Short notes. Each link has a few words saying what’s there.
- Plain text. The server sends it as text, not as HTML wrapped in the theme.
- True today. Delivery, returns and ranges match what the pages say now.
The AI visibility checker on this site looks for the file as one of its sixteen checks, alongside the ones that matter more: whether AI crawlers are allowed in, whether the content loads without JavaScript, and whether the structured data parses.
Where it fits
The honest summary is that llms.txt is cheap, harmless and a small signal. Here’s where it sits among the things that decide whether AI assistants recommend a store.
What Google says
Google’s guidance on AI features is direct: “You don’t need to create new machine readable files, AI text files, or markup to appear in these features.” A page needs to be indexed and eligible for a snippet. For Google’s AI Overviews and AI Mode, llms.txt changes nothing.
What matters more
For ChatGPT, Perplexity and the rest: the search crawlers allowed in robots.txt, product details in the page’s HTML, structured data that parses, and product data complete enough to answer a shopper’s question. The Shopify walkthrough and what ChatGPT shopping means for your store cover those.
◆ llms.txt, in proportion
Worth it because
- It takes half an hour, or one click on Shopify or with Yoast
- It gives any tool that reads it a clean map of the store
- It forces a useful check that delivery and returns pages are current
- It costs nothing to keep once it’s there
Don’t expect it to
- Get a store into AI answers on its own
- Make up for blocked crawlers or script-loaded content
- Affect Google’s AI Overviews, by Google’s own account
- Replace a product feed or structured data
When to get help
If the file is the only AI work that’s been done on the store, the bigger gains are elsewhere. A health check on AI visibility reads the store the way these tools do and ranks what to fix first.
◆ Glossary
- llms.txt
- A markdown file at the root of a site that summarises it for AI tools and links to its key pages.
- llms-full.txt
- A companion file with the full text of the key pages in one place.
- Markdown
- A plain-text format where # marks a heading and - marks a list item.
- Liquid
- Shopify’s template language, used to build theme files that can pull in store data.
- Web root
- The folder on a server that holds the files served at the top level of a domain, such as robots.txt.
- Structured data
- Code in a page that describes it to machines, such as a product’s price and availability.
◆ Sources



