Schema markup vs llms.txt: what's the difference?
Both are about helping AI search engines understand your site. But they're not the same thing, and they don't replace each other. Here's a plain-language breakdown.
The short version
Schema markup tells AI what a page is about — invisible structured data sitting inside the page itself.
llms.txt tells AI which pages on your site matter — a separate file at your domain root, like a sitemap but written for language models.
One lives inside each page. The other lives outside, pointing to all the pages. You need both.
Schema markup, explained
Schema is structured data written in JSON-LD that sits inside the <head> of each page. Humans never see it. AI models and search engines read it to understand what kind of thing a page is — a business, an article, a product, an FAQ, a recipe.
Without schema, AI has to guess from your visible text. With schema, it knows for certain. A page about your accounting firm becomes "this is a LocalBusiness, name X, phone Y, address Z, opens at 8am" — no ambiguity.
There are dozens of schema types. The ones that matter most for AI search: Organization or LocalBusiness, FAQPage, Service, Article, BreadcrumbList.
llms.txt, explained
llms.txt is a plain-text file you publish at yoursite.com/llms.txt. It's an index of the most important pages on your site, written specifically for AI crawlers. Think of it as a friendly note saying "if you want to understand my site, start here."
There's also llms-full.txt — the complete content of your site converted to clean Markdown. AI models can pull that single file instead of crawling 50 pages, and it costs them less to process.
llms.txt is a new convention. It's not officially supported by every AI engine yet, but adoption is growing fast — and there's no downside to having one.
So why do you need both?
They solve different problems:
- Schema answers: "When AI lands on a specific page, can it understand what's on it?"
- llms.txt answers: "When AI wants to learn about your site, does it know where to start and what's important?"
A site with schema but no llms.txt has clear pages, but AI has to figure out which ones to read. A site with llms.txt but no schema has a clear map, but each page is harder to parse. With both, you've covered both the navigation and the comprehension.
How to add them
You can write schema and llms.txt by hand. Schema means generating valid JSON-LD for each page type, keeping it updated, and testing in Google's Rich Results Test. llms.txt means writing a structured Markdown index and regenerating it whenever your content changes.
Or you install Dennis GEO. It generates both automatically. Schema gets emitted in the page head, llms.txt and llms-full.txt are served from your domain root, and everything regenerates when you update content. Free WordPress plugin, takes about five minutes to set up.
Want to see where your site stands?
Our free AI Visibility Score checks if your site has schema, llms.txt, and 6 other signals AI search engines look for. Takes about ten seconds, no signup required.