llms.txt is a small, plain-text file you publish at the root of your domain that tells AI engines — at a glance — what your site is about, what content matters most, and where to look for it. It's the closest analog AI search has to robots.txt or sitemap.xml, except it's purpose-built for large language models rather than crawlers. It was proposed by Jeremy Howard in late 2024 and has gained meaningful traction across publishers and ecommerce sites since.
For Shopify brands, llms.txt does three things: it signals to AI engines that you've thought about LLM consumption of your site, it points them at your highest-value content efficiently, and it gives you a single place to maintain that map without rewriting your full sitemap. This page is the practical guide to implementing it well.
What llms.txt actually is
llms.txt is a Markdown file. Yes — Markdown, not XML, not JSON. The format is designed to be human-readable, machine-parseable, and small enough to fit in an LLM's context window.
A minimal llms.txt for a Shopify store looks like this:
```markdown
One-line description of what your brand sells and who it's for.
Important context, sourcing notes, or background about the brand goes in this section as flowing prose paragraphs. Keep it factual and specific.
Products
- Hero Vitamin C Serum: 15% L-ascorbic acid, sensitive-skin formulation, $48 / 30ml
- Retinol Smoothing Cream: 0.5% retinol, gradual-release, $62 / 30ml
- Niacinamide Booster: 10% niacinamide, pore-refining, $34 / 30ml
Collections
- Sensitive Skin: Curated for reactive and easily-irritated skin
- Anti-Aging: Retinol, peptide, and antioxidant formulations
- Clean Beauty: EWG-verified, free-from formulations
Education
- Ingredient Glossary: Definitions and sourcing for every active ingredient we use
- Routine Builder: How to layer our products
- Skin Concerns Guide: Hyperpigmentation, sensitivity, acne, aging
About
- Our Story: Founded 2018, made in the US, third-party tested
- Lab Standards: Manufacturing, testing, and quality protocols
- Press: Media coverage and editorial mentions
```
That's a full, working llms.txt. It tells an AI engine: this is who we are, here are our top products with their key facts, here's where you can learn more.
The format is deliberately simple because LLMs read Markdown natively and a smaller file is more likely to fit in retrieval context without truncation.
Why llms.txt matters more for Shopify than for other sites
Shopify stores have a specific challenge that publisher sites don't: your most important pages are not your homepage. They're your PDPs, your collection pages, and your educational content. Crawlers that just spider from the homepage often miss the depth of your catalog or treat every PDP as equally important — which means none of them stand out.
llms.txt lets you explicitly tell AI engines: "These 20 products are our hero SKUs. These three collections are our highest-intent buckets. These six education pages are the substantive content we want cited." That kind of editorial hierarchy doesn't exist in sitemap.xml, which treats every URL equally.
The practical effect is that AI engines can find your most-citable content efficiently, without parsing a 5,000-URL sitemap to figure out what matters.
The full file structure
A complete llms.txt for a Shopify mid-market brand typically has 8–12 sections. The recommended order:
```markdown
{One-sentence description}
{Optional context paragraph: what you sell, who you sell it to, what differentiates you. Keep it factual.}
Products
- {Top 15-25 SKUs with one-line descriptions and key specs}
Collections
- {5-10 most-important collections with one-line descriptions}
Education / Guides
- {Highest-authority educational content — buying guides, ingredient encyclopedias, glossaries}
Brand & Story
- {About page, sustainability page, lab standards, press}
Customer experience
- {Returns, shipping, sizing guides, contact}
Reviews and trust
- {Aggregate review pages, certifications page, awards}
Original research / data
- {Reports, surveys, original studies if you publish them — high-priority for citations}
Optional: llms-full.txt
{Link to a longer companion file if you have one (see below)} ```
Keep the file under roughly 25KB. Smaller is better. The point is to be the LLM's quick reference, not a full content dump.
llms-full.txt: the companion file
For brands that want to give AI engines a fuller text version of their highest-value content (without making them crawl every page), there's a companion convention: llms-full.txt. This file contains the full Markdown text of your most-cited content concatenated together — typically your top buying guides, ingredient glossary, founders' story, and a few hero PDP descriptions.
This is optional. Most Shopify stores don't need it. If you publish substantial original content (long-form ingredient research, founder essays, scientific guides), llms-full.txt is worth the effort because it puts your full canonical text within easy reach of any LLM that wants to ground its answer.
How to deploy it on Shopify
Shopify doesn't offer a built-in way to publish a .txt file at the root of your domain. There are two reliable approaches:
Approach 1: Cloudflare Worker or edge function (recommended) If you front your Shopify store with Cloudflare or a CDN, serve /llms.txt from an edge worker. This is the cleanest setup — the file lives outside Shopify, you can update it without touching your theme, and serving it at the apex domain is straightforward.
Approach 2: Shopify page + redirect Create a Shopify page (e.g., /pages/llms-text), render the content as plain text inside a code block, and use a URL redirect rule (under Settings → Navigation → URL redirects) to point /llms.txt to the page. This works but is fragile — Shopify renders pages with HTML wrapping, so the actual file served won't be pure Markdown. For most AI retrievers this is workable; for strict parsers it isn't ideal.
Approach 3: Hydrogen or headless storefront If you run a headless Shopify storefront (Hydrogen, Next.js + Shopify Storefront API, etc.), you can serve /llms.txt directly from your application server as a static file. This is the most controllable setup for headless brands.
Whichever approach you use, the file should:
- Live at
https://yourbrand.com/llms.txt(apex domain, not a subdirectory) - Serve with
Content-Type: text/plain; charset=utf-8 - Return HTTP 200 (no redirect chains)
- Be referenced from your sitemap and your
robots.txt(User-agent: *\nAllow: /llms.txt)
What to put in it (and what not to)
Include:
- Your top 15–25 products with prices, key ingredients/specs, and one-line use cases
- Your highest-priority collection pages
- Your strongest educational content (buying guides, ingredient encyclopedias, comparison tools)
- Your brand story, sustainability page, lab standards
- Links to your aggregate review data and certifications
Exclude:
- Every product in your catalog (use sitemap.xml for that —
llms.txtis an editorial summary, not a complete index) - Marketing copy and brand voice (keep it factual)
- Pages that aren't ready to be cited (in-progress, low-quality, or duplicate)
- Anything you'd be uncomfortable having quoted verbatim by an AI
Maintenance cadence
llms.txt is not a set-and-forget file. The right cadence:
- Weekly: Update product entries if pricing, availability, or formulation changes
- Monthly: Review and refresh the education/guides section. Add any new hero content
- Quarterly: Re-evaluate the curation. Are these still the right 25 products? The right 10 collections?
- Annually: Full audit, including the brand context paragraph at the top
Stale llms.txt files signal to AI engines that the site isn't being maintained — which downgrades your overall trustworthiness. A visibly current file does the opposite.
A 1-hour quick-start
If you want to ship a workable llms.txt today:
- Pick your top 20 products. Highest revenue, highest intent, or highest strategic priority — pick a lens.
- Write one factual line per product. Include the product name, key spec/ingredient, and price/size.
- Pick your top 5 collections. Same treatment.
- List your top 5 educational pages. Buying guides, glossaries, comparison tools.
- Add a brand context paragraph. Two sentences: who you are, what you sell, what makes you specific.
- Save as Markdown. Serve at
/llms.txt.
That's a 60-minute project that meaningfully improves how AI engines parse your site. The polish and the companion llms-full.txt can come later.
RevvUp.ai generates llms.txt automatically from your Shopify catalog and refreshes it nightly — but the format is open and the work is doable by any team with an hour and a list of priorities.
Questions
robots.txt controls crawler access. sitemap.xml is a complete URL index. llms.txt is an editorial summary aimed at LLMs. All three coexist.llms.txt is an inclusion list, not an exclusion mechanism. To exclude content from AI crawlers, use robots.txt directives. To exclude specific content from being trained on, use the respective AI provider's opt-out signals..txt file at the apex domain. You need a Cloudflare Worker, an edge function, a redirect-based workaround, or a headless storefront to serve it properly.llms.txt under 25KB and let llms-full.txt (if you use it) hold the longer content. LLMs have finite context windows; a 200KB llms.txt is more likely to be truncated than read.