Een technische SEO-controle gaat na of zoekmachines je pagina’s kunnen ophalen, lezen en in hun index opnemen. Deze technische SEO-checklist loopt de onderdelen langs: statuscodes, robots.txt, indexeringsinstructies, canonicals, redirects, de sitemap, hreflang, interne links, de HTML zelf, mobiele weergave, laadsnelheid en HTTPS. Bij elk punt staat hoe je het zelf controleert.
Hoe gebruik je deze checklist?
Begin bij je belangrijkste pagina’s: de homepage, je belangrijkste categorie- of dienstpagina’s en je contactpagina. Werk de onderdelen van boven naar beneden af, want elke stap bouwt op de vorige. Een pagina die een foutcode geeft, hoef je nog niet op titels te controleren. Staat een pagina helemaal niet in Google, lees dan eerst waarom staat mijn pagina niet in Google?
De volgorde van een technische controle
- BereikbaarDe pagina geeft statuscode 200.
- ToegestaanRobots.txt laat de zoekbot de pagina ophalen.
- IndexeerbaarEr staat geen noindex in de code of in de headers.
- CanoniekDe pagina wijst naar zichzelf als de versie die telt.
- VindbaarInterne links en de sitemap leiden naar de pagina.
- LeesbaarTitel, koppen, tekst en links staan in de HTML.
- BruikbaarDe pagina werkt op mobiel, laadt snel en draait op https.
De kolom Atlas in de tabellen geeft aan of het punt valt binnen wat Atlas, de onderzoeksengine van Outseen, onderzoekt in de openbare code van de pagina’s die het ophaalt. Wat pas na JavaScript verschijnt, laadtijden en private servercode vallen erbuiten.
Kan een zoekmachine je pagina’s bereiken?
Statuscodes
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
| Pagina’s die gevonden moeten worden, geven statuscode 200 | URL-inspectie in Google Search Console, of de netwerktab in de ontwikkeltools van je browser | Ja |
| Verwijderde pagina’s geven 404 of 410, of verwijzen door naar een passende vervanger | Rapport Pagina-indexering in Search Console, melding “Niet gevonden (404)” | Ja |
| Geen soft 404’s: lege pagina’s of foutmeldingen met statuscode 200 | Rapport Pagina-indexering, melding “Soft 404” | Nee |
| Geen serverfouten (5xx) | Rapport Pagina-indexering in Search Console | Ja, op het moment van ophalen |
Google verwerkt geen inhoud van pagina’s met een 4xx-code en haalt ze uit de index. Bij aanhoudende 5xx-fouten gaat Google langzamer crawlen en vallen pagina’s na verloop van tijd ook uit de index. Wat de codes betekenen, staat bij HTTP-statuscode.
Robots.txt
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
Het bestand staat op jouwdomein.nl/robots.txt en is bereikbaar | Open het adres in je browser | Ja |
| Belangrijke pagina’s, CSS en JavaScript zijn niet uitgesloten | Lees de Disallow-regels na, of bekijk het veld “Crawlen toegestaan?” in de URL-inspectie | Ja |
| Je gebruikt robots.txt niet om pagina’s uit Google te houden | Zoek naar pagina’s die je met Disallow probeert te verbergen | Nee |
Een eenvoudige robots.txt die alleen de winkelwagen en accountpagina’s uitsluit en de sitemap noemt:
User-agent: *
Disallow: /winkelwagen/
Disallow: /account/
Sitemap: https://www.voorbeeld.nl/sitemap.xmlCSS, JavaScript en gewone pagina’s blijven zo bereikbaar voor elke zoekbot.
Mag een zoekmachine je pagina’s indexeren?
Noindex
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
Geen noindex in de meta robots-tag van pagina’s die gevonden moeten worden | Bekijk de broncode en zoek op noindex, of gebruik de URL-inspectie | Ja |
Geen noindex in de HTTP-header X-Robots-Tag | Netwerktab van je browser, antwoordheaders van de pagina | Ja |
De X-Robots-Tag zit in het antwoord van de server en zie je niet in de broncode. Die variant wordt daardoor vaak gemist. Ook robots.txt en noindex worden vaak door elkaar gehaald:
Robots.txt of noindex?
| Disallow in robots.txt | noindex | |
|---|---|---|
| Wat het regelt | Of een zoekbot de pagina mag ophalen | Of de pagina in de index mag |
| Kan de URL in Google verschijnen? | Ja, zonder omschrijving, als andere pagina’s ernaar linken | Nee, zodra Google de instructie heeft gelezen |
| Leest Google de inhoud? | Nee | Ja, de pagina moet opgehaald kunnen worden |
| Gebruik het voor | Delen die zoekbots niet hoeven op te halen, zoals een winkelwagen | Pagina’s die niet in de zoekresultaten horen |
Google schrijft dat in de introductie op robots.txt en in de documentatie over noindex.
Canonicals
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
| Elke indexeerbare pagina heeft een canonical die naar zichzelf wijst | Broncode, zoek op rel="canonical" | Ja |
| De canonical is een volledige URL, geen relatief pad | Broncode | Ja |
| De canonical-URL geeft zelf statuscode 200 en is indexeerbaar | Open de canonical-URL en controleer status en noindex | Ja |
| Google kiest dezelfde canonical als jij | URL-inspectie, velden “Door gebruiker aangegeven” en “Door Google geselecteerd” | Nee |
| Interne links wijzen naar de canonieke versie, niet naar varianten | Steekproef van links in menu’s en teksten | Ja |
Google noemt de canonical een sterk signaal maar geen opdracht. Tegenstrijdige signalen, zoals een sitemap met andere URL’s, kunnen ertoe leiden dat Google een andere versie kiest. Wat een canonical is, lees je bij canonical URL.
Kloppen je redirects en je sitemap?
Redirects
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
| Blijvend verplaatste pagina’s gebruiken een permanente redirect (301 of 308) | Netwerktab van je browser | Ja |
| Redirects zijn server-side, niet via JavaScript | Netwerktab: de statuscode van het eerste antwoord | Ja |
| Geen ketens: een oude URL verwijst direct naar de eindbestemming | Volg een oude URL en tel de tussenstappen | Ja |
Bij een verhuizing van je site adviseert Google redirects zo lang mogelijk te laten staan, in het algemeen minstens een jaar. Meer daarover in website vernieuwen zonder je vindbaarheid te verliezen.
XML-sitemap
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
| Er is een sitemap en die staat vermeld in robots.txt of is ingediend in Search Console | Rapport Sitemaps in Search Console | Nee |
| De sitemap bevat alleen canonieke, indexeerbare URL’s met statuscode 200 | Vergelijk een steekproef uit de sitemap met de werkelijke pagina’s | Nee |
Een sitemap helpt Google pagina’s te ontdekken, maar garandeert niet dat alles wordt gecrawld en geïndexeerd.
Kloppen hreflang en je interne links?
Hreflang
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
| Elke taalversie verwijst naar zichzelf en naar alle andere versies | Broncode van elke taalversie | Ja, tussen de opgehaalde pagina’s |
| Verwijzingen gaan in beide richtingen | Controleer of versie B ook terugverwijst naar versie A | Ja, tussen de opgehaalde pagina’s |
Taalcodes zijn geldig, zoals nl, nl-BE of en-GB | Broncode | Ja |
Verwijst een pagina niet terug, dan negeert Google de hreflang-verwijzingen.
Interne links
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
Links zijn gewone <a href>-links met een echt adres | Broncode, niet alleen de weergave in je browser | Ja |
| Elke belangrijke pagina krijgt minstens één link vanaf een andere pagina | Ga na of je pagina’s via het menu of vanuit teksten bereikbaar zijn | Ja, tussen de opgehaalde pagina’s |
| Linkteksten zeggen waar de link heen gaat, dus geen “klik hier” | Lees de linkteksten in je menu’s en teksten | Ja |
| Geen links naar pagina’s die niet meer bestaan | Rapport Pagina-indexering, of volg links handmatig | Ja, voor gevolgde links |
Google volgt volgens zijn richtlijnen voor links in het algemeen alleen <a>-elementen met een href. Links die alleen via een klik-script werken, kan Google missen.
Staat de inhoud goed in de HTML?
Titels, koppen, alt-teksten, structured data en de tekst zelf horen in de HTML die de server terugstuurt.
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
Elke pagina heeft een eigen, beschrijvende <title>, niet dezelfde als andere pagina’s | Broncode, of zoek op site:jouwdomein.nl en bekijk de titels | Ja |
| Elke belangrijke pagina heeft een eigen meta description die de inhoud samenvat | Broncode | Ja |
Een duidelijke hoofdkop (<h1>) die zegt waar de pagina over gaat | Bekijk de pagina en de broncode | Ja |
De taal van de pagina staat in het lang-attribuut van <html> | Broncode, eerste regel | Ja |
| Inhoudelijke afbeeldingen hebben een beschrijvende alt-tekst | Broncode, zoek op alt= | Nee |
| Structured data is geldig en komt niet dubbel voor, bijvoorbeeld van thema én plugin | Rich Results Test, en zoek in de broncode op application/ld+json | Ja, voor ondersteunde JSON-LD zoals product en kruimelpad |
| Belangrijke tekst en links staan al in de HTML die de server stuurt | Bekijk de broncode (niet de inspector) en zoek je hoofdtekst | Ja, Atlas leest die HTML |
| Google ziet dezelfde inhoud als je bezoekers | URL-inspectie, live test, gerenderde HTML | Nee |
Google kan de getoonde titel en omschrijving zelf aanpassen. Meer over markup staat in structured data uitgelegd.
Google voert JavaScript uit, maar raadt server-side rendering of pre-rendering nog steeds aan en schrijft dat niet alle bots JavaScript kunnen uitvoeren. Hoe dat voor AI-crawlers zit, lees je in kunnen AI-crawlers je website lezen?
Werkt je site goed op mobiel, snel en veilig?
Mobiele weergave
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
| De mobiele versie heeft dezelfde hoofdinhoud als de desktopversie | Vergelijk beide versies op een telefoon en een computer | Nee |
| Titels, omschrijvingen, structured data en alt-teksten zijn op mobiel gelijk | Broncode van de mobiele versie | Nee |
Google gebruikt de mobiele versie van je site voor indexering en rangschikking.
Laadsnelheid
De drie Core Web Vitals
| Wat het meet | Goed als | |
|---|---|---|
| Largest Contentful Paint (LCP) | Hoe snel het grootste element zichtbaar is | Binnen 2,5 seconden |
| Interaction to Next Paint (INP) | Hoe snel de pagina reageert op een klik of tik | Binnen 200 milliseconden |
| Cumulative Layout Shift (CLS) | Hoeveel de pagina verspringt tijdens het laden | Onder 0,1 |
De drempels komen uit de uitleg over Core Web Vitals van Google. Google schrijft er ook bij dat relevantie voorgaat en dat goede scores geen toppositie garanderen.
HTTPS
| Controle | Hoe controleer je het | Atlas |
|---|---|---|
| Alle pagina’s draaien op https | Open je site en kijk naar het adres | Nee |
| http-adressen verwijzen permanent door naar https | Open de http-versie en bekijk de statuscode | Ja, als dat adres wordt opgehaald |
Hoe pakt Outseen een technische controle aan?
Bij Outseen haalt Atlas de openbare pagina’s binnen het afgesproken onderzoek op en controleert onder meer statuscodes, robotsbeleid, indexeringsinstructies in code en headers, canonicals en wat hun doelpagina werkelijk teruggeeft, interne links, hreflang en ondersteunde JSON-LD. Bij elke bevinding legt Atlas vast wat is aangetroffen, in welke bron, op welke URL en wanneer. Na een aanpassing kan Atlas dezelfde pagina opnieuw controleren. Een specialist beoordeelt de bevindingen en bepaalt de volgorde van het werk. Meer over de engine lees je op de pagina over Atlas, en over een uitgebreid onderzoek met prioriteiten op de pagina over de audit.
Wat betekent dit voor jouw bedrijf?
Je hoeft niet de hele lijst in één keer af te werken. Met vijf controles op je belangrijkste pagina’s zie je of er iets ernstigs mis is:
Begin met deze vijf controles
- Open drie belangrijke pagina’s in de URL-inspectie van Search Console en kijk of ze geïndexeerd zijn.
- Open jouwdomein.nl/robots.txt en lees elke Disallow-regel na.
- Zoek in de broncode van die pagina’s op noindex en op rel="canonical".
- Open het rapport Pagina-indexering en noteer de meldingen met de meeste pagina’s.
- Kijk in het rapport Core Web Vitals of er pagina’s als slecht staan gemarkeerd.
Veel technische problemen ontstaan bij een wijziging: een nieuw theme, een plugin-update of een verhuizing naar een ander domein. Plan daarom een controle na elke grotere wijziging en kijk tussendoor in Search Console of er nieuwe meldingen zijn. Ga je je website vernieuwen, lees dan eerst website vernieuwen zonder je vindbaarheid te verliezen.