Ga naar de hoofdinhoud
← Alle gidsen

robots.txt en sitemaps

Beide bestanden zeggen een crawler iets over uw URL's, en geen van beide doet wat men meestal aanneemt. Het ene onthoudt toestemming om op te halen. Het andere biedt een lijst ter overweging.

Toestemming is niet hetzelfde als uitsluiting

robots.txt onthoudt de toestemming om een URL op te halen, en verder niets. Google zegt onomwonden dat het geen middel is om een pagina uit de zoekresultaten te houden. De twee gedachten worden voortdurend op één hoop gegooid, en dat levert een heel specifieke, goed zichtbare fout op.

Een geblokkeerde URL waar andere sites naar linken kan alsnog geïndexeerd worden. Google weet dat het adres bestaat omdat iemand ernaar linkte; het kan alleen niet zien wat erop staat. Dus verschijnt de URL mogelijk zonder enige omschrijving — het slechtste van twee werelden, want de pagina staat publiek in de resultaten terwijl u geen enkele grip hebt op hoe zij eruitziet.

Het bestand lezen en schrijven

Het bestand staat in de root van een host en geldt alleen voor die host en dat protocol. Regels zijn gegroepeerd per user-agent, en een crawler volgt de ene groep die het specifiekst op hem past — niet elke groep die zou kunnen passen. Binnen een groep beslist bij Google de specifiekere regel, niet de volgorde.

robots.txt
User-agent: *
Disallow: /admin/
Disallow: /*.pdf$
Allow: /admin/public/

User-agent: Googlebot
Disallow: /drafts/

Sitemap: https://example.com/sitemap.xml

Twee details in dat voorbeeld veroorzaken vrijwel alle verwarring. De Allow-regel is specifieker dan de Disallow erboven, dus /admin/public/ blijft ophaalbaar. En zodra er een Googlebot-groep bestaat, volgt Googlebot uitsluitend die groep — de jokergroep geldt niet meer voor hem, waardoor /admin/ hier juist wél ophaalbaar is voor Googlebot. Dat is vrijwel nooit de bedoeling geweest.

  • Een pad blokkeren verwijdert geen reeds geïndexeerde URL's; het stopt alleen toekomstige ophaalacties.
  • De Sitemap-regel staat los van elke user-agentgroep en mag overal in het bestand staan.
  • Een 5xx op robots.txt zelf kan een crawler de hele host laten mijden, dus serveer het vanaf iets betrouwbaars.

Waar een robotsregel schade aanricht ver van zichzelf

De duurste robots.txt-fouten zijn niet de pagina's die u wilde blokkeren. Het zijn de bronnen die een pagina nodig heeft om te renderen. Zoekmachines renderen pagina's voordat ze die indexeren, en renderen haalt scripts, stylesheets en API-antwoorden op.

Blokkeer een scriptpad of een API-route en de crawler haalt de HTML nog steeds prima op. Vervolgens rendert hij een vrijwel lege pagina en indexeert hij een vrijwel lege pagina. Geen enkel rapport meldt dat de pagina geblokkeerd was, want dat was zij niet — alleen wat zij nodig had.

Een sitemap is een suggestie, geen wachtrij

Sitemaps helpen bij ontdekking juist waar het linken het zwakst is: grote sites, gloednieuwe sites met weinig inkomende links en sites vol media zonder natuurlijke ankertekst. Google stelt onomwonden dat het opnemen van een URL crawlen noch indexeren garandeert.

Googles eigen richtlijn is dat een kleinere, goed gelinkte site er misschien helemaal geen nodig heeft, omdat de crawler alles via links vindt. Dat is de moeite waard om serieus te nemen voordat u sitemapinfrastructuur bouwt voor een probleem dat interne links beter oplossen.

GrensWaarde
URL's per sitemapbestand50.000
Ongecomprimeerde grootte per bestand50 MB
Boven een van beideSplitsen en de delen aanhalen vanuit een sitemapindex

Welke tags gelezen, genegeerd of gewantrouwd worden

Hier gaat het meeste sitemapwerk verloren. Twee van de vier gangbare tags doen helemaal niets, en een derde kan actief tegen u werken.

TagWat Google ermee doet
locWordt gelezen — de URL zelf
lastmodAlleen gebruikt wanneer die consequent en verifieerbaar klopt
changefreqWordt genegeerd
priorityWordt genegeerd

De voorwaarde bij lastmod is degene die pijn doet. Stempelt uw build elke URL met het deploymoment, dan is elke waarde tegelijk onjuist en makkelijk te weerleggen: de pagina veranderde niet, en de zoekmachine kan dat zien. Zodra zij het veld niet meer vertrouwt gebruikt zij het niet meer, en dan bent u slechter af dan wanneer u helemaal geen lastmod stuurde. Geef het alleen af bij echte wijzigingen in de hoofdinhoud, en laat het liever weg dan het te verzinnen.

sitemap.xml
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://example.com/guides/indexing/</loc>
    <lastmod>2026-06-14</lastmod>
  </url>
</urlset>

Het juiste instrument kiezen

Vrijwel elke vraag op dit terrein lost zich op zodra u drie taken scheidt die op elkaar lijken en het niet zijn.

DoelInstrumentWaarom
Geen crawlwerk verspillen aan rommel-URL'srobots.txtVoorkomt het ophalen volledig
Een pagina uit de resultaten houdennoindex, of authenticatieVereist het ophalen zodat de instructie gelezen wordt
Pagina's laten ontdekkenInterne links, daarna een sitemapLinks dragen context, sitemapregels niet

Vragen en antwoorden

Kan ik disallow en noindex combineren?

Nee, en juist die combinatie is de klassieke fout. Blokkeert robots.txt de URL, dan haalt de crawler de pagina nooit op en ziet de noindex nooit. Sta het crawlen toe en serveer de noindex, of zet de pagina achter authenticatie.

Heb ik überhaupt een sitemap nodig?

Niet altijd. Google stelt dat een kleinere, goed gelinkte site via links te vinden is. Sitemaps verdienen hun plek op grote sites, gloednieuwe sites met weinig inkomende links en veel media.

Waarom staat een pagina die ik blokkeerde nog in Google?

Omdat robots.txt het ophalen stopte, niet het indexeren. Andere sites linken naar de URL, dus Google weet dat zij bestaat maar ziet de inhoud niet — vandaar een vermelding zonder omschrijving. Sta het crawlen toe en serveer een noindex om haar netjes te verwijderen.

Moet ik priority en changefreq instellen?

Nee. Google negeert beide. Die moeite rendeert meer in een kloppende lastmod, of in interne links.

Wat gebeurt er als robots.txt een fout teruggeeft?

Een 5xx kan een crawler de host laten mijden in plaats van aan te nemen dat alles is toegestaan. Serveer robots.txt vanaf infrastructuur die minstens zo betrouwbaar is als de site zelf.