Zoekmachines crawlen je site voortdurend, volgen links en indexeren pagina's. Maar niet elke pagina verdient het om geïndexeerd te worden. Je hebt privépagina's, beheeromgevingen, testpagina's en dubbele pagina's die crawlbudget verspillen. Robots.txt is een eenvoudig tekstbestand dat zoekmachines vertelt welke pagina's ze wel en niet mogen crawlen. Het is de poortwachter tussen je site en de bots van zoekmachines.
Robots.txt is een gewoon tekstbestand in de hoofdmap van je website (jouwsite.nl/robots.txt). Het bevat instructies voor crawlers van zoekmachines over welke pagina's en onderdelen van je site ze mogen crawlen. Je hebt geen login nodig om robots.txt te bekijken. Het is openbaar. Iedereen kan jouwsite.nl/robots.txt openen en je instructies lezen.
Zoekmachines horen de regels in robots.txt te volgen. De meeste doen dat. Sommige niet. Crawlers die zich netjes gedragen (Google en andere betrouwbare zoekmachines) respecteren robots.txt. Kwaadwillende bots negeren het vaak.
Hoe ziet robots.txt eruit?
Een eenvoudig robots.txt-bestand ziet er zo uit:
User-agent: *
Disallow: /admin/
Disallow: /private/
Allow: /blog/
Sitemap: https://www.example.com/sitemap.xml
Dit zegt tegen alle bots (User-agent: *) dat ze de onderdelen /admin/ en /private/ niet mogen crawlen. Het staat /blog/ nadrukkelijk wel toe (handig als een bovenliggende map geblokkeerd is). Ook wijst het bots de weg naar je sitemap.
Hier is nog een voorbeeld met specifiekere regels:
User-agent: Googlebot
Disallow: /temp/
User-agent: *
Disallow: /test/
Disallow: /*.pdf
Crawl-delay: 5
Dit blokkeert alleen de crawler van Google voor /temp/. Alle andere bots worden geblokkeerd voor /test/ en alle pdf-bestanden. De crawl-delay zegt tegen bots dat ze 5 seconden moeten wachten tussen verzoeken.
Zo helpt robots.txt je SEO
Robots.txt helpt SEO vooral op één manier: het spaart crawlbudget. Zoekmachines geven elke site een beperkt crawlbudget. Voor kleine sites is crawlbudget zelden een probleem. Voor grote sites met duizenden pagina's wel.
Heeft je site 10.000 pagina's, maar zijn er maar 500 belangrijk, dan wil je dat bots die 500 belangrijke pagina's meerdere keren crawlen, in plaats van hun crawlbudget over alle 10.000 pagina's te verspreiden. Robots.txt houdt bots weg bij onbelangrijke pagina's, zodat ze er geen tijd aan verspillen.
Pagina's die je vaak blokkeert: beheeromgevingen, inlogpagina's, bedankpagina's, testpagina's, dubbele content, sessiepagina's en tijdelijke content. Door deze pagina's te blokkeren, laat je bots focussen op content die ertoe doet.
Wat je niet blokkeert in robots.txt
Blokkeer geen pagina's waarmee je wilt ranken. Blokkeer je blog of je belangrijkste contentgedeeltes niet. Blokkeer geen CSS-, JavaScript- of afbeeldingsbestanden die nodig zijn om pagina's goed weer te geven (tenzij je indexering nadrukkelijk wilt voorkomen).
Google raadt aan om CSS-, JavaScript- en afbeeldingsbestanden niet te blokkeren, ook niet als je ze niet geïndexeerd wilt hebben. Als je deze bestanden blokkeert, kan Google je pagina's niet goed weergeven en begrijpen.
Gebruik robots.txt niet om gevoelige informatie te verbergen. Robots.txt is openbaar. Iedereen kan jouwsite.nl/robots.txt lezen. Wil je echt iets verbergen, gebruik dan wachtwoordbeveiliging of serverauthenticatie, geen robots.txt.
Zo maak je een robots.txt-bestand
Robots.txt maken is simpel. Het is een gewoon tekstbestand. De meeste websitebouwers en CMS-platforms maken er automatisch een.
Heeft je CMS er geen gemaakt, maak hem dan zelf. Open een teksteditor. Schrijf je regels. Sla het op als "robots.txt" (niet "robots.txt.txt"). Upload het naar de hoofdmap van je site (jouwsite.nl/robots.txt).
Test je robots.txt-bestand. Ga naar Google Search Console, kies je property, open de robots.txt-tester en plak je regels erin. Google laat zien wat het bestand blokkeert en toestaat. Zo weet je zeker dat je regels doen wat je bedoelt.
Veelgebruikte robots.txt-regels met voorbeelden
Dit is de meest gebruikte regel: alle bots weren uit een bepaalde map.
User-agent: *
Disallow: /admin/
Zo blokkeer je een bepaald bestandstype (zoals pdf's):
User-agent: *
Disallow: /*.pdf
Zo blokkeer je alle bots behalve die van Google:
User-agent: *
Disallow: /
User-agent: Googlebot
Disallow:
Zo voeg je een crawlvertraging toe (X seconden wachten tussen verzoeken):
User-agent: *
Crawl-delay: 10
Zo wijs je bots de weg naar je sitemap:
Sitemap: https://www.example.com/sitemap.xml
Sitemap: https://www.example.com/sitemap2.xml
Belangrijke beperkingen van robots.txt
Robots.txt is geen beveiligingstool. Het is een beleefdheidssysteem. Slechte bots, hackers en kwaadwillende crawlers negeren robots.txt volledig. Gebruik het niet om gevoelige data te verbergen of belangrijke pagina's te beschermen. Gebruik daarvoor wachtwoordbeveiliging.
Robots.txt garandeert niet dat een pagina uit de zoekresultaten blijft. Google indexeert soms pagina's die in robots.txt staan, als andere geïndexeerde pagina's ernaar linken. De blokkade voorkomt crawlen, maar geen indexering als er elders naar de pagina wordt gelinkt.
Robots.txt is geen noindex. Wil je indexering helemaal voorkomen, gebruik dan een robots-metatag of een X-Robots-Tag-header, geen robots.txt. Robots.txt regelt alleen het crawlen, niet het indexeren.
Veelgestelde vragen
Beïnvloedt robots.txt mijn SEO-rankings?
Indirect. Robots.txt heeft geen directe invloed op rankings. Maar door crawlbudget naar belangrijke pagina's te sturen, help je zoekmachines je beste content vaker te crawlen en te indexeren. Beter crawlen leidt tot betere indexering en dat tot betere kansen om te ranken. Robots.txt helpt rankings dus indirect via het beheer van crawlbudget. Met de websitebouwer van WEMASY stel je dit direct in op je website.
Kan ik Google blokkeren om mijn site te crawlen?
Ja, maar dat moet je niet doen. Je kunt Googlebot uitsluiten in robots.txt, maar dan indexeert Google je site niet. Je site verdwijnt dan uit de zoekresultaten van Google. De enige reden om dit te doen is als je je site offline haalt of verhuist en niet wilt dat de oude versie wordt geïndexeerd. In bijna alle gevallen laat je Google gewoon crawlen.
Is robots.txt hoofdlettergevoelig?
Gedeeltelijk. De opdrachten User-agent en Disallow zijn niet hoofdlettergevoelig. De paden die je uitsluit zijn op de meeste servers wel hoofdlettergevoelig. /Admin/ en /admin/ zijn verschillende paden. Test je regels in Google Search Console om zeker te weten dat ze werken zoals bedoeld.
Moet ik dubbele pagina's blokkeren met robots.txt?
Dat hangt ervan af. Robots.txt blokkeert crawlen, maar niet indexeren. Wil je voorkomen dat dubbele pagina's worden geïndexeerd, gebruik dan de canonical-tag of de robots-metatag noindex. Gebruik robots.txt om het crawlen te blokkeren van onbelangrijke duplicaten waarvan het je niet uitmaakt of Google ze ooit vindt.
Moet ik Google op de hoogte stellen als ik robots.txt wijzig?
Nee. Google crawlt robots.txt vaak. Wijzigingen gaan meestal binnen een paar uur in. Je hoeft je site niet opnieuw in te dienen of iemand te waarschuwen. Pas robots.txt aan en wacht op de volgende crawl.
Wat is het verschil tussen robots.txt en robots-metatags?
Robots.txt blokkeert crawlen op bestandsniveau. Robots-metatags regelen indexering op paginaniveau. Robots.txt zegt dat een pagina niet gecrawld mag worden. Robots-metatags (zoals noindex) zeggen dat een pagina wel gecrawld mag worden, maar niet geïndexeerd moet worden. Gebruik robots.txt voor grote onderdelen die je wilt blokkeren. Gebruik robots-metatags voor losse pagina's die wel gecrawld, maar niet geïndexeerd moeten worden.