llms.txt Examples and a Copy-Ready Template (With a Real File)
See a real, annotated llms.txt file, then copy a fill-in-the-blanks template and validate it. The examples come from the exact file we serve on this site.
TL;DR
An llms.txt file is a plain Markdown map of your site that AI crawlers read: an H1 with your brand name, a blockquote summary of what you do, then H2 sections of links, each with a short description. It lives at your domain root, at yourdomain.com/llms.txt, the same place robots.txt sits. This guide shows a real, annotated example (the exact file we serve on this site), then hands you a copy-ready template you can fill in and a quick way to validate it. A minimal file is about ten lines: title, summary, and one section of described links. A full one adds services, team, case studies, and contact. The format is deliberately simple so any assistant can parse it without guessing, which is the whole point: remove ambiguity about who you are and which pages matter, in language a model reads cleanly.
What a valid llms.txt file looks like
An llms.txt file (a plain-text file AI crawlers read to understand your site) is Markdown, not code. It follows a small, fixed shape, and once you have seen it once you can write your own in an afternoon. If you want the background on why it exists, our explainer on what llms.txt is covers the origin; this post is about the file itself.
Here is the smallest version that still works:
# Acme Co > A one-sentence summary of what Acme does and who it serves. ## About A short paragraph on the company, in plain language a model can quote. ## Services - Services hub: https://acme.com/services — what the page covers, in a few words - Web design: https://acme.com/services/web — one line on this service
That is a valid file. A title, a summary, and labeled sections of links with descriptions.
The anatomy of a valid llms.txt file. Every llms.txt file follows the same shape. It opens with a single H1 that is your brand or site name. Directly under it sits a blockquote (a line starting with >) holding a one-sentence summary of what you do and who you serve, which is the single most important line in the file because assistants lean on it heavily. After that come H2 sections, each grouping related links or a short paragraph, and every link carries a plain-language description of where it points and why it matters. The file lives at your domain root, served as plain text at /llms.txt. There are no other required tags: no dates, no metadata blocks, no schema. The discipline is in the writing, not the syntax. If your summary and descriptions are clear, the file is doing its job.
A real, annotated example
Toy examples only take you so far. Here is the top of the actual file we serve at w2bagency.com/llms.txt, with notes on why each part earns its place.
The header does the heavy lifting:
# W2B Agency > Remote-first, bilingual digital agency specializing in SEO, GEO, AEO, > high-performance web development, and workflow automation. We help > businesses anywhere rank in Google, get cited by AI assistants like > ChatGPT and Perplexity, ship modern websites, and automate manual work.
The H1 names the entity. The blockquote summary packs the disciplines, the outcome, and the named engines into one sentence, so an assistant that reads only this line still knows what we do and can cite us for it.
Then a labeled section points to pages with context, not bare URLs:
## Services - Services hub: https://w2bagency.com/services - Search Dominance: https://w2bagency.com/services/seo-geo-aeo — SEO, GEO, AEO - Web development: https://w2bagency.com/services/web-development — Astro, WordPress
Each line tells the crawler what it will find before it fetches. That description is what lets an assistant match a page to a question without opening it.
Ship an llms.txt that assistants actually cite. A clear file is step one; a cited site is the goal. Our generative engine optimization service ships schema, llms.txt, and citable copy as one system, or you can score your current setup free with our AI Visibility Checker.
A copy-ready llms.txt template
Fill in the blanks below, delete the sections you do not need, and save it as llms.txt at your site root.
# Your Brand Name > One sentence: what you do, who you serve, and the outcome you deliver. ## About Two or three sentences on the company, in plain language a model can quote. ## Services - Services hub: https://yourdomain.com/services — what the hub covers - Service one: https://yourdomain.com/services/one — one line on this service - Service two: https://yourdomain.com/services/two — one line on this service ## Team - Founder Name — role, one line — https://linkedin.com/in/handle ## Contact - Start a project: https://yourdomain.com/contact - Email: hello@yourdomain.com ## Last updated 2026-07-11
A copy-ready llms.txt template, explained. The template above is the minimum viable file for most businesses. The H1 is your exact brand name, spelled the way you want assistants to cite it. The blockquote is the one line worth rewriting three times, because it carries the most weight; state the outcome, not a slogan. The About section gives a model a quotable paragraph, so write it as clean prose, not marketing. Each service line pairs a real URL with a short description of what the page covers, since the description is what an assistant matches against a question. Team and Contact sections ground your entity with names and a way to reach you. Keep the file short and current: a curated map beats an exhaustive dump, and a stale file quietly misinforms every crawler that reads it.
llms.txt for WordPress and custom sites
Where the file goes depends on your stack, but the destination is always the same public path.
On a custom site (Astro, Next, a static build), drop llms.txt into your public or static folder so it is served as plain text at /llms.txt. That is exactly how this site ships its file. On WordPress, you can add it with an SEO plugin that supports llms.txt output, or upload the file to the site root over SFTP if you prefer to hand-maintain it.
Either way, the test is identical. Open yourdomain.com/llms.txt in a browser and confirm it returns plain text, not an HTML page or a 404.
How to validate your llms.txt
A file that loads is not automatically a good file. Run a quick check before you move on.
How to validate your llms.txt. Validate on four fronts. First, location: the file must load at yourdomain.com/llms.txt and return plain text, not HTML or a redirect. Second, structure: one H1, a blockquote summary directly under it, and H2 sections, with no broken Markdown. Third, links: every URL should resolve (no 404s) and carry a short description, because an undescribed link is a wasted line. Fourth, accuracy: the summary and descriptions must match what the pages actually say, since a file that overstates or misdescribes your pages misleads the exact crawlers you were trying to help. Re-check after any site change that adds, removes, or renames a key page. A free llms.txt validator or generator can catch format errors, but only you can confirm the descriptions are true, and truth is the part that matters.
llms.txt is table stakes, not the whole game
A clean llms.txt removes ambiguity for AI crawlers, which is necessary and not sufficient. It tells assistants where to look; it does not, by itself, make your pages worth citing.
The rest of that work is the four-lever loop in our guide on how to do generative engine optimization: quotable passages, schema, crawler access, and citation tracking. llms.txt is one input among those.
If you would rather ship the whole system at once, that is what our generative engine optimization service does. Start by seeing your current file's format spec at llmstxt.org, then write yours from the template above.
Frequently asked questions
-
What does an llms.txt file look like?
It is a Markdown file at your site root. It opens with an H1 that is your site or brand name, then a blockquote with a one-sentence summary of what you do. After that come H2 sections, each holding a short paragraph or a list of links, where every link has a plain-language description of what it points to. The format is deliberately simple so any AI crawler can parse it without guessing. There are no required tags beyond that shape: a title, a summary, and labeled sections of described links. A minimal file can be ten lines; a full one covers services, team, and contact.
-
Where do I put the llms.txt file?
At the root of your domain, reachable at https://yourdomain.com/llms.txt, the same way robots.txt lives at the root. That fixed location is how AI crawlers find it without being told. On most stacks you drop the file into the public or static folder so it is served as plain text at that path. If you also publish an expanded version with full page contents, name it llms-full.txt and place it beside the first. Confirm it loads in a browser at the /llms.txt path and returns plain text, not HTML.
-
What is the difference between llms.txt and llms-full.txt?
llms.txt is the short, curated map: your name, a summary, and labeled links with descriptions, meant to point an AI at your most important pages. llms-full.txt is the expanded version that inlines the actual content of those pages so an assistant can read the full text in one fetch. Think of llms.txt as the table of contents and llms-full.txt as the book. Most sites start with just llms.txt, because it is small, easy to maintain, and enough to guide crawlers. Add llms-full.txt only when you want the full corpus available in a single file.
-
Do I need llms.txt if I already have a sitemap and robots.txt?
They do different jobs, so yes, it complements them. robots.txt tells crawlers what they may access; an XML sitemap lists every URL for discovery; llms.txt gives an AI a curated, described summary of what matters and why, in language a model reads easily. A sitemap is a flat list with no context, and robots.txt grants no understanding at all. llms.txt is the only one of the three that explains your site rather than just exposing it. It does not replace the others; it sits alongside them.
-
Does Google or ChatGPT actually use llms.txt?
Adoption is still uneven and worth stating honestly. The llms.txt standard is young, and no major engine has publicly guaranteed it reads the file for ranking or citation today. What it does reliably is give AI crawlers a clean, unambiguous summary of your site, which removes guesswork and cannot hurt. Shipping it is low-cost insurance: if and when engines lean on it more, you are already covered, and in the meantime it forces you to write a clear, citable description of your own business, which helps every AI surface.
Want the playbook before your competitors do?
We document every technique we apply on engagements. New posts on GEO, AEO, and web performance ship monthly. No fluff, just methods.
More articles
AI Search Updates: What Changed in Q2 2026 and What It Means for You
AI Overviews now hit roughly half of searches and ChatGPT added ads. Here is what changed in AI search this quarter, and the three moves that keep your brand visible and cited.
Read article Search DominanceBest Generative Engine Optimization Tools (2026): A Criteria-First Guide
Choosing generative engine optimization tools? Judge them by one thing: do they measure whether AI assistants cite you. An agency-neutral framework, plus when you don't need a tool yet.
Read article Search DominanceHow to Choose a Generative Engine Optimization (GEO) Agency
A buyer's guide to hiring a GEO agency: what one actually does, five things to verify, the questions to ask, and the red flags that mean it is an SEO agency in disguise.
Read article