# llms.txt-generator: bouw het bestand op basis van een crawl van je eigen site

> Genereer een llms.txt-bestand voor je website met een Python-script dat elke pagina als Markdown leest en samenvat. Data van 2026.

- URL: https://webreaderapi.com/nl/guides/llms-txt-generator/
- Laatst bijgewerkt: 2026-10-22
- Uitgever: WebReaderAPI (https://webreaderapi.com)

Een llms.txt-bestand vermeldt de belangrijkste pagina's van een site, met een regel per pagina, in Markdown die modellen makkelijk lezen. Deze gids geeft eerlijke adoptiecijfers, en daarna een script dat je site crawlt en het bestand voor je schrijft.

**Kort antwoord — Hoe genereer ik een llms.txt-bestand voor mijn website?**

Crawl je eigen site, neem de titel en eerste alinea van elke pagina, en schrijf ze als een Markdown-lijst onder de naam van je site in een bestand op `/llms.txt`. **WebReaderAPI** doet de crawl: tot 10.000 pagina's per taak, als Markdown met metadata, voor één credit per pagina vanaf US$ 0,07/1K pagina's per oktober 2026. Het Python-script hieronder schrijft het bestand. Zonder KYC; betalen met crypto.

## llms.txt in het kort

| Kenmerk | Waarde |
| --- | --- |
| Wat het is | Een voorgesteld Markdown-bestand in de root van een site dat de belangrijkste pagina's vermeldt voor taalmodellen |
| Adoptie, top 1.000 sites | 9,3% (93 sites) op 18 september 2026, volgens Rankability |
| Sites met het bestand | Van 4.088 naar 36.120 tussen juni 2025 en mei 2026, volgens Originality.ai |
| Gemeten gebruik | 97% van de llms.txt-bestanden kreeg nul requests in een Ahrefs-onderzoek onder 137.000 domeinen |
| Kosten om te bouwen met WebReaderAPI | Eén credit per gecrawlde pagina; 10.000 pagina's kosten US$ 3,75 |

## Is llms.txt het maken waard?

Het is goedkoop om te maken, en het gemeten effect is tot nu toe klein. De adoptie stijgt: Rankability vond het bestand op 9,3% van de top 1.000 sites op 18 september 2026, tegen 0,3% in juni 2025, al veranderde de methode tussen de twee tellingen. Originality.ai telde sites met het bestand die groeiden van 4.088 naar 36.120 tussen juni 2025 en mei 2026.

Het gebruik is een ander verhaal. Een Ahrefs-onderzoek onder 137.000 domeinen, gerapporteerd door PPC Land op 2 juli 2026, vond dat 97% van de llms.txt-bestanden helemaal geen requests kreeg, en dat AI-retrievalbots 1,1% van de requests uitmaakten die de bestanden wél kregen. Maak er een als je documentatie groot is en je een schone index wilt; verwacht niet dat het op zichzelf verandert hoe assistenten je citeren.

## Wat staat er in een llms.txt-bestand?

Een titel, een samenvatting van één alinea, en dan gegroepeerde lijsten met links met elk een korte beschrijving. Een minimaal bestand ziet er zo uit:

- `# Example Docs` op de eerste regel, de naam van de site of het project.
- `> One sentence on what the site covers.` als een geciteerde samenvatting.
- `## Guides`, `## API reference` en andere secties, één per onderdeel van de site.
- `- [Page title](https://example.com/page): one line on what the page answers.` voor elke pagina.

Houd beschrijvingen feitelijk en kort. Schrijf geen instructies aan AI-systemen in het bestand; assistenten behandelen zulke tekst steeds vaker als manipulatie.

*Python: crawl je eigen site en schrijf llms.txt*

```python
import os
import time
from collections import defaultdict
from urllib.parse import urlparse

import requests

API = "https://webreaderapi.com/api/v1"
HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}
SITE = "https://docs.example.com/"


def first_paragraph(markdown):
    for block in markdown.split("\n\n"):
        block = block.strip()
        if block and not block.startswith(("#", "-", "|", "!", ">")):
            return " ".join(block.split())[:160]
    return ""


job = requests.post(API + "/crawl", headers=HEADERS, json={"url": SITE, "limit": 300}, timeout=60).json()
pages, cursor, delay = [], None, 5
while True:
    params = {"cursor": cursor} if cursor else {}
    batch = requests.get(API + "/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=60).json()
    pages += [p for p in batch.get("results", []) if "markdown" in p]
    cursor = batch.get("next_cursor")
    if batch["status"] == "done" and not cursor:
        break
    if not cursor:
        time.sleep(delay)
        delay = min(delay * 2, 60)

sections = defaultdict(list)
for p in pages:
    path = urlparse(p["final_url"]).path.strip("/")
    section = path.split("/")[0].replace("-", " ").title() if path else "Home"
    summary = p.get("description") or first_paragraph(p["markdown"])
    sections[section].append("- [" + p["title"] + "](" + p["final_url"] + "): " + summary)

lines = ["# Example Docs", "", "> Documentation for the Example product.", ""]
for name in sorted(sections):
    lines += ["## " + name, ""] + sorted(sections[name]) + [""]
with open("llms.txt", "w", encoding="utf-8") as fh:
    fh.write("\n".join(lines))
print(len(pages), "pages written to llms.txt")

```

## Hoe werkt het script?

Het start één crawl-job, verzamelt de resultaten pagina voor pagina en groepeert de pagina's vervolgens op de eerste map van hun pad. Voor elke pagina gebruikt het de meta description als de site er een levert, en anders de eerste alinea van de Markdown, afgekapt op 160 tekens.

Pas `SITE`, de titelregel en de samenvattingsregel aan op je project, en verhoog `limit` voor een grotere site, tot 10.000 pagina's per job. Controleer de output voordat je hem publiceert: sectienamen komen uit je URL-structuur en hebben misschien een menselijke touch nodig.

## Moet mijn robots.txt de crawl toestaan?

Ja. WebReaderAPI leest alleen wat robots.txt toestaat voor `WebReaderAPI` of voor alle robots, en wacht op elke `Crawl-delay` die je instelt. Als je eigen site robots blokkeert, voeg dan een groep toe die onze token toestaat voor de duur van de crawl; onze [crawler-pagina](https://webreaderapi.com/nl/bot/) toont de exacte regels.

Pagina's die robots.txt weigert, worden overgeslagen en niet gefactureerd, dus een strikt bestand kost je niets extra; het laat die pagina's alleen buiten llms.txt.

## Hoeveel kost het?

Eén credit per gelezen pagina, twee voor pagina's die een browser nodig hebben. Een documentatiesite van 300 pagina's kost 300 credits, of tot 600 als het een JavaScript-applicatie is. Dat past makkelijk in 10.000 pagina's voor US$ 3,75, per oktober 2026, en de overgebleven credits blijven op je account: ze verlopen nooit.

Bouw het bestand opnieuw op als je documentatie verandert. Als je de crawl-output bewaart, kun je met een batch-job alleen de gewijzigde pagina's opnieuw lezen in plaats van alles opnieuw te crawlen.

## llms.txt: veelgestelde vragen

### Waar plaats ik het llms.txt-bestand?

In de root van je site, zodat het geserveerd wordt op `/llms.txt`, als platte tekst of Markdown. Sommige sites publiceren ook `llms-full.txt` met de volledige tekst van de vermelde pagina's.

### Vervangt llms.txt robots.txt?

Nee. robots.txt zegt welke paden robots moeten overslaan; llms.txt vermeldt pagina's waarvan je wilt dat modellen ze vinden. Houd beide. Onze [robots.txt-gids](https://webreaderapi.com/nl/guides/robots-txt-for-ai-agents/) legt het verschil uit.

### Zorgt llms.txt ervoor dat ChatGPT of Claude mijn site citeert?

Er is geen bewijs dat het dat op zichzelf doet. Het Ahrefs-onderzoek dat in juli 2026 werd gerapporteerd, vond dat 97% van de bestanden geen requests kreeg. Heldere pagina's met directe antwoorden en gedateerde feiten maken meer verschil.

### Kan ik llms.txt genereren voor de site van iemand anders?

Alleen voor je eigen sites of met instemming van de eigenaar. Het bestand spreekt namens de site, dus het is aan de site-eigenaar om het te publiceren.

## Bronnen

1. [Adoptiecijfers van llms.txt](https://www.rankability.com/data/llms-txt-adoption/) — Rankability (2026-09-18)
2. [Adoptie van llms.txt stijgt 8,8x, maar 97% van de bestanden krijgt nul AI-requests](https://ppc.land/llms-txt-adoption-rises-8-8x-but-97-of-files-get-zero-ai-requests/) — PPC Land (2026-07-02)

---

WebReaderAPI: WebReaderAPI is een web reader-API voor AI-agents die elke openbare webpagina omzet in schone Markdown, betaald met crypto zonder ID te uploaden. Prepaid credits vanaf US$ 0,07/1K pagina's verlopen nooit, en robots.txt wordt gerespecteerd. Zonder KYC — geen ID, geen selfie, geen documenten. Betalen met crypto.
