lintpage
~/llms-txt/yoast
§ Yoast SEO

llms.txt with Yoast SEO

Whether Yoast generates an llms.txt file, how it interacts with the one you wrote by hand, and how to serve your own without fighting the plugin.

Yoast is a WordPress plugin, so the file is served by WordPress. What Yoast adds is content generation, not a new serving mechanism.

§ how to serve it

Serving /llms.txt from Yoast SEO.

step 1

Check what your Yoast version actually ships

Yoast ships this: it arrived in Yoast SEO 25.3 in June 2025 and is free rather than a Premium upgrade. It is opt-in rather than automatic, under Yoast SEO, then Settings, Site Features, AI tools - and it is not available on multisite at all, so on a network install the answer is no regardless of version. Check the toggle first, then fetch the file anyway: a toggle tells you the feature is on, not what it produced.

bash
curl -s https://example.com/llms.txt | head -20
step 2

Decide which file wins before you write a second one

A plugin-generated file and a hand-written file at the same URL are a conflict, and which one is served depends on whether your file is a real file on disk or another rewrite rule. A real file in the web root wins, because the web server never asks WordPress. Two rewrite rules is a coin flip decided by priority - avoid it.

step 3

If you want Yoast to generate it, curate the input

A generated file is only as good as what you point it at, and Yoast documents what it points at: the five most recently updated posts, pages and custom post types published within the last twelve months, with cornerstone content given priority, plus the five categories or tags carrying the most content. Cornerstone marking is therefore not a hint here, it is the lever - set it deliberately rather than leaving the defaults. There is a manual page selection mode if you would rather choose the list yourself.

step 4

If you want your own, take the URL properly

Upload a real llms.txt to the web root. Because the web server serves an existing file before WordPress runs, this takes precedence over any plugin rewrite without needing to disable anything - and it keeps working if the plugin changes its behaviour in a future release.

bash
# Beside wp-config.php, not in wp-content/
public_html/llms.txt
§ what goes wrong here

What Yoast SEO gets wrong.

The failures below are specific to Yoast SEO. A generic llms.txt guide will not mention any of them.

01

Assuming an SEO plugin handles it because it handles sitemaps

The Yoast-specific misconception, and it is an understandable one: Yoast does generate and serve XML sitemaps, so people assume llms.txt is the same feature with a different extension. It is not. A sitemap is a complete machine-readable list of URLs; llms.txt is a short curated index with prose notes. A plugin that generates the second from the first has built a sitemap with markdown syntax.

02

A generated file that is just your sitemap in markdown

The failure mode to check for. If the generated file lists every post on your site with the meta description as the note, it will pass a validator and fail at its actual job. The value of llms.txt is curation and the quality of the notes. If the plugin cannot give you that, hand-write the file.

03

Noindexed posts are excluded, which is not the same as everything

Yoast added exclusion of noindexed posts in 25.4, and Rank Math documents the same behaviour, so the obvious leak is handled on both. What neither documents is taxonomy terms: the exclusion is written about posts, while custom post types and taxonomies are governed by their own "Show in search results" setting instead. So read the generated file rather than reasoning from your noindex settings - a staging page, a thank-you page, or an internal doc appearing in a public index is a leak, not a formatting issue.

04

The plugin and your robots.txt disagreeing

Yoast also edits robots.txt. If your robots.txt blocks GPTBot, ClaudeBot or the rest while an llms.txt invites them, the two files contradict each other. Both are public, both are read by the same clients, and only one of them can be what you meant.

§ faq

Questions, answered.

Does Yoast SEO generate an llms.txt file?
Yes. Yoast has generated one since version 25.3, released in June 2025, and the feature is free rather than a Premium upgrade. It is opt-in, not automatic: you enable it under Yoast SEO, then Settings, Site Features, AI tools. Yoast writes the file to your site root and regenerates it weekly on a scheduled action, and the feature is not available on multisite. Fetching your own /llms.txt is still the quickest way to see what your install actually produced.
Should I use Yoast's llms.txt or write my own?
Write your own if you care about the file working. A generated index inherits your meta descriptions, which are written to earn clicks from humans in search results, not to tell a model what a page contains. Generation is a reasonable starting point; shipping it unedited is how you end up with a sitemap in markdown syntax.
How do I override a plugin-generated llms.txt?
Upload a real llms.txt file to your web root, beside wp-config.php. Web servers serve existing files before handing the request to WordPress, so your file wins without disabling anything in the plugin - and it stays winning if the plugin changes behaviour later.
Is llms.txt the same as an XML sitemap?
No, and the difference is the whole point. A sitemap is exhaustive, machine-readable, and written for crawlers that will fetch everything anyway. An llms.txt is short, curated, and annotated in prose, written for a client with a limited context budget that has to choose what to read. Generating one from the other loses exactly the part that makes it useful.

LintPage is not affiliated with any platform or plugin named on this page. The claims here were last checked against vendor documentation on 2026-09-18. Settings and defaults move quickly, so confirm against your own install before relying on one.

§ the part that matters

An llms.txt will not fix a site AI cannot read.

Before writing an index for AI clients, check that they can fetch your pages at all. LintPage runs 60 checks against a URL in about 30 seconds - free, no signup.

run a full scan →