hreflang erklärt: unser 12-Sprachen-Setup und 5 typische Fehler

Von SEOgrinder · Veröffentlicht · Aktualisiert · 8 Min. Lesezeit

Kurzantwort: hreflang ist eine Angabe im Quelltext, die Google mitteilt, welche Seiten Sprach- oder Regionsfassungen desselben Inhalts sind, damit die Suche jedem Besucher die passende zeigt. Jede Fassung muss sich selbst und alle anderen nennen, und jedes Paar muss sich gegenseitig verweisen, sonst können die Angaben ignoriert werden. Unten steht, wie seogrinder.com hreflang für zwölf Sprachen setzt und fünf hreflang-Fehler aus Googles Dokumentation.

Was macht hreflang, und wann brauchst du es?

Google erklärt die Idee auf der Seite Tell Google about localized versions of your page: Wer mehrere Fassungen einer Seite für verschiedene Sprachen oder Regionen hat und Google davon erzählt, erreicht laut Google, dass die Suche den Nutzern die passende Fassung zeigt. Der Wortlaut: „help Google Search point users to the most appropriate version of your page by language or region“.

Drei Fälle nennt Google, in denen die Angabe empfohlen ist:

  • Der Hauptinhalt bleibt in einer Sprache, nur die Vorlage (Navigation, Fußzeile) ist übersetzt.
  • Es gibt kleine regionale Unterschiede bei ähnlichem Inhalt in einer Sprache, etwa Englisch für die USA, Großbritannien und Irland.
  • Der Inhalt ist vollständig übersetzt, etwa eine deutsche und eine englische Fassung jeder Seite.

Google kann Fassungen auch von selbst finden, rät aber, sie ausdrücklich anzugeben. Eine übersetzte Seite ist kein Duplikat: Fassungen „are only considered duplicates if the main content of the page remains untranslated“ (Google).

Zwei Dinge, die hreflang nicht ist. Es ist nicht der Weg, auf dem Google die Sprache einer Seite erkennt: Google schreibt, es „doesn't use hreflang or the HTML lang attribute to detect the language of a page“ (Google), und die Seite zu mehrsprachigen Websites ergänzt, dass es dafür den sichtbaren Inhalt nutzt. Und es ist kein Ranking-Versprechen: Google nennt nur einen Zweck, nämlich jedem Suchenden die passende Fassung zu zeigen.

So verbindet seogrinder.com zwölf Sprachen

Dieser Abschnitt beschreibt den Blog von seogrinder.com, wie wir ihn am 5. November 2026 vorgefunden haben. Die Startseite / trägt keine hreflang-Tags. Jeder Artikel ist eine eigene Seite in einer Sprache. Lies die Tags selbst:

curl -sS https://seogrinder.com/de/blog/seo-audit-checkliste | grep '<link rel="alternate" hreflang'

Das ergibt 13 Zeilen, auf allen zwölf Fassungen dieses Artikels dieselben:

<link rel="alternate" hreflang="en" href="https://seogrinder.com/en/blog/seo-audit-checklist">
<link rel="alternate" hreflang="ar" href="https://seogrinder.com/ar/blog/qaimat-tadqiq-seo">
<link rel="alternate" hreflang="de" href="https://seogrinder.com/de/blog/seo-audit-checkliste">
<link rel="alternate" hreflang="es" href="https://seogrinder.com/es/blog/checklist-seo-auditoria">
<link rel="alternate" hreflang="fr" href="https://seogrinder.com/fr/blog/checklist-audit-seo-gratuite">
<link rel="alternate" hreflang="hi" href="https://seogrinder.com/hi/blog/seo-audit-checklist-hindi">
<link rel="alternate" hreflang="it" href="https://seogrinder.com/it/blog/checklist-audit-seo">
<link rel="alternate" hreflang="ja" href="https://seogrinder.com/ja/blog/seo-chekkurisuto">
<link rel="alternate" hreflang="ko" href="https://seogrinder.com/ko/blog/seo-chekeuliseuteu-jeomgeom">
<link rel="alternate" hreflang="nl" href="https://seogrinder.com/nl/blog/seo-audit-checklist-uitvoeren">
<link rel="alternate" hreflang="pl" href="https://seogrinder.com/pl/blog/checklista-seo-audyt">
<link rel="alternate" hreflang="pt" href="https://seogrinder.com/pt/blog/checklist-de-auditoria-seo">
<link rel="alternate" hreflang="x-default" href="https://seogrinder.com/en/blog/seo-audit-checklist">

