GrowNexus — Your Growth, Our Strategy
ServicesIndustriesMarketsProcessWorkInsights
GrowNexus — Your Growth, Our Strategy

360° growth partner for Kathmandu, Birgunj and global markets.

  • Facebook
  • Instagram
  • LinkedIn
  • TikTok

Digital Growth

  • Branding & Creative
  • Design Services
  • SEO Optimization
  • Growth Strategy & Consulting
  • Business Automation & AI
  • Training & Certification
  • Social Media Marketing
  • Website & App Development

Activation & BTL

  • Activation & Experiential
  • Event Marketing
  • Retail & Shopper Marketing
  • Direct Marketing
  • Influencer & Community
  • Promotions & Campaigns
  • Trade Marketing (B2B)
  • Out-of-Home (OOH)
  • Print & Collateral
  • Corporate Gifting & Merch
  • PR & Brand Building

Industries

  • Hospitality
  • E-commerce
  • SaaS
  • Professional Services
  • Education
  • Real Estate
  • PR & Communications
  • News & Digital Publishers

Markets

  • Markets hub
  • Nepal
  • United States
  • United Kingdom
  • Australia
  • Europe
  • UAE
  • India

Resources

  • Insights
  • Process
  • Pricing approach
  • Contact

Growth insights, no fluff

Monthly notes on SEO, paid social, and AI-native marketing for teams that ship.

© 2026 GrowNexus. All rights reserved.

  • Privacy
  • Sitemap
  • Terms
  • Cookies
  • Accessibility Statement
Skip to content
GrowNexus — Your Growth, Our Strategy
WorkInsightsAbout
Book a strategy call
AI & Automation
August 13, 2026·8 min read

How to Write an llms.txt: A Guide to v2, With 25 Sites Measured

The llms.txt spec was revised in August 2026. We measured 25 major sites on 13 August: 18 publish a file, but only 2 have implemented the discoverability relations v2 added, and none ship them in HTML. Here is how to write one properly.

A plain-text file rendered as a stack of labelled rows on a dark field, with a bright link relation arrow connecting a web page card to the file, and most surrounding page cards showing that connector missing

Article body

On this page
  • First, what it is — and what it is not
  • What version 2 changed
  • What shipped implementations actually look like
  • How to write one
  • The step almost nobody has taken
  • What we have not done
  • What it is worth

On this page

  • First, what it is — and what it is not
  • What version 2 changed
  • What shipped implementations actually look like
  • How to write one
  • The step almost nobody has taken
  • What we have not done
  • What it is worth

The AI search series

One measurement programme, reported in three parts: what the field actually does, what the spec actually says, and what the citation data actually shows.

  1. Answer Engine Optimization: What 13 Measured Websites Actually Do
  2. 2How to Write an llms.txt: A Guide to v2, With 25 Sites MeasuredYou are here
  3. 3What Gets a Business Cited by AI Assistants? 18,151 Sources Compared

The specification for llms.txt changed this month, and almost nobody has noticed.

On 13 August 2026 we fetched /llms.txt from twenty-five SaaS, developer-tooling and website-platform companies — the population most likely to have already shipped one. Eighteen serve a valid file. Two have implemented the one feature version 2 added. In HTML, none have.

This is the practical guide: what the file is, what the new version requires, what shipped implementations actually look like when you measure them, and how to write one that is worth having.

First, what it is — and what it is not

An llms.txt is a markdown file at the root of your site that gives a language model a curated map of it. A title, a short summary, then lists of links with a sentence explaining each. The point is not to hold your content; it is to be small enough to fit in a model's context while telling it exactly where the detail lives.

It was proposed by Jeremy Howard in September 2024. It is not a ranking factor in any search engine, and no assistant has published a commitment to reading one. We said that in our answer engine optimization article and it is still true.

Two things have moved since, and both are worth knowing before you decide:

  • Chrome's Lighthouse now audits sites for one, as part of its agentic-browsing checks.
  • OpenAI, Anthropic and Google all publish one for their own developer documentation.

