XML-Sitemap: erstellen, prüfen und einreichen
So erstellen Sie eine Sitemap mit den finalen kanonischen URLs, prüfen ihre Einträge und nutzen sie zusammen mit interner Verlinkung und robots.txt.
Eine XML-Sitemap ist eine maschinenlesbare Liste von URLs, die Suchmaschinen helfen, die bevorzugten Seiten zu finden. Sie ergänzt crawlbare interne Links und garantiert keine Indexierung. Nehmen Sie nur finale, kanonische URLs auf, die zur Indexierungsrichtlinie der Website passen.
Das Protokoll sitemaps.org wurde 2005 eingeführt. Google hat es als Erster übernommen, Yandex folgte ein Jahr später. Heute unterstützen alle großen Suchmaschinen den Standard.
Was ist eine XML-Sitemap und warum Sie sie brauchen
Ein Suchbot findet Seiten auf zwei Wegen: durch das Folgen interner Links und durch das Lesen von Sitemaps. Das Crawling über Links funktioniert gut für Seiten mit vielen eingehenden Links. Seiten ohne jeden Link, neu veröffentlichte Inhalte oder Bereiche mit schwacher interner Verlinkung können aber übersehen oder zu spät entdeckt werden. Genau hier hilft eine Sitemap.
Beschleunigt das Crawling
Der Bot erhält die URL-Liste direkt und muss nicht Seite für Seite interne Links abarbeiten.
Signalisiert Aktualisierungen
Das Attribut lastmod zeigt der Suchmaschine, dass sich eine Seite geändert hat und erneut gecrawlt werden sollte.
Unterstützt mehrsprachige Websites
Über xhtml:link deklarieren Sie hreflang-Beziehungen direkt in der Sitemap, ohne Tags im HTML zu duplizieren.
Grundaufbau der Datei
Eine minimal gültige Sitemap ist eine XML-Datei mit einer Kodierungsangabe, einem Wurzelelement urlset und darin enthaltenen url-Elementen. Jedes url-Element muss mindestens ein Pflichtattribut enthalten: loc.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/</loc>
<lastmod>2026-05-15</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>https://example.com/about</loc>
<lastmod>2026-04-01</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://example.com/blog/article-slug</loc>
<lastmod>2026-05-10</lastmod>
<changefreq>monthly</changefreq>
<priority>0.75</priority>
</url>
</urlset>Die Datei muss in UTF-8 kodiert sein. Sonderzeichen in URLs werden nach XML-Regeln maskiert: & wird zu &, < wird zu <. Eine einzelne Sitemap-Datei ist auf 50.000 URLs und 50 MB unkomprimiert begrenzt.
Attribute: loc, lastmod, changefreq, priority
| Attribut | Pflicht | Format | Beschreibung |
|---|---|---|---|
| loc | Ja | Absolute URL | Vollständige Seitenadresse mit Protokoll und Domain. Maximal 2048 Zeichen. |
| lastmod | Nein | W3C Datetime (YYYY-MM-DD) | Datum der letzten Änderung. Google berücksichtigt den Wert nur, wenn er stabil und korrekt ist. |
| changefreq | Nein | always / hourly / daily / weekly / monthly / yearly / never | Hinweis zur Aktualisierungsfrequenz. Google nutzt ihn als ein Signal, hält sich aber nicht strikt daran. |
| priority | Nein | 0.0 — 1.0 | Relative Wichtigkeit der URL innerhalb Ihrer Website. Beeinflusst nicht das Ranking in den Suchergebnissen. |
loc – das einzige Pflichtattribut
Die URL muss absolut sein und dem entsprechen, was der Server tatsächlich ausliefert. Wird die Seite über HTTPS ausgeliefert, muss loc HTTPS verwenden. Nutzt die Website www, muss loc www enthalten. Weicht loc von der realen Adresse ab, ignoriert Google den Eintrag.
lastmod – das wertvollste optionale Attribut
Das Datum muss echte inhaltliche Änderungen widerspiegeln, nicht Template-Updates oder die Neugenerierung der Sitemap. Setzen Sie lastmod bei jedem Deployment neu, ohne dass sich der Inhalt ändert, hört Google auf, dem Feld zu vertrauen, und ignoriert es. Zulässige Formate: 2026-05-15, 2026-05-15T10:30:00+03:00, 2026-05-15T07:30:00Z.
changefreq – ein Hinweis, keine Anweisung
changefreq steuert nicht den Zeitplan des Crawlers, es ist nur ein Hinweis. Google erklärt offiziell, dass der Wert als eines von vielen Signalen genutzt wird. Auch Yandex behandelt das Feld als informativ. Übliche Richtwerte: Startseite – daily, Blogbeiträge – monthly, rechtliche Seiten – yearly.
priority – relative Wichtigkeit innerhalb der Website
Der Wert priority von 0,0 bis 1,0 zeigt der Suchmaschine, welche Seiten Sie für wichtiger halten, und zwar relativ zur eigenen Website, nicht im Vergleich zu anderen Websites. Der Wert 1,0 für jede Seite ist sinnlos: Die Suchmaschine wertet das als fehlende Priorisierung. Ein sinnvolles Schema: Startseite 1,0, Bereichs-Hubs 0,85, Artikel und Produkte 0,7–0,75, Hilfsseiten 0,5.
Sitemap-Index: wenn eine Datei nicht reicht
Bei mehr als 50.000 Seiten oder einer Datei über 50 MB brauchen Sie einen Sitemap-Index. Das ist eine XML-Datei, die auf untergeordnete Sitemaps verweist und nicht direkt auf URLs. Jede untergeordnete Datei ist ein normales urlset mit maximal 50.000 Einträgen.
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://example.com/sitemap/blog.xml</loc>
<lastmod>2026-05-15T00:00:00Z</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap/products.xml</loc>
<lastmod>2026-05-14T00:00:00Z</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap/static.xml</loc>
<lastmod>2026-04-01T00:00:00Z</lastmod>
</sitemap>
</sitemapindex>Sie können nach Inhaltstyp (Blog, Produkte, statische Seiten) oder nach Sprachversion (ru.xml, en.xml) aufteilen. Beide Varianten sind gültig. Die Aufteilung nach Sprachversion erleichtert es, den Indexierungsstatus je Sprache getrennt zu überwachen.
Bild-Sitemap
Bilder können in der Google-Bildersuche erscheinen und zusätzlichen Traffic bringen. Damit der Crawler sie findet und einordnet, ergänzen Sie Ihr urlset um die Bild-Erweiterung. Jeder url-Eintrag kann bis zu 1.000 Bilder enthalten.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<url>
<loc>https://example.com/gallery/city</loc>
<image:image>
<image:loc>https://example.com/images/city-skyline.jpg</image:loc>
<image:title>City skyline at sunset</image:title>
<image:caption>Downtown panorama taken from the observation deck, 2025</image:caption>
<image:geo_location>New York, USA</image:geo_location>
<image:license>https://creativecommons.org/licenses/by/4.0/</image:license>
</image:image>
</url>
</urlset><url>-Tags und zulässige Werte:| Tag | Pflicht | Beschreibung |
|---|---|---|
| image:loc | Ja | Absolute Bild-URL. Kann auf einer anderen Domain liegen (z. B. CDN). |
| image:title | Nein | Bildtitel. Entspricht dem title-Attribut des img-Tags. |
| image:caption | Nein | Bildunterschrift. Entspricht dem alt-Attribut des img-Tags. |
| image:geo_location | Nein | Geografischer Ort des Motivs im Bild. |
| image:license | Nein | URL der Bildlizenz. |
Bilder in der Sitemap ersetzen nicht das alt-Attribut im HTML. Beides arbeitet zusammen: Die Sitemap hilft dabei, das Bild zu finden, alt beschreibt seine Bedeutung.
Video-Sitemap
Eine Video-Sitemap sorgt dafür, dass Ihre Inhalte in der Google-Videosuche und in Rich-Snippets mit Videovorschau erscheinen. Der Namespace ist video.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
<url>
<loc>https://example.com/tutorials/getting-started</loc>
<video:video>
<video:thumbnail_loc>https://example.com/thumbnails/tutorial-1.jpg</video:thumbnail_loc>
<video:title>Getting started with the product</video:title>
<video:description>Step-by-step guide for first-time users</video:description>
<video:content_loc>https://example.com/videos/tutorial-1.mp4</video:content_loc>
<video:duration>183</video:duration>
<video:publication_date>2026-03-10T12:00:00+00:00</video:publication_date>
<video:family_friendly>yes</video:family_friendly>
</video:video>
</url>
</urlset>video:duration wird in Sekunden angegeben. video:content_loc muss auf eine abspielbare Datei (mp4, webm) zeigen, nicht auf eine Player-Seite. Bei Videos, die auf YouTube oder Vimeo gehostet sind, verwenden Sie video:player_loc statt video:content_loc.
News-Sitemap
Die Google News Sitemap ist ein spezielles Format für Verlage, die an Google News teilnehmen. Sie enthält nur Artikel, die in den letzten 48 Stunden veröffentlicht wurden. Ältere Inhalte sollten nicht aufgenommen werden, sie werden automatisch aus dem Nachrichtenindex entfernt.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:news="http://www.google.com/schemas/sitemap-news/0.9">
<url>
<loc>https://example.com/news/tech-breakthrough-2026</loc>
<news:news>
<news:publication>
<news:name>Example Daily</news:name>
<news:language>en</news:language>
</news:publication>
<news:publication_date>2026-05-15T09:00:00+00:00</news:publication_date>
<news:title>Technology breakthrough set to transform the industry</news:title>
</news:news>
</url>
</urlset>Lokalisierung: hreflang in Sitemaps
Wenn Ihre Website in mehreren Sprachen oder für mehrere Regionen existiert, verknüpfen Sie die entsprechenden Seiten über hreflang. Das geht auf drei Wegen: über link-rel-Tags im HTML, über HTTP-Link-Header oder direkt in der Sitemap. Für große Websites ist die Sitemap am praktischsten, weil sie keine Änderungen an den Seitenvorlagen erfordert.
In der Sitemap wird hreflang über den xhtml-Namespace deklariert. Jede Seite muss als url-Eintrag erscheinen, und jeder Eintrag muss alle Sprachvarianten auflisten, einschließlich der eigenen.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<!-- Russian version -->
<url>
<loc>https://example.com/blog/seo-guide</loc>
<xhtml:link rel="alternate" hreflang="ru" href="https://example.com/blog/seo-guide"/>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/blog/seo-guide"/>
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/blog/seo-guide"/>
</url>
<!-- English version -->
<url>
<loc>https://example.com/en/blog/seo-guide</loc>
<xhtml:link rel="alternate" hreflang="ru" href="https://example.com/blog/seo-guide"/>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/blog/seo-guide"/>
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/blog/seo-guide"/>
</url>
</urlset>Der Wert x-default kennzeichnet die Fallback-Seite, also die Seite, die Nutzern angezeigt wird, auf die keine der expliziten Spracheinstellungen passt. Das ist in der Regel die Hauptsprachversion der Website.
| hreflang-Code | Anwendungsfall |
|---|---|
| ru | Russische Sprache, beliebige Region |
| en | Englische Sprache, beliebige Region |
| en-US | Englische Sprache, Region USA |
| ru-RU | Russische Sprache, Region Russland |
| x-default | Standardseite für nicht bestimmbare Sprache/Region |
robots.txt: eine Zeile genügt
Damit Suchmaschinen Ihre Sitemap finden, reicht eine einzige Sitemap-Direktive in der robots.txt. Verwenden Sie einen Sitemap-Index, verweisen Sie darauf. Der Crawler findet alle untergeordneten Dateien automatisch über den Index.
User-agent: *
Disallow: /admin/
Disallow: /api/
Allow: /
Sitemap: https://example.com/sitemap.xmlWenn Sie mehrere Index-Dateien auf oberster Ebene haben (z. B. getrennte für ru und en), können Sie mehrere Sitemap-Direktiven angeben:
Sitemap: https://example.com/sitemap/index-ru.xml
Sitemap: https://example.com/sitemap/index-en.xmlDokumentation von Google und Yandex
Offizielle Sitemap-Dokumentation von Google
Offizielle Sitemap-Dokumentation des Yandex Webmaster
Yandex unterstützt den Standard sitemaps.org und zusätzlich die Erweiterung für Nachrichten. changefreq und priority liest Yandex, empfiehlt aber vor allem ein korrektes lastmod. Das ist für das erneute Crawlen geänderter Seiten wichtiger.
Checkliste
- Datei ist UTF-8-kodiert, mit <?xml version="1.0" encoding="UTF-8"?> in der ersten Zeile
- Alle URLs sind absolut (mit Protokoll und Domain) und stimmen mit der echten kanonischen URL überein
- HTTPS in loc, wenn die Website über HTTPS läuft
- lastmod spiegelt das echte Datum der Inhaltsänderung wider, nicht das Build-Datum
- Die Datei überschreitet nicht 50.000 URLs oder 50 MB unkomprimiert
- Bei großen Websites: Sitemap-Index mit untergeordneten Dateien
- Bei mehrsprachigen Seiten: xhtml:link mit hreflang einschließlich x-default
- Bei Medieninhalten: passende Erweiterungen (image, video, news)
- Die robots.txt enthält eine Sitemap-Direktive mit absoluter URL
- Sitemap ist in der Google Search Console und im Yandex Webmaster eingereicht
- Seiten mit noindex sind nicht in der Sitemap enthalten
- Seiten mit einem Canonical auf eine andere URL sind nicht in der Sitemap enthalten
FAQ
Ist für eine kleine Website eine Sitemap erforderlich?
Sollten Seiten mit noindex in die Sitemap aufgenommen werden?
Beeinflusst priority das Ranking in der Suche?
Wie oft sollte die Sitemap aktualisiert werden?
Wie viele Sitemaps kann man in der robots.txt angeben?
Check it with SpiderHead
Free and local: run the audit on your own machine.



