XML-sitemap maken en indienen bij Google (+ zo controleer je hem)
Kort antwoord: Een XML-sitemap is een bestand dat de adressen opsomt die zoekmachines moeten kennen: per pagina één
<url>-vermelding, met het adres in<loc>en, als het klopt, de datum van de laatste wijziging in<lastmod>. Je laat hem maken door je CMS of uit de gegevens van je website, blijft per bestand bij hooguit 50.000 adressen en 50 MB, noemt hem inrobots.txten dient hem in bij het rapport Sitemaps in Search Console. Indienen is een hint, geen belofte: Google garandeert niet dat het de opgesomde pagina’s crawlt of indexeert.
Wat staat er in een XML-sitemap?
Zo begint de sitemap van seogrinder.com, zoals we hem op 4 november 2026 hebben opgehaald (curl -sS https://seogrinder.com/sitemap.xml | head -5):
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>https://seogrinder.com/</loc><lastmod>2026-11-04</lastmod></url>
<url><loc>https://seogrinder.com/imprint</loc><lastmod>2026-11-02</lastmod></url>
<url><loc>https://seogrinder.com/privacy</loc><lastmod>2026-11-02</lastmod></url>
Het sitemapprotocol van sitemaps.org vraagt om drie dingen: een openende <urlset>-tag met de naamruimte, per pagina een <url>-vermelding en daarin een <loc>. Alle andere tags zijn optioneel, en ondersteuning voor die optionele tags kan per zoekmachine verschillen. Het bestand moet UTF-8 zijn, tekens als & moeten worden ge-escaped (&) en alle adressen in één bestand moeten bij één host horen.
In ons eigen bestand tellen we 425 <loc>-vermeldingen (curl -sS https://seogrinder.com/sitemap.xml | grep -o '<loc>' | wc -l, 5 november 2026): de startpagina, vier juridische pagina’s (impressum en privacyverklaring, elk in het Engels en het Duits), twaalf blogoverzichten en 408 artikelen. Elke vermelding heeft alleen <loc> en <lastmod>: geen <changefreq>, geen <priority>, geen hreflang-annotaties. Het bestand is 45.765 bytes groot (curl -sS https://seogrinder.com/sitemap.xml | wc -c).
Heb je een XML-sitemap nodig?
Niet altijd. In het overzicht over sitemaps van Google staat: zijn je pagina’s goed aan elkaar gelinkt, dan kan Google de meeste ervan meestal zelf vinden. Een sitemap helpt het meest bij een grote site, bij een nieuwe site met weinig externe links en bij een site met veel video, afbeeldingen of nieuws. Je hebt er mogelijk geen nodig als je site klein is (ongeveer 500 pagina’s of minder, waarbij alleen pagina’s tellen die in de zoekresultaten moeten verschijnen) en elke belangrijke pagina via links vanaf de startpagina bereikbaar is. Toch, voegt Google toe, hebben de meeste sites baat bij een sitemap.
Gebruik je WordPress, Wix of Blogger, dan heeft je CMS volgens Google waarschijnlijk al een sitemap beschikbaar gemaakt. Open /sitemap.xml op je site voordat je een tweede bestand bouwt.
Een sitemap vervangt geen links. Ontbreekt een pagina die je verwacht bij Google, dan is een ontbrekende sitemap maar één van meerdere mogelijke oorzaken. Ook voor een gloednieuwe pagina is de sitemap slechts één stap.
Zo maak je een XML-sitemap
Begin met de lijst van adressen, niet met het gereedschap. Volgens Google noemt een sitemap de URL’s die je in de resultaten wilt zien, dus de canonical-URL’s: is dezelfde inhoud via meerdere adressen bereikbaar, zet dan alleen je voorkeursadres erin.
Kies dan een route, zoals de Google-pagina Een sitemap maken en indienen die beschrijft:
- Laat je CMS hem schrijven, als dat kan.
- Schrijf hem met de hand bij minder dan een paar dozijn adressen. Grotere handgemaakte bestanden noemt Google omslachtig en moeilijk te onderhouden.
- Laat hem genereren uit je eigen gegevens als het er meer zijn. Volgens Google is het het best als de software van je website het bestand schrijft. De volgorde van de vermeldingen maakt voor Google niet uit.
Ons bestand wordt gegenereerd: een script schrijft de blogvermeldingen uit de artikelbestanden en laat de startpagina en de juridische pagina’s met rust.
Wat in het bestand hoort:
- Erin: volledige adressen met
https://van pagina’s die met status 200 antwoorden, geïndexeerd mogen worden en in de zoekresultaten moeten verschijnen. Google vraagt om volledige adressen en crawlt ze precies zoals ze er staan. - Eruit: adressen die doorverwijzen (de Search Console-help zegt ze te vervangen door de adressen die gecrawld moeten worden), pagina’s met een foutstatus en dubbelen van een pagina die er al in staat. Volgens ons horen ook pagina’s met
noindexer niet in: de sitemap nodigt Google uit en de tag stuurt het weg.
Zet het bestand in de hoofdmap, bijvoorbeeld https://example.com/sitemap.xml. Google raadt de hoofdmap aan; een sitemap in een submap geldt alleen voor adressen eronder, tenzij je hem via Search Console indient.
Hoe groot mag een XML-sitemap zijn?
Eén bestand mag hooguit 50.000 adressen bevatten en uitgepakt hooguit 50 MB groot zijn. Je mag het met gzip comprimeren, maar de uitgepakte grootte telt (sitemaps.org). Wordt het meer, splits de lijst dan en noem de bestanden in een sitemapindex. Die mag tot 50.000 sitemaps opsommen, en alleen sitemaps van de eigen site. Ons bestand zit ver onder beide grenzen, dus een index hebben we niet nodig.
lastmod: alleen invullen als de pagina echt is gewijzigd
<lastmod> is de enige optionele tag waarbij zorgvuldigheid loont. Google gebruikt de waarde als hij “consistently and verifiably” klopt, dus consequent en controleerbaar. Een belangrijke wijziging betreft de hoofdinhoud, de gestructureerde gegevens of de links; een nieuw copyrightjaar telt niet. Het protocol is directer: de datum moet “the date the linked page was last modified, not when the sitemap is generated” zijn, dus de dag waarop de pagina voor het laatst is gewijzigd en niet de dag waarop de sitemap ontstaat.
Zet dus niet bij elke build de datum van vandaag in alle vermeldingen. Google negeert <priority> en <changefreq>; laat beide weg.
In ons bestand hebben 313 van de 425 vermeldingen 2026-11-04, 108 hebben 2026-11-05 en vier hebben 2026-11-02 (curl -sS https://seogrinder.com/sitemap.xml | grep -o '<lastmod>[^<]*' | sort | uniq -c, 5 november 2026). De artikelvermeldingen nemen de datum over uit de regel updated van elk artikel; daarom delen veel vermeldingen een datum als artikelen op dezelfde dag zijn geschreven of herzien.
Hoe dien je een XML-sitemap in bij Google?
Er zijn drie manieren, en je kunt ze combineren:
- robots.txt. Voeg
Sitemap: https://example.com/sitemap.xmltoe met het volledige adres. De regel hoort bij geen enkele user-agentgroep, zijn plek in het bestand maakt niet uit en je kunt er meerdere opgeven. Google vindt hem bij de volgende keer dat het je robots.txt ophaalt. Heb je een indexbestand, dan dien je het indexbestand in. Bij ons is het de laatste regel van onze robots.txt (4 november 2026):Sitemap: https://seogrinder.com/sitemap.xml. - Het rapport Sitemaps in Search Console. De stappen staan hieronder.
- De Search Console API, als je vanuit code wilt indienen.
Indienen betekent Google laten weten waar het bestand staat. Volgens de help bij het rapport Sitemaps kun je een sitemap niet echt uploaden naar Google (“You cannot actually upload a sitemap to Google.”). De stappen:
- Controleer of je eigenaarsrechten voor de property hebt. Zonder die rechten noem je de sitemap in plaats daarvan in robots.txt.
- Publiceer de sitemap op je site.
- Doe voor het adres een livetest met “Live-URL testen” in de URL-inspectie en controleer of het ophalen van de pagina is geslaagd.
- Open het rapport Sitemaps, plak het adres in het veld voor een nieuwe sitemap en verzend het.
Google zegt dat het bestand normaal meteen wordt opgehaald, maar dat het crawlen van de adressen erin tijd kan kosten en niet alle adressen worden gecrawld. Google schrijft zelf “submitting a sitemap is merely a hint”, indienen is dus slechts een hint (Google). Het rapport toont per sitemap een status (gelukt, kon niet worden opgehaald, of fouten), wanneer Google hem voor het laatst las en hoeveel pagina’s het erin heeft gevonden. Gevonden is niet geïndexeerd: volgens Google is er geen garantie dat een gevonden pagina is of wordt gecrawld of geïndexeerd. Het rapport toont bovendien alleen sitemaps die via het rapport of de API zijn ingediend, niet die Google via robots.txt heeft gevonden.
Dit artikel volgt de documentatie van Google. Het toont geen schermafbeeldingen van Search Console en meldt geen resultaat van een indiening voor ons eigen bestand.
Een XML-sitemap controleren
- Ophalen.
curl -sSI https://example.com/sitemap.xmlhoort status 200 en een XML-contenttype te tonen. Bij ons kwam op 4 november 2026HTTP/2 200encontent-type: application/xml; charset=utf-8terug. - Het begin lezen. Het bestand begint met
<urlseten de naamruimte, is UTF-8 en bevat geen relatieve adressen. - Elk adres opvragen. De lus hieronder volgt geen omleidingen, dus een omleiding verschijnt als 301 of 302.
- Controleren of Google het kan ophalen. Gebruik de livetest van hierboven. Google houdt zich ook bij het ophalen van een sitemap aan robots.txt; een regel die het bestand blokkeert, stopt dat.
- Het rapport Sitemaps lezen zodra je hebt ingediend, en bij fouten de sitemap aanklikken voor details.
for u in $(curl -sS https://seogrinder.com/sitemap.xml | grep -o 'https://seogrinder.com/[^<]*'); do
curl -sS -o /dev/null -w '%{http_code}\n' "$u"
done | sort | uniq -c
Op 5 november 2026, rond 13:40 UTC, gaf dit 425 200: alle 425 adressen antwoordden met 200.
SEOgrinder is ons eigen gratis hulpmiddel en wij bouwen het. Scan een pagina en bekijk de takenlijst (“Taken”) en het punt “Agents de weg wijzen” (label “Sitemap”) in het tabblad “AI-gereedheid”. Het leest de sitemap die in robots.txt staat, of /sitemap.xml als robots.txt er geen noemt, en kan het volgende melden:
| Bevinding | Wanneer ze verschijnt |
|---|---|
| Geen sitemap gevonden | Noch robots.txt noch /sitemap.xml leverde er een |
| Sitemap niet vermeld in robots.txt | Er is een sitemap, maar robots.txt noemt hem niet |
| Sitemap-vermeldingen zonder lastmod-datum | Minder dan de helft van de vermeldingen heeft een datum |
| “3 van de 15 gecontroleerde sitemap-URL’s antwoorden niet met 200” (voorbeeldgetallen) | Een steekproef gaf fouten of omleidingen |
| Sitemap noemt een pagina met noindex | Gevonden door de Websitedoorloop |
Het test een steekproef van maximaal 15 adressen, gelijkmatig over de lijst verdeeld, en niet elk adres. Daarom loont de lus hierboven. Verder leest het hooguit 3 MB per bestand en tien sitemaps van een index, en markeert het een grotere als niet volledig gelezen.
Veelgemaakte fouten
- Adressen die doorverwijzen, falen of noindex dragen. Search Console meldt onbereikbare adressen; vervang een omleiding door zijn doel.
- Elke variant van een pagina. Zet je http en https, met en zonder www of parameterversies erin: noem de canonical-versie.
- De datum van vandaag als lastmod bij elke build. Google gebruikt de datum als hij consequent en controleerbaar klopt.
- Adressen die het bestand niet mag bevatten. Search Console meldt dat als “URL not allowed” (URL niet toegestaan): een ander domein, een ander protocol of een map boven die van de sitemap zelf.
- “Ingediend” lezen als “geïndexeerd”. Een ingediende sitemap garandeert niets.
- Een falend bestand laten liggen. Google probeert een mislukte opvraging een paar dagen opnieuw en stopt dan. Los de oorzaak op en dien opnieuw in.
Veelgestelde vragen
Moet ik de sitemap indienen als robots.txt hem al noemt?
Nee. Google vindt een sitemap uit robots.txt bij de volgende keer dat het dat bestand ophaalt. Indienen levert je het rapport op: je ziet wanneer Googlebot het bestand ophaalde en welke fouten hij tegenkwam.
Verbetert een XML-sitemap mijn ranking?
Google beschrijft het doel als ontdekking: hij helpt zoekmachines adressen te vinden en kan het crawlen van grotere of complexere sites verbeteren. De pagina’s die we aanhalen beloven niets over posities, en niemand kan dat.
Je volgende stap
Laat de lus hierboven over je eigen sitemap lopen en repareer elk adres dat niet met 200 antwoordt. Scan daarna je site met SEOgrinder, open de takenlijst en begin met de sitemapbevindingen. Klik na je wijzigingen op Opnieuw controleren, en dien het bestand, als je dat nog niet hebt gedaan, in bij het rapport Sitemaps in Search Console.