Was der Block zeigt:

  • Eine Methode. Die Tags stehen im HTML-Kopf. Diese Seiten senden hreflang nicht im HTTP-Header, und die sitemap.xml hat keine xhtml:link-Einträge. Google nennt die drei Methoden gleichwertig und sieht keinen Vorteil darin, alle zu nutzen.
  • Einfache Sprachcodes. Zwölf Codes, keine Regionen, weil es von jeder Sprache genau eine Fassung des Artikels gibt.
  • Jede Seite nennt sich selbst. Auf der deutschen Fassung ist die Zeile de die eigene Adresse. Alle zwölf Fassungen tragen dieselben Zeilen.
  • Schlichte Tags. Sie stehen im <head>, je ein <link>, ohne zusätzliche Attribute. Google verlangt einen wohlgeformten Kopf und warnt davor, hreflang mit Attributen wie media in einem Tag zu mischen.
  • Canonical zeigt auf sich selbst. Jede Fassung nennt ihre eigene Adresse als Canonical, nicht die englische. Das passt zu Googles Aussage, dass übersetzte Fassungen keine Duplikate sind.
  • Eine eigene Adresse je Sprache, keine automatische Weiterleitung. /de/blog/seo-audit-checkliste hat einen deutschen Slug. Google empfiehlt eigene Adressen je Sprache statt Cookies oder Browsereinstellungen und rät davon ab, Besucher nach der vermuteten Sprache umzuleiten. Eine Anfrage an die englische Seite mit Accept-Language: de liefert 200 und bleibt dort (getestet am 5. November 2026). Jeder Artikel hat außerdem ein Sprachmenü mit einfachen Links zu den anderen Fassungen.

So ist es gebaut. Jede Artikeldatei nennt ihr Thema in einer Zeile group. Der Blog-Code sammelt alle Dateien mit derselben group, gibt je Mitglied ein <link> aus (Englisch zuerst, dann nach Sprachcode) und setzt x-default auf die englische Fassung. Eine Sprache ohne Datei bekommt keine Zeile. Ein Thema, das es nur auf Englisch und Deutsch gibt, trägt deshalb drei Zeilen: en, de und x-default. Google erlaubt unvollständige Mengen: „you can omit some languages on some pages; Google will still process the ones that point to each other“ (Google).

So haben wir gezählt. Diese Schleife liest alle Artikeladressen aus der Sitemap und zählt auf jeder Seite die hreflang-Zeilen:

