x-robots-tag-vs-robots-meta-tag-2026.html
< BACK

X-Robots-Tag vs robots meta tag: wenn jedes die Suchmaschine auffordert, eine Seite zu überspringen

Zwei Wege, um Google aufzufordern, eine Seite nicht zu indexieren: das robots meta tag im HTML oder das X-Robots-Tag im HTTP-Response-Header. Sie erfüllen die gleiche Aufgabe. Sie sind nicht austauschbar. Die richtige Wahl hängt davon ab, was die Datei ist (HTML vs PDF vs Bild), wo Sie bearbeiten können (Template vs Server-Konfiguration) und ob Sie es im großen Maßstab brauchen (eine Seite vs zehntausend).

Die beiden Mechanismen in je einem Satz

robots meta tag: <meta name="robots" content="noindex, nofollow"> im <head> eines HTML-Dokuments. Funktioniert nur bei HTML-Seiten, weil es kein Äquivalent in PDF- / Bild- / JSON-Metadaten gibt. Einfach über das Seiten-Template hinzuzufügen.

X-Robots-Tag: X-Robots-Tag: noindex, nofollow als HTTP-Response-Header. Funktioniert bei jedem Ressourcentyp, den der Server zurückgibt — HTML, PDF, Bild, Video, JSON, alles. Konfiguriert im Server (Apache, Nginx, Vercel edge headers, Cloudflare Workers) oder über die Response-API des Frameworks.

Wann robots meta die richtige Wahl ist

  • Ausschluss einer einzelnen Seite: eine bestimmte Seite, die Sie nicht indexiert haben möchten. Fügen Sie das meta tag zum Template dieser Seite hinzu, deployen Sie die Änderung.
  • Template-gesteuerte Seiten: wenn die noindex-Entscheidung pro Seitentyp getroffen wird (z. B. alle /thank-you/-Seiten sollten noindexiert werden). Fügen Sie das Meta-Tag in dem Layout-Template ein, das diese Seiten verwenden.
  • Dynamische Entscheidungen: wenn noindex von Laufzeit-Daten abhängt (z. B. noindex-Seiten mit weniger als 200 Wörtern). Das Meta-Tag wird bedingt im Template gerendert.
  • Wenn Sie keinen Server-Config-Zugriff haben: Shared Hosting, gesperrtes CMS, Agency-Deploy, wo Sie Templates bearbeiten können, aber nicht htaccess. Das Meta-Tag ist Ihre einzige Option.