Neither makes it a ranking signal. A Lighthouse audit is not a search engine, and shipping one for your docs is not a promise to read anyone else's. But "a proposal nobody uses" is no longer an accurate description either, and we would rather update the picture than repeat the version of it that suited us.

What version 2 changed

The v2 proposal landed in August 2026. Four changes matter:

Changev1v2
Finding the fileGuess the root pathStandard link relations: describedby points to it
Markdown version of a pagepage.html.md onlypage.html.md or page.md
Files in subfoldersAllowed, undefinedCovers pages under its path; most specific file wins
The Optional sectionTold tooling what to skipConvention only, no mechanical meaning

The first one is the headline. Under v1, an agent holding one of your URLs had no way to discover the llms.txt that describes it short of guessing at the root. v2 answers that with two relations you can set in HTML or as an HTTP response header:

  • rel="describedby" — points to the llms.txt covering this page
  • rel="alternate" with type text/markdown — points to this page's markdown version

The header form is the more useful of the two, because it also works on responses that have no HTML head to put a tag in: your sitemap, your feed, the llms files themselves.

What shipped implementations actually look like

Everyone writes this guide from the specification. We wanted to know what people who have already done it actually did, so we measured. Twenty-five hosts, one unauthenticated request each, 13 August 2026.

Read the percentages as a ceiling, not an average. The sample deliberately over-selects companies likely to have adopted early. It is not a survey of the web.

Measured on 13 August 2026Result
Serve a valid /llms.txt18 of 25
Also serve /llms-full.txt9 of 18
Open with an H1 on the first line17 of 18
Include the summary blockquote13 of 18
Both, i.e. the shape the spec describes12 of 18
Send rel="describedby" as a response header2 of 18
Ship rel="describedby" in HTML0 of 18
Serve a working markdown version of the homepage4 of 18

Bar chart of the table above: how the eighteen sites that serve an llms.txt actually wrote it, including the two v2 relations almost none have implemented. Every value is in the table.

The seven with no file include two SEO platforms and one documentation company whose own product generates these files automatically. Adoption is not where the noise level suggests.

There is no house style yet

File sizes ran from 2,088 bytes to 210,736 — a hundredfold spread between companies solving the same problem. The median was 16,299 bytes. The largest carried 1,535 links, which is not a map; it is the thing a map is supposed to save you from reading.

The failure mode is prose without links

One platform's file has an H1, three lines of summary and zero markdown links. It reads well and it is useless: an agent that fetches it learns some adjectives and has nowhere to go next. The links are the file. Everything else is framing.

Businesses and documentation sites write completely different files

Developer-facing files are indexes — hundreds of links, almost no prose. Business-facing ones are marketing copy; one opens with sixty words of platform positioning and proof statistics before a single link.

If you are a business rather than a docs site, you will instinctively write the second kind. The second kind is where the quality is worst. Write the summary a buyer would recognise, then spend the rest of the file on links.

How to write one

The structure is fixed and short:

  1. An H1 with your name. The only required element.
  2. A blockquote summary — one paragraph a model can quote to describe you. Say what you do, where, and for whom. This is the line that gets repeated back, so write it like it will be.
  3. Optional prose for anything a model needs in order to interpret the rest.
  4. H2 sections holding lists of links, each entry a markdown link followed by a colon and one sentence.

Our own file runs to 13,359 bytes across 11 sections and 52 linked entries as this publishes — close to the measured median, and a fraction of the largest. It was 13,004 bytes before this article existed; publishing it is what added the difference, without anyone editing the file. The sections are: core pages, services, industries, markets, selected work, recent insights, engagement model, key queries answered, entity information, machine-readable resources, attribution.

