Definitie
HTTP-statuscodes zijn de driecijferige codes die een server bij elke URL terugstuurt, zoals 200, 301, 404 en 503. Google bepaalt op basis daarvan of een pagina geïndexeerd, doorgestuurd of verwijderd wordt.
Hoe gaat Google om met statuscodes?
Google beschrijft per groep wat er gebeurt:
- 2xx (succes): de content gaat door naar indexering. Indexering is niet gegarandeerd. Een 200-pagina die eruitziet als een foutpagina kan als soft 404 worden gemeld.
- 3xx (redirect): Googlebot volgt standaard tot 10 stappen. 301 en 308 zijn een sterk signaal dat het doel canoniek is; 302, 303 en 307 een zwak signaal.
- 4xx (clientfout): de content wordt genegeerd. Al geïndexeerde URL's verdwijnen na verloop van tijd uit de index. Alle 4xx-codes worden gelijk behandeld, behalve 429.
- 429 (te veel verzoeken): Google ziet dit als overbelasting, dus als serverfout.
- 5xx (serverfout): Google crawlt tijdelijk langzamer. Geïndexeerde URL's blijven eerst staan, maar verdwijnen bij aanhoudende fouten.
Gebruik geen 401 of 403 om de crawlsnelheid te beperken. Volgens Google heeft alleen 429 binnen de 4xx-groep effect op crawlsnelheid.
Statuscodes in Magento, Shopify en Laravel
Magento geeft bij een niet-bestaande URL standaard een 404 met de CMS-pagina 'no-route'. Uitgeschakelde producten geven ook een 404. Let op extensies die bij een leeg zoekresultaat of een lege categorie een 200 met 'geen producten' teruggeven.
Shopify handelt statuscodes grotendeels zelf af. Verwijderde producten geven een 404. Tijdens onderhoud of een wachtwoordpagina krijgt Googlebot geen bruikbare content; houd zo'n periode kort.
In Laravel gebruik je abort(404) of abort(410). Een veelgemaakte fout is een controller die bij een ontbrekend model een view rendert met status 200. findOrFail() geeft wel netjes een 404.
Voor gepland onderhoud is een 503 de juiste code op alle platforms. Magento's maintenance mode en php artisan down in Laravel geven standaard een 503.
Veelgemaakte fouten
- Soft 404's: een foutmelding tonen met status 200.
- 302 gebruiken voor permanente verhuizingen. Google ziet dat als zwak signaal.
- Een firewall of botbescherming die Googlebot een 403 geeft. Pagina's vallen dan uit de index.
- Een 500 bij een te zware pagina die eigenlijk een timeout is. Google gaat dan minder crawlen.
- Redirectketens van vier of vijf stappen na meerdere migraties.
Statuscode controleren met curl
curl -sI https://www.voorbeeld.nl/oude-pagina | head -n 1
# HTTP/2 301
# Redirects volgen en elke stap tonen
curl -sIL https://www.voorbeeld.nl/oude-pagina | grep -iE '^(HTTP|location)'Verder lezen
Gerelateerde begrippen
Veelgestelde vragen
Is 410 beter dan 404 voor SEO?+
Google zegt dat alle 4xx-codes behalve 429 hetzelfde worden behandeld. Een 410 is wel een duidelijker signaal voor mensen en andere systemen dat een pagina bewust weg is.
Welke statuscode gebruik ik bij onderhoud?+
Een 503. Google crawlt dan tijdelijk minder en houdt geïndexeerde pagina's eerst vast. Houdt het lang aan, dan kunnen URL's alsnog uit de index vallen.
Hoeveel redirects volgt Googlebot?+
Standaard tot 10 stappen. Google adviseert ketens zo kort mogelijk te houden, bij voorkeur één stap.
Waar zie ik statuscode-problemen?+
In Search Console onder Pagina's (indexering) en in het Crawlstatistieken-rapport. Logbestanden geven het volledige beeld.
Meer begrippen over crawlen & indexeren
- 5xx-serverfouten
- 301-redirect
- 302-redirect (en 307)
- 404 en 410
- Canonical tag
- Crawlbudget
- Crawldiepte
- Crawlen
- Crawlval (crawl trap)
- Dynamic rendering
- Googlebot
- HTML-sitemap
- Image sitemap
- Indexeren
- lastmod
- Logfile-analyse
- Meta robots-tag
- Noindex
- Nosnippet en data-nosnippet
- Orphan page (weespagina)
- Redirect map
- Redirectketen
- Robots.txt
- SEO-migratie
- Sitemap-index
- Soft 404
- URL-inspectie
- X-Robots-Tag
- XML-sitemap