Wann X-Robots-Tag die richtige Wahl ist

  • Nicht-HTML-Ressourcen: PDFs, Bilder, JSON-Endpoints, Sitemaps. Sie können kein Meta-Tag zu einem PDF hinzufügen. X-Robots-Tag in der HTTP-Response ist der einzige Weg.
  • Musterbasierte Ausschlüsse: „alles unter /admin/* noindexieren" oder „jede .pdf-Datei noindexieren". Einmal auf dem Server konfiguriert, gilt für jede übereinstimmende URL dauerhaft. Viel sauberer als 200 Templates zu bearbeiten.
  • Großflächige Ausschlüsse: 10.000 dynamisch generierte URLs, die nicht indexiert werden sollten. Ein einzelner Nginx-Location-Block schlägt ein Template-Level-Conditional.
  • Wenn Sie Schutz in mehreren Ebenen möchten: kombinieren Sie X-Robots-Tag auf dem Server mit robots-Meta im Template. Jede Ebene erfasst noindex; beide Ebenen bedeuten, dass ein Template-Bug die Seite nicht versehentlich neu indizieren kann.

Was beide setzen können

Beide Mechanismen akzeptieren die gleiche Direktiven-Menge. Die häufigsten: noindex (nicht indexieren), nofollow (Links von dieser Seite nicht folgen), none (= noindex, nofollow), noarchive (gecachte Version nicht anzeigen), nosnippet (Snippet in SERP nicht anzeigen), max-snippet:N (Snippet-Länge begrenzen), max-image-preview:standard|large|none (Bild-Vorschau in AI Overviews steuern — relevant für GEO-Arbeit 2026), max-video-preview:N (Video-Vorschau-Länge begrenzen), unavailable_after:date (auto-noindex nach einem Datum).

Google liest dieselben Direktiven unabhängig davon, welcher Mechanismus sie bereitstellt. Die Wahl des Mechanismus betrifft Skalierung und Ressourcentyp, nicht die Unterstützung von Direktiven.

So setzen Sie X-Robots-Tag auf gängigen Plattformen

Vercel (vercel.json)

Verwenden Sie einen [[headers]]-Block mit einem source-Muster und einem values-Eintrag für X-Robots-Tag. Beispiel: [[headers]] source = "/admin/(.*)" [[headers.values]] X-Robots-Tag = "noindex, nofollow". Gilt für alle URLs, die dem Muster entsprechen.

Netlify (netlify.toml)

[[headers]]-Block mit einem for-Pfadmuster und values.X-Robots-Tag gesetzt. Beispiel: [[headers]] for = "/admin/*" [headers.values] X-Robots-Tag = "noindex, nofollow".

Apache (.htaccess)

<FilesMatch "\.pdf$"> Header set X-Robots-Tag "noindex, nofollow" </FilesMatch> für Dateimusters-Matching. Oder verwenden Sie <Location /admin> Header set X-Robots-Tag "noindex, nofollow" </Location> für Pfad-Matching.

Nginx

location ~ /admin/ { add_header X-Robots-Tag "noindex, nofollow"; } innerhalb des server-Blocks. Das ~ in location passt regex an; verwenden Sie location ^~ für reines Präfix-Matching.

Cloudflare Workers / Edge

Ändern Sie die Response-Header im Worker-Skript: response.headers.set('X-Robots-Tag', 'noindex, nofollow'). Nützlich für Websites, bei denen der Origin-Server den Header nicht ohne weiteres ausgeben kann.

Überprüfung des gesetzten Headers

curl -I https://example.com/page gibt alle Response-Header zurück, einschließlich X-Robots-Tag. Suchen Sie nach der X-Robots-Tag-Zeile in der Ausgabe. Falls sie fehlt, wird der Header nicht gesetzt.

Für die Search-Console-Verifikation: Das URL-Inspektions-Tool zeigt die Direktiven, die Google sowohl aus dem Meta-Tag als auch aus dem HTTP-Header aufgegriffen hat. Wenn eine der beiden Ebenen noindex setzt, indiziert Google nichts. Es lohnt sich, beide Ebenen zu überprüfen, da ein falsch konfiguriertes CDN Header stillschweigend entfernen kann.

Das Verteidigungsmuster in Tiefengestaffelt

Das stärkste Produktions-Setup verwendet beide. Server-Level X-Robots-Tag für das Pfad-Muster (z. B. /admin/*) plus Template-Level Meta-Robots im Seiten-<head> für die gleichen Seiten. Zwei Ebenen bedeuten, dass ein Template-Bug oder eine CDN-Fehlkonfiguration Seiten, die privat sein sollten, nicht versehentlich erneut indizieren kann.

So ist der Admin-Bereich dieser Website konfiguriert: vercel.json setzt X-Robots-Tag: noindex, nofollow auf /admin/*, UND die AdminLayout-Template gibt <meta name="robots" content="noindex, nofollow"> im Head aus. Doppelte Sicherheit.

Häufige Fehler

  • noindex zu einer Seite hinzufügen, die bereits durch robots.txt blockiert ist. Disallow in robots.txt verhindert, dass Googlebot die Seite überhaupt abruft, sodass die noindex-Direktive nie zu sehen bekommt. Die Seite kann ohne Snippet indiziert enden, weil Google die URL anderswo gesehen hat, aber sie nicht abrufen kann. Entfernen Sie die Disallow-Regel, damit der Bot die Seite abrufen + die noindex-Direktive sehen kann.
  • noindex über Meta-Tag in JavaScript-gerendertem HTML setzen. Einige Bots führen JS aus, andere nicht. Die sichere Variante ist serverseitiges Rendering des noindex Meta-Tags ODER ein X-Robots-Tag im HTTP-Header, das keine JS-Ausführung erfordert.
  • noindex auf einer Seite setzen, die Backlinks hat. Google respektiert noindex, aber die Link-Equity dieser Backlinks geht verloren. Besser ist eine 301-Weiterleitung der Seite zu einer verwandten URL, die die Equity aufnimmt.
  • Vergessen, dass X-Robots-Tag pro-Response ist, nicht pro-Server. CDN-Cache-Treffer entfernen manchmal Custom-Header; verifizieren Sie mit curl nach dem Deploy.

Die Zusammenfassung

robots Meta-Tag: pro-Seite, im HTML, Bearbeitung auf Template-Ebene. X-Robots-Tag: pro-Response, im HTTP-Header, Bearbeitung auf Server-Ebene. Beide funktionieren für HTML; nur X-Robots-Tag funktioniert für Non-HTML. Verwenden Sie beide, wenn noindex wichtig ist.

Weiterführende Lektüre: 410 vs 404 behandelt den Stilllegungsfall (URLs verschwinden); 301 vs 302 vs 307 vs 308 behandelt den Weiterleitungsfall (URLs werden verschoben). Zusammen mit noindex sind sie die drei wichtigsten Tools, um Google zu sagen, was mit einer URL zu tun ist.

< BACK