Alejandro Rioja.
GEO SEO

llms.txt Uitgelegd: Beweegt Het Echt AI-Citaties?

Alejandro Rioja
Alejandro Rioja
6 min lezen
TL;DR

llms.txt is een platte tekstbestand op yoursite.com/llms.txt dat AI-crawlers vertelt welke pagina's ze moeten prioriteren. Perplexity leest het actief; ChatGPT en Bing Copilot waarschijnlijk nog niet. Het duurt 20 minuten om te implementeren en kost niets — doe het, maar verwacht geen citatiepiek volgende week.

Gratis nieuwsbrief

Elke woensdag. 28.400+ operators. Geen opvulling.

Inhoudsopgave

Bijgewerkt mei 2026.

TL;DR: llms.txt is een platte tekstbestand op yoursite.com/llms.txt dat AI-crawlers vertelt welke pagina’s ze moeten prioriteren. Perplexity leest het actief; ChatGPT en Bing Copilot waarschijnlijk nog niet. Het duurt 20 minuten om te implementeren en kost niets — doe het, maar verwacht geen citatiepiek volgende week.

[Operator-perspectief] Ik beheer AI-agents die bijhouden hoe mijn sites worden geciteerd in Perplexity, ChatGPT en Google SGE. llms.txt is de eerste signaallaag die echt van jou is — hier is wat de data tot nu toe laat zien.

Wat llms.txt eigenlijk is

Zie het als een robots.txt voor AI-crawlers, maar omgekeerd. robots.txt zegt “niet crawlen.” llms.txt zegt “als je context over mijn site opbouwt, is dit wat het meest telt.”

De specificatie werd eind 2024 voorgesteld door Jeremy Howard (van fast.ai). Het idee: een bestand plaatsen op yoursite.com/llms.txt dat je belangrijkste pagina’s in platte Markdown opsomt. Een AI-crawler die je site scant voor context kan dat bestand lezen en onmiddellijk weten wat te prioriteren — in plaats van raden op basis van PageRank of crawldiepte.

Er is ook een optionele llms-full.txt variant die de volledige tekst van je sleutelpagina’s samengevoegd in één document bevat. Sommige crawlers geven de voorkeur aan dat formaat omdat het minder verzoeken vereist.

Geen van de bestanden is al een W3C-standaard. Het is een gemeenschapsvoorstel met groeiende adoptie onder technische oprichters en contentteams.

Hoe het bestand eruit ziet

Hier is het llms.txt dat ik gebruik voor alejandrorioja.com:

markdown
# Alejandro Rioja

> Operator, AI-consultant en oprichter van Pickleland. Ik schrijf over GEO, AI-agents en groei voor oprichters.

## Hoofdpagina's