for u in $(curl -sS https://seogrinder.com/sitemap.xml | grep -o 'https://seogrinder.com/[a-z][a-z]/blog/[^<]*'); do
  curl -sS "$u" | grep -c '<link rel="alternate" hreflang'
done | sort | uniq -c

Am 5. November 2026 kam 408 13 heraus: 408 Seiten mit 13 Zeilen (zwölf Sprachen plus x-default). Ein kleines Skript hat danach dieselben 408 Seiten abgerufen und die Tags verglichen: Jede Seite nennt sich selbst, jede genannte Adresse antwortet mit 200 und nennt die Seite zurück, und x-default ist die englische Adresse. Unsere Blog-Prüfung (check:blog) testet diese Regeln für jede Artikelseite bei jeder Änderung am Blog.

Wofür ist x-default da?

Google nennt x-default „recommended for specifying the fallback page for users whose language settings don't match any of your site's localized versions“ (Google). Pflicht ist es nicht.

Google ergänzt, jede Seite dürfe den Wert tragen, er sei aber „designed for language selector pages and so it will work best with those“. Eine Sprachauswahlseite haben wir für Artikel nicht, deshalb ist unsere Auffangseite die englische Fassung desselben Artikels; bei den Übersichtsseiten des Blogs ist es /en/blog. Das ist unsere Entscheidung, keine Regel.

Häufige Fehler: 5 hreflang-Fehler aus Googles Dokumentation

Googles Seite hat einen Abschnitt „Common Mistakes“ mit drei Einträgen, und die Richtlinien nennen zwei weitere Anforderungen mit „must“. Das sind die fünf unten. Google sagt nicht, wie oft jeder vorkommt. Nur zwei haben eine genannte Folge: fehlende Rückverweise (Tags werden ignoriert) und reservierte Regionscodes (dieser Teil wird ignoriert). Bei den übrigen steht nur die Regel.

1. Fehlende Rückverweise

Nennt Seite X die Seite Y, muss Seite Y die Seite X nennen. Googles Regel: „If two pages don't both point to each other, the tags will be ignored“ (Google). Den Grund liefert Google gleich mit: Eine fremde Website soll sich nicht einfach als Alternative zu deiner Seite ausgeben können. Behebe es, indem jede Fassung denselben Linkblock aus einer gemeinsamen Quelle ausgibt. Ist die vollständige Menge schwer zu pflegen, darf man laut Google einzelne Sprachen auf einzelnen Seiten weglassen; neu hinzugekommene Sprachen sollten aber in beide Richtungen mit der Ursprungs- oder Hauptsprache verlinkt sein.

2. Eine Fassung, die sich nicht selbst nennt

Die Richtlinie für alle Methoden: „Each language version must list itself as well as all other language versions“ (Google). Für die HTML-Methode heißt das: ein Link je Fassung, „including itself“, und auf jeder Fassung dieselbe Menge. Was ohne Selbstverweis geschieht, sagt Google nicht; behandle es als Fehler und ergänze die Zeile.

3. Sprachcodes, die nicht gültig sind

Der erste Teil des Werts ist eine Sprache im Format ISO 639-1, danach optional eine Region. Google schreibt: „Specifying the region alone is not valid“. Im Belgien-Beispiel ist be falsch, weil es der Sprachcode für Belarussisch ist; richtig sind de-BE, nl-BE und fr-BE. Codes, die nicht in diesen Normen stehen, etwa es-419, werden nicht unterstützt (Schriftcodes wie zh-Hans sind erlaubt). Groß- und Kleinschreibung ist egal, die Region schreibt man laut Norm groß.

4. Regionscodes, die nicht gültig sind

Die Region muss ein offiziell vergebener Code nach ISO 3166-1 Alpha 2 sein. Bei Codes, die für etwas anderes reserviert sind, gilt: „Google Search ignores that part of the annotation“. Google nennt EU, UN und UK als wirkungslos. Für das Vereinigte Königreich gilt GB, wie in Googles eigenem Beispiel en-GB.

5. Relative oder unvollständige Adressen

„Alternate URLs must be fully-qualified, including the transport method (http/https)“ (Google). Googles Beispiel: https://example.com/foo, nicht //example.com/foo oder /foo.

So prüfst du hreflang

Von Hand: Führe den curl-Befehl von oben auf einer deiner Seiten aus und sieh nach, ob die Seite sich selbst nennt. Dann rufst du jede Adresse aus der Ausgabe ab und suchst die erste Seite; das ist der Test auf Rückverweise. Google führt außerdem Testwerkzeuge von Dritten auf und sagt, sie „are not maintained or checked by Google“.

Mit SEOgrinder, unserem eigenen Werkzeug, das wir bauen: Prüfe eine Seite, öffne den Bereich „Seite bei Google“ und suche die Karte „Sprachen (hreflang)“. Sie prüft die Codes, den Selbstverweis, x-default, ob die Ziele antworten und ob sie zurückverweisen. Ist alles in Ordnung, steht dort eine Zeile; sonst listet die Karte jede Prüfung mit ihrem Ergebnis, und die Probleme landen in der Aufgabenliste.

FehlerDas zeigt SEOgrinder (Beispielwortlaut)
1. Fehlende Rückverweise„2 Ziele verweisen nicht zurück“
2. Kein Selbstverweis„Seite verweist nicht auf sich selbst“
3 und 4. Ungültige Codes„1 ungültiger Sprachcode“ (Sprache und Region werden gegen die Normen geprüft, die Google nennt)
5. Relative AdressenKeine eigene Zeile: SEOgrinder löst eine relative Adresse gegen die Seite auf, bevor es prüft; suche diesen Fehler im Quelltext

Zwei Grenzen. Es ruft höchstens zehn Ziele je Seite ab; bei unseren Seiten mit 13 Angaben prüft es zehn und sagt das auch („10 von 13 Angaben abgerufen und geprüft“). Und es beurteilt die Seite, die du eingibst; für eine ganze Website gehst du die Adressen in einer Schleife durch, wie oben.

Häufige Fragen

Brauche ich hreflang, wenn jede Sprache eine eigene Adresse hat?

Pflicht ist es nicht. Google kann Fassungen auch ohne hreflang finden, sagt aber, es sei meist am besten, sie ausdrücklich anzugeben.

Verbessert hreflang mein Ranking?

Das behauptet Googles Seite nicht. Sie nennt als Zweck, Nutzer je nach Sprache oder Region zur passendsten Fassung zu führen. Eine Platzierung kann niemand versprechen.

Welche der drei Methoden soll ich nehmen?

Für Google sind sie gleichwertig, und mehrere zugleich bringen keinen Vorteil. Laut Google passen HTML-Tags für Websites ohne Sitemap oder ohne die Möglichkeit, HTTP-Header zu setzen, und der Header für Dateien ohne HTML wie PDFs. Wir nehmen die HTML-Tags.

Dein nächster Schritt

Führe den curl-Befehl auf einer deiner Seiten aus und prüfe, dass sie sich selbst nennt und dass ein Ziel zurückverweist. Dann prüfst du die Seite mit SEOgrinder, öffnest „Seite bei Google“, behebst die erste Zeile in der Karte „Sprachen (hreflang)“, die ein Problem meldet, und klickst auf Neu prüfen. Wo hreflang unter acht Prüfgruppen steht, zeigt unsere SEO-Audit-Checkliste.

Weiterlesen

Weitere Artikel