Blogs · 13 Aug 2026 · 14 min
llms.txt, /pricing.md, and the files that actually help in 2026
llms.txt is a map, not a ranking factor. Robots rules for GPTBot, PerplexityBot, ClaudeBot, Google-Extended, plus a real agency /pricing.md.

Josip Tomić
Writes the studio notes. Search, agents, and the sites that hold them.

llms.txt is a map. It is not a ranking factor. Google Search does not use it. Write a short Markdown file at
/llms.txt, point it at clean pages such as/pricing.mdand/work, and decide, in robots.txt, whether GPTBot, PerplexityBot, ClaudeBot, and Google-Extended may read you. The HTML page still has to hold the extract.
A lot of decks now end on a slide that says “ship llms.txt.” The slide is cheap. The file, done honestly, is useful. Done as a ranking hack, it is a waste of a Friday.
Jeremy Howard proposed /llms.txt in September 2024 so agents could find a concise path into a site instead of chewing navigation and JavaScript. The spec is still a proposal. Documentation platforms generate one, Chrome Lighthouse audits for one, and the labs publish their own. That is adoption. It is not a ranking signal.
Is llms.txt a ranking factor?
No. Google said so, in public, in the AI features guide last updated 10 July 2026.
“You don’t need to create new machine readable files, AI text files, markup, or Markdown to appear in Google Search (including its generative AI capabilities), as Google Search itself doesn’t use them.” — Google Search Central, Optimizing your website for generative AI features
They go further. Creating and maintaining llms.txt for other systems “will neither harm nor help your site’s visibility or rankings in Google Search, as Google Search ignores them.” Same paragraph: no special schema, no requirement to chunk pages, no need to rewrite copy “for AI.”
Treat llms.txt as a table of contents for agents that choose to open it.
Howard’s own framing matches that. On llmstxt.org, the file is a curated overview. A sitemap lists everything. robots.txt states what may be fetched. llms.txt says, given those two, here is the short path — and here are the Markdown versions worth fetching next. He expected inference more than training. Two years on, that is still how serious implementations use it.
The same page is clear about what the file is not. It is not a well-known URI. It can live at the root or at a path (/docs/llms.txt covers /docs/). The only required element is an H1 with the project name. A blockquote summary is the next useful line. H2 sections hold lists of links, each with an optional note.
If you want to be cited in an answer, write the extract on the HTML page. That work is how to get cited when the buyer never clicks. The file stack is how an agent finds that page without burning tokens on the chrome.
What should go in robots.txt for GPTBot, PerplexityBot, ClaudeBot, and Google-Extended?
Decide the policy before you write the file. robots.txt is the permission. llms.txt is the map. Mixing them up is how teams block the bot they wanted to be read by.
The honest split is training versus search versus a user-triggered fetch. They are not the same bot.
| Token | Operator | Job | robots.txt |
|---|---|---|---|
| GPTBot | OpenAI | Training future foundation models | Honored. Disallow means “do not use this site for training.” |
| OAI-SearchBot | OpenAI | Surface sites in ChatGPT search answers | Honored. Disallow means you drop out of those answers. |
| ChatGPT-User | OpenAI | Fetch a page because a person asked | OpenAI says this is user-initiated; robots.txt may not apply. |
| PerplexityBot | Perplexity | Index pages to surface and link in search | Honored. Not used, they say, for foundation-model training. |
| Perplexity-User | Perplexity | Fetch a page because a person asked | Officially ignores robots.txt, because a user requested the fetch. |
| ClaudeBot | Anthropic | Collect web content that may be used in training | Honored. Disallow signals future material should stay out of training. |
| Claude-SearchBot | Anthropic | Index content to improve search answers | Honored. Disallow reduces search visibility in Claude. |
| Claude-User | Anthropic | Fetch a page because a person asked | Honored, per Anthropic. Disallow blocks user-directed retrieval. |
| Google-Extended | Control use of crawled content for Gemini training and grounding | Honored as a product token. Does not change Google Search ranking or inclusion. |
Sources: OpenAI crawlers, Perplexity crawlers, Anthropic’s crawl FAQ, Google-Extended.
A studio that wants to be named, and is willing to be in the next training run, allows the search bots and the training tokens. A site that wants ChatGPT search but not GPT training allows OAI-SearchBot and disallows GPTBot. Those are independent switches. OpenAI says so. A publisher that wants Search but not Gemini training disallows Google-Extended and leaves Googlebot alone.
What you cannot do with robots.txt: stop a person from pasting your URL into a chat, and you cannot rely on it for ChatGPT-User or Perplexity-User. Those fetches are framed as the user’s agent. If a path must stay private, authenticate it.
A working robots group for a marketing site that wants to be read:
User-agent: GPTBot
Allow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: Claude-User
Allow: /
User-agent: Google-Extended
Allow: /
User-agent: *
Allow: /
Sitemap: https://simplexdigital.agency/sitemap.xmlDo not copy a “block all AI” gist unless that is the policy. Most were written for training scrapes, then pasted onto sites that later complain they are invisible in ChatGPT search. The token you block is the product you leave.
Verify the IPs if you also filter at the WAF. OpenAI, Perplexity, and Anthropic publish JSON ranges. A WAF that challenges every unknown UA will drop the crawler you just allowed.
What does a useful llms.txt look like for an agency?
Small. Curated. Links to Markdown an agent can ingest, not the same HTML it already struggles with.
Howard’s format, applied to this studio:
# Simplex Digital
> An international studio for AI agents, marketing, web design, and automation. One brief. We will tell you which of those the work actually needs.
We design and ship YourGPT agents, n8n workflows, Next.js sites, and Meta/Google campaigns. A chatbot answers. An agent takes action. We do not sell a 45-minute demo as the first step.
## Start here
- [How we engage](https://simplexdigital.agency/pricing.md): Discovery, build, and partner — the shape of the work, not a rate card
- [Services](https://simplexdigital.agency/services.md): Agents, marketing, web, automation
- [Work](https://simplexdigital.agency/work.md): Eternal, Aurelia, Meridian, Vesper — briefs and constraints, no invented metrics
- [Contact](https://simplexdigital.agency/contact.md): Send the current site or a week of tickets. A written note in 24 hours
## Notes worth quoting
- [How to get cited when the buyer never clicks](https://simplexdigital.agency/blog/how-to-get-cited.md)
- [SEO, AEO, and GEO are three jobs](https://simplexdigital.agency/blog/seo-aeo-geo-three-jobs.md)
- [What a marketing website should cost in 2026](https://simplexdigital.agency/blog/what-a-marketing-website-costs.md)
## Optional
- [About the studio](https://simplexdigital.agency/about.md)
- [The Monday number](https://simplexdigital.agency/blog/the-number-on-monday.md)The H1 is the name a buyer would use. The blockquote is the extract. The lists point at .md versions, with a note that tells the agent why to open the link. Test it the way Howard suggests: give an agent only the file, and ask the questions a buyer asks. If it cannot describe how you engage, the file is a sitemap in costume. Curate. Do not list every URL.
What belongs in /pricing.md if you will not publish fake numbers?
A parseable engagement shape. Not a rate we invented for the blog.
We do not put dollar amounts on this site unless they come from a source we can name. What a marketing website should cost is the money conversation. /pricing.md answers a different question: the shapes of the work, what is in each, and what is not.
# How Simplex Digital engages
> Three shapes: discovery, build, and partner. You can buy one. You should not buy a retainer that pretends to be all three.
We reply within 24 hours with a written note. The note is yours whether we work together or not.
## Discovery
A short, paid pass over the work as it is — the site, the ads, the inbox.
You receive a written brief: what a stranger understands in four seconds, what we would measure this week, and what we would turn off today. Discovery is not a workshop deck. It is not a free audit with a bait price.
Bring the current site, the ad accounts, or a week of tickets. If we cannot see the work, we will not price the next step.
## Build
The thing that has to ship. One team and one calendar.
- A marketing or product site in Next.js, designed and engineered here
- Agents on YourGPT — knowledge, tools, and a human handoff
- n8n workflows into the CRM, the help desk, the ads account
- Meta and Google campaigns with the landing page they need
Build is not three vendors and a project manager in the middle. If the site, the campaign, and the agent have to agree, they are specified together.
## Partner
Launch is the start. We review what is working, keep what converts, and stay close while the work is still new.
Partner is a monthly quality pass — ads, agent transcripts, failed workflows — not a Slack channel we forget to open. If there is nothing to review, there is nothing to bill.
## What this file will not do
It will not invent a package price. Rates move with scope, and a number without a brief is a lie the answer engines will happily repeat.
It will not hide the next step. Email hello@simplexdigital.agency with the current site or a week of tickets. We write back with what we would start, and what we would leave.That file does the GEO job without pretending to be a ranking file. It has a short extract, a decision rule, and a refusal. Asked “what does Simplex Digital cost,” a model can answer with the shape, and refuse the fake number we also refused.

Which other files actually help?
A small stack, not a new CMS.
| File | Job | Who reads it |
|---|---|---|
/robots.txt | Permission. Training vs search vs user-fetch | Every documented crawler that honors robots |
/sitemap.xml | Complete list of indexable URLs | Search engines. Too large to be an agent brief |
/llms.txt | Curated map, with notes | Agents that look for it. Ignored by Google Search |
/pricing.md | Engagement shape, in Markdown | Agents, and any person who appends .md |
/services.md | What you sell, without the layout | Same |
/work.md and /work/<slug>.md | Proof that can be quoted | Same |
HTML with rel="alternate" type="text/markdown" | Tells a client where the .md lives | Browsers and agents that honor link relations |
Howard’s v2 spec (modified 10 August 2026) also allows an HTTP Link: header if you do not want to touch every template: Link: </pricing.md>; rel="alternate"; type="text/markdown", </llms.txt>; rel="describedby".
Add Markdown twins for services, work, contact, and the notes that already contain numbers. Do not generate a .md for every tag archive.
Schema stays in its lane. FAQ and Organization markup still help rich results. Google is explicit: structured data is not required for generative AI features, and there is no special schema.org type to add. Keep the JSON-LD you already trust.
If the page is blocked, unindexed, or only exists after a client-side fetch, no file at the root will save it. SEO, AEO, and GEO are still three jobs. This note is the plumbing for the third.
What should you stop doing?
Stop selling llms.txt as an AEO package. Howard never claimed it ranked anything. Google has said they ignore it.
Stop blocking every AI user-agent you saw on a listicle, then asking why ChatGPT does not name you. GPTBot is not OAI-SearchBot. ClaudeBot is not Claude-SearchBot. Google-Extended is not Googlebot.
Stop putting the only honest description of price behind a PDF or a “talk to sales” form. Retrieval cannot quote it. A person who started in a chatbot will not sit through a 45-minute demo to learn you have three engagement shapes.
Stop generating 400 “AI-friendly” pages that restate the homepage. Google’s scaled-content policy still applies, and the GEO paper already showed keyword stuffing loses to a clean paragraph.
The file is a courtesy to agents. The extract is the work. Teams watching traffic fall already know the click is not the unit.
How should a studio ship this in a week?
A build sequence, not a strategy offsite.
- Read the live
robots.txt. Search for GPTBot, OAI-SearchBot, PerplexityBot, ClaudeBot, Claude-SearchBot, Google-Extended. Remove anyDisallow: /you did not mean. - Write
/pricing.mdas the three shapes. No invented dollar figure. A next step a stranger can complete. - Write
/llms.txtwith an H1, a blockquote extract, and a short list of pages you actually want quoted. Point at Markdown, or at HTML you have already made plain. - Add
rel="alternate"(or theLinkheader) on those HTML pages. - Ask ChatGPT, Perplexity, Claude, and Gemini — with only the file as context — “How does Simplex Digital engage?” and “What should I send them first?” Fix whatever they invent.
- Keep the HTML extracts current. The file stack cannot repair a service page that still reads like a slogan.
A marketing site that is fast, crawlable, and written in sentences will do more for citation than a perfect llms.txt on a site that hides the offer. Point agents at the cases on /work.
FAQ
Does llms.txt help you rank in Google or AI Overviews?
No. Google’s AI features guide, updated 10 July 2026, states that Search does not use llms.txt or other “special” AI files, and that publishing one neither helps nor harms rankings. The file can still help agents that look for it — ChatGPT, Claude, Perplexity, coding agents — find a short path into the site. Rank and retrieval for Google remain ordinary SEO: crawlable HTML, useful pages, and an indexable snippet.
Should I allow GPTBot or block it?
Allow GPTBot if you are willing for the public site to be in future OpenAI training runs. Block GPTBot if you are not. That choice is independent of ChatGPT search: OAI-SearchBot is the token that decides whether you appear in those answers. OpenAI documents the split and publishes separate IP lists. Most marketing sites that want to be cited allow both, and keep private paths behind authentication.
What is the difference between PerplexityBot and Perplexity-User?
PerplexityBot builds the index Perplexity searches and links out from. It honors robots.txt. Perplexity-User fetches a page because a person asked a question, and Perplexity’s docs say that fetcher generally ignores robots.txt. If you want to be linked in Perplexity search, allow PerplexityBot. If a path must never be fetched, it cannot be public. A robots line will not save a URL anyone can open.
Does Google-Extended change my Search ranking?
No. Google-Extended is a product token for whether crawled content may be used to train future Gemini models and to ground Gemini Apps and Vertex AI. Google’s crawler documentation is explicit: it does not affect inclusion in Google Search and is not a ranking signal. You can disallow Google-Extended and still appear in Search and in AI Overviews. You cannot disallow Googlebot and expect to remain in either.
Do I need schema.org markup for ChatGPT to cite me?
No special schema. Google says structured data is not required for generative AI features, and there is no GEO-specific type to add. Keep Organization, Service, Article, and FAQ markup if you already use them for rich results. The citable object is still a paragraph with a number, a year, and a name — on a page a crawler can fetch.
What should an agency put in /pricing.md?
The engagement shape, in sentences a model can lift: discovery, build, and partner; what each includes; what each is not; and a next step that is not a demo. Do not invent a package price. A number without a brief will be repeated as fact. Point readers who want ranges at a sourced note, and keep /pricing.md honest about what you will not say.
Is a Markdown copy of every page required?
No. Howard proposes Markdown twins for pages an agent might need, either by appending .md or by replacing the extension. Do that for services, pricing, work, contact, and the few essays that already contain sourced numbers. A Markdown dump of every filter and pagination URL recreates the sitemap problem the spec was written to avoid. Curate.
Will Chrome or Lighthouse penalize a site without llms.txt?
No. Lighthouse can audit for the file as part of agentic-browsing checks, but that is a diagnostic, not a Search penalty. Google Search ignores the file. Ship one if agents are part of how buyers reach you. Do not ship an empty or auto-generated file just to clear an audit.
If the current site already has a services page, send that URL and whatever you tell a buyer about price on a call. We will write back with a draft /llms.txt, a /pricing.md in the three shapes, and the robots lines we would add or remove. No invented rates. Contact the studio.
More from the journal

14 Aug 2026·16 min
YourGPT review: what it does after the demo
A practitioner review of YourGPT — what the agent platform actually is, what the plans cost, where it fails, and when we would not install it.

Josip Tomić
Partner

13 Aug 2026·12 min
You still rank #1. The visits are gone. Now what
You still rank number one. The visits are gone. A diagnostic for algorithm hits, AI Overviews that ate the click, and pages that never converted.

Josip Tomić
Partner