- [Over mij](https://alejandrorioja.com/about/): Achtergrond, adviesservices en hoe je met mij kunt werken.
- [Blog](https://alejandrorioja.com/blog/): Alle berichten over GEO, SEO, AI-agents en groei voor oprichters.
- [Consultatie](https://alejandrorioja.com/consultation/30/): Boek een betaalde sessie van 30 minuten.

## Topberichten

- [Hoe je wordt geciteerd in ChatGPT-antwoorden](https://alejandrorioja.com/blog/how-to-get-cited-in-chatgpt-answers/): Het GEO-playbook dat ik gebruik op klantsites.
- [AI-agentarchitectuur voor oprichters](https://alejandrorioja.com/blog/ai-agent-architecture-for-founders/): Hoe je multi-agentsystemen ontwerpt zonder een volledig engineeringteam.
- [GEO vs SEO](https://alejandrorioja.com/blog/geo-vs-seo/): Wat verandert als Google niet langer de enige zoekmachine is die telt.

## Optioneel: negeren

- /drafts/
- /admin/

Een paar dingen om op te letten:

Welke AI-engines het daadwerkelijk lezen

Hier moet ik eerlijk zijn: het landschap is gefragmenteerd en deels ongedocumenteerd.

Perplexity — Ja, bevestigd. Perplexity’s crawler (PerplexityBot) leest llms.txt bij het indexeren van sites. Hun engineeringteam heeft de specificatie publiekelijk gerefereerd. Als Perplexity een significante verwijzingsbron voor je is, heeft het implementeren van llms.txt een duidelijk pad naar impact.

ChatGPT / OpenAI — Niet bevestigd. OpenAI’s crawler (GPTBot) lijkt llms.txt medio 2026 niet te lezen. Zijn crawlgedrag wordt bepaald door robots.txt en OpenAI’s eigen interne prioritering. Er is geen publieke verklaring van OpenAI die de specificatie erkent.

Bing Copilot / Microsoft — Niet bevestigd. Vergelijkbare situatie als OpenAI. Bing’s AI-crawler (BingBot) volgt robots.txt maar er is geen signaal dat het llms.txt leest.

Google AI Overviews / Gemini — Niet bevestigd. Google heeft zijn eigen gestructureerde data-ecosysteem (schema.org, sitemaps) en heeft niet aangegeven specificaties van derden te zullen adopteren.

Anthropic — Anthropic’s crawler (ClaudeBot) crawlt het web voor trainingsdata. Er is geen publieke documentatie dat het llms.txt leest, maar verschillende GEO-practitioners rapporteren betere Claude-citaties na implementatie. Correlatie, geen causaliteit — maar het vermelden waard.

Kleinere AI-zoekmachines — You.com, Phind en verschillende verticale AI-zoektools hebben verklaard of gesuggereerd dat ze llms.txt lezen. De specificatie is makkelijker te adopteren voor kleinere teams omdat ze geen jaren aan crawlinfrastructuur hoeven te refactoren.

De eerlijke samenvatting: momenteel is llms.txt een Perplexity-optimalisatie met enig speculatief voordeel elders. Dat verhouding zal waarschijnlijk verschuiven naarmate de specificatie rijpt.

Hoe je het in 20 minuten implementeert

Als je een statische site gebruikt (Astro, Next.js met statische export, Hugo, etc.), maak het bestand aan in public/llms.txt. Het wordt geserveerd op de root.

Voor een Next.js app router site kun je het dynamisch genereren:

ts
// app/llms.txt/route.ts
import { allPosts } from "@/lib/content";

export async function GET() {
  const topPosts = allPosts
    .filter((p) => p.featured || p.views > 1000)
    .slice(0, 10);

  const lines = [
    "# Alejandro Rioja",
    "",
    "> Operator, AI-consultant, oprichter van Pickleland. Schrijf over GEO, AI-agents en groei voor oprichters.",
    "",
    "## Topberichten",
    "",
    ...topPosts.map(
      (p) => `- [${p.title}](https://alejandrorioja.com/blog/${p.slug}/): ${p.description}`
    ),
    "",
    "## Hoofdpagina's",
    "",
    "- [Over mij](https://alejandrorioja.com/about/): Services en achtergrond.",
    "- [Consultatie](https://alejandrorioja.com/consultation/30/): Sessie boeken.",
  ];

  return new Response(lines.join("\n"), {
    headers: { "Content-Type": "text/plain; charset=utf-8" },
  });
}

Voor een Astro-site is het equivalent een .txt.ts endpoint in src/pages/:

ts
// src/pages/llms.txt.ts
import type { APIRoute } from "astro";
import { getCollection } from "astro:content";

export const GET: APIRoute = async () => {
  const posts = await getCollection("posts", (p) => p.data.lang === "en");
  const top = posts
    .sort((a, b) => b.data.pubDate.valueOf() - a.data.pubDate.valueOf())
    .slice(0, 10);

  const body = [
    "# Alejandro Rioja",
    "",
    "> AI-consultant en operator. Schrijf over GEO, AI-agents en groei voor oprichters.",
    "",
    "## Recente berichten",
    "",
    ...top.map(
      (p) =>
        `- [${p.data.title}](https://alejandrorioja.com/blog/${p.slug}/): ${p.data.description}`
    ),
  ].join("\n");

  return new Response(body, {
    headers: { "Content-Type": "text/plain; charset=utf-8" },
  });
};

Na het deployen, verifieer met curl -s https://yoursite.com/llms.txt. Als je Markdown ziet, ben je klaar.

Moet je ook llms-full.txt maken?

Misschien. llms-full.txt is een samengevoegde dump van je sleutelpagina’s — titel, URL en volledige bodytekst, één pagina na de andere, gescheiden door ---. Het idee is dat een crawler alles in één verzoek kan ophalen en genoeg context heeft om vragen over je site te beantwoorden zonder afzonderlijke pagina’s te crawlen.

De afweging: het is een groot bestand. Het mijne is ongeveer 400KB voor de top-30 berichten. Sommige crawlers kunnen time-outen of het afkappen. Anderen kunnen het zwaarder wegen omdat de inhoud pre-verteerd is.

Mijn huidige aanpak: ik genereer llms-full.txt maar beperk het tot de 15 best presterende berichten op basis van traffic. Ik houd het onder 250KB. Regeneratie bij elke deploy.

Wat de data echt laat zien

Ik monitor Perplexity-citaties voor deze site en drie klantsites sinds januari 2026. Hier is wat ik heb waargenomen:

De eerlijke interpretatie: llms.txt helpt waarschijnlijk met Perplexity. Het mechanisme is duidelijk — Perplexity leest het. Of de stijging specifiek van llms.txt komt of van de algemene GEO-verbeteringen die er de neiging hebben mee te gaan, kan ik nog niet zeggen.

Wat je in het blokzitat moet zetten

De éénregelige beschrijving in het blokzitat is het deel waar ik de meeste tijd aan zou besteden. Dit is de tekst die een LLM zal gebruiken om je samen te vatten in een RAG-context. Het moet zijn:

Slecht: > Ik help bedrijven groeien met AI.

Beter: > Alejandro Rioja — AI-consultant in Austin TX, oprichter van Pickleland, schrijft sinds 2019 over GEO, AI-agents en groei voor oprichters.

De conclusie van de operator

llms.txt duurt 20 minuten om te implementeren, kost niets te serveren en heeft een bevestigd leespad bij Perplexity. Doe het. De specificatie wordt óf een echte standaard (in welk geval vroege adopters winnen) óf verdwijnt (in welk geval je 20 minuten hebt verloren). De asymmetrie is duidelijk. Laat je alleen niet afleiden van GEO-werk met hogere ROI: gestructureerde data, duidelijke entity-signalen en antwoorden opgemaakt voor snippet-extractie. Die bewegen elke AI-engine. llms.txt beweegt er momenteel één.

Lees verder

Ontvang het AI-playbook in je inbox

Elke woensdag. 28.400+ operators. Geen opvulling.

↵ alle resultaten bekijken esc esc om te sluiten