Three of those are worth stealing:

  • Engagement model. How buying from you works. Ours says engagements are custom-scoped after a discovery call, with no public rate card and a three-month initial term. If you do not answer that, a model will infer an answer.
  • Entity information. Company, type, headquarters, area served, services, contact, verified profiles. Flat facts, no adjectives. This is the section that stops an assistant guessing.
  • Selected work. We shipped ours without one. An assistant asked who has this agency actually built for had no way to answer from the file written to answer exactly that. Fixed this week.

Generate it, do not maintain it

A hand-written llms.txt is correct on the day you write it and drifts every day after. Ours is built by a route that reads the same service, market and article data the website renders from, so a new article appears in it without anyone remembering. The section structure is code; the contents are generated. That distinction is worth being precise about — it is not magic, it is just a refusal to keep the same list in two places.

The step almost nobody has taken

Two of eighteen send the describedby header. Zero ship it in HTML. The spec is two weeks old, so this is a statement about timing, not competence — and it is a window that closes.

In HTML, one tag in the head:

<link rel="describedby" type="text/plain" href="/llms.txt">

As a response header, which also covers your sitemap and feed:

Link: </llms.txt>; rel="describedby"; type="text/plain"

We shipped both to this site before publishing this article, because writing a guide to a feature we had not implemented is the exact thing we spend our time telling clients not to do.

One warning for anyone auditing this. Two of the sites we measured return HTTP 200 for a markdown version of their homepage and serve an HTML document at that URL. A status-code check would have scored six working markdown versions where there are four. Read the body, not the code. A third sends a describedby header pointing at something that is not its llms.txt at all.

What we have not done

We have not built markdown versions of our pages. That is the other half of the proposal and it is a real project, not an afternoon — every page needs a clean markdown twin at a predictable URL. Four of eighteen measured sites have done it. We have not, and we will not imply otherwise while recommending it.

What it is worth

The honest case has not changed since we last wrote it. A good llms.txt costs a morning. It is not a ranking factor, the traffic it produces is badly attributable, and anyone showing you a confident revenue chart for it is showing you an estimate.

What the measurement adds is narrower and more useful: the file is now common enough among serious companies to be a normal expectation, and the version everyone is running is already out of date. Doing it properly today costs the same morning it always did and puts you ahead of sixteen of the eighteen companies we measured.

Do the ordering from the previous article first — the robots.txt catch-all, honest structured data, pages that answer questions in plain sentences. This is step four, not step one.


We build these as part of SEO and AI-powered search, and generate them from the site's own data under website and app development. If you want the checks above run against your site — file, structure, v2 relations, markdown versions — that is a fixed-scope audit and the output looks like the tables here, with your name in them.

Book a 30-minute call and we will run it first.

Cite this article

Arman Ahamed (2026). "How to Write an llms.txt: A Guide to v2, With 25 Sites Measured." GrowNexus, August 13, 2026. https://grow-nexus.com/insights/llms-txt-guide/

Share on LinkedIn

Written by

Arman Ahamed

Digital Marketing Manager, GrowNexus

Leads growth strategy and AI-native marketing programs for Nepal and global clients. Writes about what ships, not what slides.

Who this is for

  • SaaS marketing
  • PR & Communications marketing

Keep reading

Related insights

More from the same topic, selected by category overlap.

AI & Automation
Aug 22, 2026/8 min read

How to Format a Press Release So AI Assistants Cite It

One checkable fact, a named human, real questions, and the right schema. What actually makes a release extractable in 2026 — including the FAQ markup change most advice has not caught up with.

AI & Automation
Aug 22, 2026/10 min read

How to Measure AI Citations from PR When Your Analytics Show Nothing

Assistant referrals look like a rounding error while page-one buying questions earn no clicks. Four measurement methods, what each one misses, and the three report splits that change what you work on next.

AI & Automation
Aug 13, 2026/12 min read

What Gets a Business Cited by AI Assistants? 18,151 Sources Compared

We re-analysed 18,151 cited pages across ChatGPT, Google and Perplexity. Relevance, structure and evidence were associated with deeper use, but they are not magic ranking factors.

Strategy notes, no fluff

One email when we publish something worth your time. Unsubscribe anytime.