How to Create an llms.txt File for WordPress (2026)
A step-by-step guide to building and uploading an llms.txt file on WordPress, with a free template and a quick way to test it works.
An llms.txt file is a plain markdown file placed at your site's root that gives AI systems a curated map of your most important content. Creating one on WordPress takes about fifteen minutes: you write the file, upload it to your root directory, and confirm it loads at yoursite.com/llms.txt. This guide covers all three methods, a copy-paste template, and — importantly — an honest answer about whether it does anything yet.
I added one to this site in 01/2026. Below is exactly what I did, what I'd change, and what I've been able to measure so far.
What is llms.txt and why did it appear?
llms.txt is a proposed web standard, introduced in late 2024 by Jeremy Howard of Answer.AI, that gives large language models a clean, markdown-formatted index of a website's key pages. The idea is simple: HTML pages are cluttered with navigation, ads and scripts, and context windows are limited, so give the model a curated shortlist instead.
The proposal defines a file at the root of your domain — /llms.txt — containing an H1 with your site name, a short blockquote summary, and sections of markdown links with one-line descriptions.
How it differs from robots.txt and sitemap.xml
These three files solve three different problems, and confusing them is the most common mistake I see.
FileFormatAudiencePurposerobots.txtPlain text directivesCrawlersPermission — what may be crawledsitemap.xmlXMLSearch enginesDiscovery — every URL that existsllms.txtMarkdownLanguage modelsCuration — which pages matter and why
robots.txt says "you may." sitemap.xml says "here is everything." llms.txt says "here is what's worth your attention." A sitemap lists all 400 of your URLs with no hierarchy. An llms.txt file lists your 20 best pages with a sentence explaining each one.
Which AI crawlers actually read it — the honest answer
As of my last check, no major AI provider has publicly confirmed that its systems consume llms.txt, and Google has stated fairly directly that its systems do not use it. Anthropic, OpenAI and Perplexity have not published support commitments either. Adoption exists on the publishing side — plenty of documentation sites and SaaS companies ship one — but that is supply, not demand.
So why write one at all? Three defensible reasons:
Cost is near zero. Fifteen minutes, one file, no risk of harm.
The exercise is useful independently. Forcing yourself to name your twenty most valuable pages and describe each in one sentence is a content audit in disguise. Mine surfaced four pages I'd forgotten existed and two that contradicted each other.
Optionality. If adoption arrives, you're already there. If it doesn't, you lost fifteen minutes.
What I would not do is tell a client that llms.txt will increase their AI visibility. There is no evidence for that claim today, and anyone selling it as a ranking tactic is ahead of the facts.
Do you actually need one? A quick decision test
Answer these three questions. Two or more yeses means it's worth your time.
Does your site have more than 15 pages of substantive, non-duplicate content?
Do you publish documentation, guides, or reference material that people quote?
Would you be annoyed if an AI system described your business incorrectly?
If you run a five-page brochure site, skip it and spend the time on your service pages instead. The file adds nothing when a model can read your whole site in one pass anyway.
What goes inside an llms.txt file
The proposed format has four parts, in a fixed order: an H1 with your site or project name, an optional blockquote summary, optional free-form context, and then H2 sections containing markdown link lists.
Required structure and markdown format
# Site Name
> One-sentence summary of what this site is and who it serves.
Optional short paragraph adding context — what you cover,
what makes your material distinct, who writes it.
## Core Guides
- [Page title](https://yoursite.com/page/): One-line description
of what this page answers.
## Tools
- [Tool name](https://yoursite.com/tool/): What it does.
## Optional
- [Page](https://yoursite.com/page/): Lower-priority material
that can be skipped if context is tight.Two rules people miss: use absolute URLs, not relative paths, and treat the ## Optional section as literal — it's the designated place for material a model may safely ignore.
An annotated example
Here's a trimmed version of what a consultant's file might look like:
# Azhar Rasheed — SEO Consultant
> Independent SEO consultant based in Islamabad, Pakistan,
> writing about technical SEO, AI search visibility and
> freelance practice.
## Guides
- [SEO Audit Checklist](https://example.com/seo-audit-checklist/):
A 62-point audit covering indexing, on-page, links and Core Web Vitals.
- [Building Topical Authority](https://example.com/build-topical-authority/):
How to map and sequence a content cluster on a low-authority site.
## Services
- [SEO Services in Islamabad](https://example.com/seo-services-islamabad/):
Audits, local SEO and content strategy for Pakistani businesses.
## Optional
- [About](https://example.com/about/): Background and credentials.Notice each description says what the page answers, not what it's called. "A 62-point audit covering indexing, on-page, links and Core Web Vitals" is useful. "Our SEO audit checklist article" is not.
Method 1 — Manual upload via cPanel or FTP
This is the most reliable method and the one I use. It takes five minutes and adds no plugin overhead.
Write your file in any plain text editor and save it as
llms.txt. Not.md, not.txt.txt— watch for Windows appending a second extension.Log into cPanel and open File Manager, or connect via FTP with FileZilla.
Navigate to your WordPress root — the folder containing
wp-config.php, usuallypublic_html.Upload
llms.txtinto that folder. Do not put it insidewp-contentor a theme folder.Set permissions to 644 if your host doesn't do it automatically.
Visit
yoursite.com/llms.txtin a browser.
If you see your markdown as plain text, you're done. If you see a WordPress 404 page, jump to the troubleshooting section below.
Method 2 — Using a plugin
Several SEO plugins and standalone plugins now generate llms.txt automatically from your sitemap or post types. This suits people without file access, but comes with a trade-off worth understanding.
Auto-generated files tend to dump every published post into one long list. That defeats the entire purpose — the value of llms.txt is curation, not completeness. If you use a plugin, check whether it lets you manually select and describe entries. If it only does bulk export, you've essentially built a second sitemap in markdown.
My recommendation: use a plugin if you publish frequently and want the file to stay current automatically, but review and prune it monthly.
Method 3 — Generator tool (fastest)
Online generators crawl your site and produce a draft file you download and upload. Useful as a starting point when you have a large site and don't want to write forty descriptions by hand.
Treat the output as a first draft, never a final file. Every generator I've tested pulls descriptions from meta descriptions or first paragraphs, which produces marketing copy rather than functional summaries. Rewrite them.
How to test that yours is live and readable
Run these four checks in order. Each takes seconds.
Direct load. Open
yoursite.com/llms.txt. You should see raw markdown, not a rendered page and not a 404.Content type. In Chrome DevTools → Network tab, reload and confirm the response header shows
text/plainortext/markdown. Some servers serve it asapplication/octet-stream, which triggers a download instead of displaying.Incognito check. Load it in a private window to rule out caching.
Link validation. Paste every URL from the file into a bulk status checker. A file full of 301s and 404s is worse than no file.
If you get a 404: WordPress permalinks are intercepting the request. Go to Settings → Permalinks and click Save without changing anything — this flushes rewrite rules and usually fixes it. If that fails, your file is in the wrong directory, or a security plugin is blocking unknown root files.
5 mistakes that make llms.txt useless
1. Listing every page. Twenty curated entries beat four hundred dumped ones. If everything is important, nothing is.
2. Descriptions that describe titles. "Our guide to link building" adds zero information beyond the link text. Say what the page answers.
3. Relative URLs. /page/ is ambiguous outside your domain context. Always absolute.
4. Never updating it. A file listing pages you deleted eight months ago actively misrepresents you. Diarise a quarterly review.
5. Believing it replaces the work. llms.txt is a pointer file. If the pages it points to are thin, the pointer doesn't help. AI visibility comes from being genuinely worth citing — see [[Day 4: How to Rank in Google AI Overviews]] for what actually moves that needle.
Free llms.txt template
Copy this, replace the placeholders, delete unused sections:
# [Your Site Name]
> [One sentence: what this site is, who it serves, what makes it credible.]
[Optional paragraph: your focus areas, who writes the content,
any credentials or first-hand experience worth knowing.]
## Guides
- [Title](https://yoursite.com/url/): [What question this answers.]
- [Title](https://yoursite.com/url/): [What question this answers.]
## Tools & Resources
- [Title](https://yoursite.com/url/): [What it does.]
## Services
- [Title](https://yoursite.com/url/): [Who it's for and what's included.]
## Optional
- [About](https://yoursite.com/about/): [Background.]
- [Contact](https://yoursite.com/contact/): [How to reach you.]FAQs
Is llms.txt a Google ranking factor?
No. Google has indicated its systems do not use the file, and there is no evidence it affects rankings in traditional search or in AI Overviews.
Does llms.txt replace robots.txt or my sitemap?
No. It serves a different function and does not control crawling or indexing. Keep both of your existing files exactly as they are.
Can llms.txt block AI crawlers from my content?
No. It is a curation file with no directive power. To restrict AI crawlers, use robots.txt user-agent rules or server-level blocking.
Where exactly does the file go?
The root of your domain, so it resolves at yoursite.com/llms.txt. On a standard WordPress install that is the public_html folder containing wp-config.php.
How long should it be?
The proposal sets no limit, but curation is the point. For most sites, 15–40 entries is the useful range.
Should I create llms-full.txt as well?
Some implementations pair llms.txt with a longer llms-full.txt containing complete page content in markdown. Only worth doing for documentation-heavy sites; for a blog or service site it's duplicated effort.