Hreflang prüfen
Geben Sie die Adresse einer Seite ein, die es in mehreren Sprachen gibt. Wir lesen ihre hreflang-Zeilen, prüfen jeden Code und rufen dann jede alternative Version auf: Antwortet sie, darf sie indexiert werden und nennt sie diese Seite im Gegenzug?
Eine Liste der Zwillinge, auf jedem Zwilling wiederholt
Gibt es dieselbe Seite auf Englisch, Deutsch und Japanisch, sieht eine Suchmaschine drei getrennte Seiten. Mit hreflang sagen Sie ihr, dass es eine Seite in drei Versionen ist. So bekommt ein Leser in Berlin die deutsche Adresse und nicht die englische. Jede Version trägt die vollständige Liste aller Versionen, sich selbst eingeschlossen:
<link rel="alternate" hreflang="en" href="https://www.example.com/en/pricing/">
<link rel="alternate" hreflang="de" href="https://www.example.com/de/preise/">
<link rel="alternate" hreflang="ja" href="https://www.example.com/ja/pricing/">
<link rel="alternate" hreflang="x-default" href="https://www.example.com/en/pricing/">Die Liste kann an drei Stellen stehen: im <head> der Seite, in einem Link-Antwort-Header oder in der XML-Sitemap. Diese Prüfung liest die ersten beiden. Sitemaps liest sie nicht. Eine Seite, für die hier keine Angabe auftaucht, kann dort also trotzdem erfasst sein.
Hreflang bestimmt, welche Version angezeigt wird. Am Ranking der Seite ändert es nichts. Suchmaschinen behandeln es als Hinweis und verwerfen es, sobald es widersprüchlich wirkt. Deshalb kosten kleine Fehler so viel.
So sieht ein gültiger Code aus
Ein Wert ist eine Sprache, optional gefolgt von einer Schrift und einem Land, verbunden mit Bindestrichen. Groß- und Kleinschreibung spielt keine Rolle.
| Teil | Standard | Beispiele |
|---|---|---|
| Sprache (Pflicht) | ISO 639-1, zwei Buchstaben | en, de, ja, pt |
| Schrift (optional) | ISO 15924, vier Buchstaben | zh-Hans, zh-Hant, sr-Latn |
| Land (optional) | ISO 3166-1, zwei Buchstaben | en-GB, pt-BR, zh-Hant-TW |
Das Land steht nie allein und nie an erster Stelle. Diese Fehler benennt die Prüfung, mit der Korrektur, wenn es nur eine mögliche gibt:
en-UK: Der ISO-Code des Vereinigten Königreichs istGB.en_US: ein Unterstrich, wie ihn Software-Locales schreiben. Hreflang verlangten-US.es-LA: wird als Spanisch für Laos gelesen. Google kennt keinen Code für Lateinamerika. Verwenden Sie alsoesoder eine Zeile pro Land.jp,cn,cz,dk: Ländercodes, als Sprachen verwendet. Die Sprachen heißenja,zh,cs,da.en-EU,es-419, dreibuchstabige Codes wieengund veraltete Codes wieiwfür Hebräisch.
Die Ergebnistabelle schreibt jeden Code in Worten aus. So fallen die Fehler auf, die keine Regel erkennen kann, etwa uk: ein völlig gültiger Code, der Ukrainisch bedeutet.
Was auf der Seite selbst geprüft wird
- Adressen. Jede Zeile braucht eine vollständige Adresse mit Schema und Host. Relative Adressen werden gemeldet.
- Doppelte Zeilen und Konflikte. Dieselbe Zeile zweimal schadet nicht und wird als Anmerkung gemeldet. Ein Code für zwei verschiedene Adressen ist ein Fehler, denn niemand kann sagen, welche Seite die Version für diese Sprache ist.
- Selbstreferenz. Die Seite muss in ihrer eigenen Liste stehen, mit ihrer exakten Adresse. Ein fehlender Schrägstrich am Ende genügt, damit sie nicht mehr übereinstimmt.
- x-default. Die Version für Leser, deren Sprache nicht aufgeführt ist. Sie ist optional. Fehlt sie, gibt es einen Hinweis, aber keinen Fehler.
- Canonical. Hreflang funktioniert nur zwischen kanonischen Seiten. Eine deutsche Seite, deren Canonical auf die englische Seite zeigt, sagt den Suchmaschinen, sie sollen die deutsche vergessen, und ihre hreflang-Zeilen gleich mit.
- Das Attribut
lang. Sagt<html lang>sv, während sich die Seite selbst alsseaufführt, ist eines von beiden falsch. - Position. Zeilen, die außerhalb von
<head>landen, oft weil ein verirrtes Element den Head zu früh schließt, ignoriert Google. Hier werden sie markiert.
Rückverweise, die Hälfte, die meistens fehlt
Eine Angabe zählt nur, wenn beide Seiten übereinstimmen. Sagt die englische Seite „meine deutsche Version ist dort“ und die deutsche Seite nicht „meine englische Version ist hier“, wird das Paar verworfen. Sobald wir Ihre Seite gelesen haben, fragt unser Server deshalb jede alternative Version einmal ab, ohne Weiterleitungen zu folgen, und meldet für jede:
- Status
- Sie muss mit 200 antworten. Eine Weiterleitung bedeutet, dass die Zeile eine Adresse nennt, die nicht die endgültige ist. Ein Fehler bedeutet, dass die Version nicht mehr existiert. Ein x-default, das weiterleitet, wird akzeptiert, denn genau das tut eine Sprachauswahl.
- Indexierbar
- Kein
noindexin einem Robots-Meta-Tag oder einemX-Robots-Tag-Header. - Canonical auf sich selbst
- Ihr Canonical, falls vorhanden, muss ihre eigene Adresse sein.
- Verweist zurück
- Ihr eigener Block muss Ihre Seite aufführen, unter demselben Code, den Ihre Seite für sich selbst verwendet.
Sind die Korrekturen rein mechanisch (ein falsch geschriebener Code, eine relative Adresse, eine doppelte Zeile, eine fehlende Zeile für die Seite selbst), endet das Ergebnis mit einem korrigierten Block zum Einfügen. Zeilen, bei denen Sie entscheiden müssen, bleiben unverändert und sind mit einem Kommentar markiert.
Eine Prüfung besucht höchstens 35 alternative Versionen und bricht nach etwa einer halben Minute ab. Die Tabelle markiert die übersprungenen. Angaben, die JavaScript schreibt, sehen wir nicht. Eine Website, die Besucher nach Standort weiterleitet, zeigt unserem Server womöglich etwas anderes als einem Crawler.
Häufige Fragen
Brauche ich hreflang, wenn meine Website nur eine Sprache hat?
Nein. Hreflang verknüpft Versionen derselben Seite miteinander. Bei einer einzigen Version gibt es nichts zu verknüpfen, und die Prüfung meldet „keine Angaben“ als neutrales Ergebnis.
Was ist x-default und ist es Pflicht?
Es ist die Zeile für alle, die Ihre anderen Zeilen nicht abdecken, etwa einen Leser, dessen Sprache Sie nicht anbieten. Meist zeigt sie auf die englische Version oder auf eine Seite, auf der der Besucher eine Sprache wählt. Empfohlen, aber nicht Pflicht.
Soll ich nur den Sprachcode verwenden oder das Land hinzufügen?
Verwenden Sie nur die Sprache (de), wenn eine Seite alle Sprecher dieser Sprache bedient. Fügen Sie das Land (de-AT, de-CH) nur hinzu, wenn Sie pro Land unterschiedliche Seiten veröffentlichen, zum Beispiel wegen Preisen oder Versand. Sie können beides kombinieren: Länderzeilen für die spezifischen Seiten und eine reine Sprachzeile als allgemeine.
Was bedeutet „kein Rückverweis“?
Ihre Seite nennt eine andere Version, aber diese Version nennt Ihre Seite nicht in ihrem eigenen hreflang-Block. Suchmaschinen ignorieren einseitige Angaben. Zur Behebung geben Sie auf jeder Version dieselbe vollständige Liste aus, idealerweise aus einer einzigen gemeinsamen Quelle.
Kann hreflang auf eine andere Domain zeigen?
Ja. example.com und example.de können Versionen voneinander sein, solange jede die andere und sich selbst aufführt. Es gelten dieselben Regeln wie innerhalb einer Domain.
Ersetzt hreflang das Canonical-Tag?
Nein. Beide erfüllen verschiedene Aufgaben und müssen zueinander passen. Das Canonical sagt, welche Adresse eine Seite unter ihren Duplikaten vertritt, und hreflang sagt, welche anderen Seiten ihre Übersetzungen sind. Jede Sprachversion sollte auf sich selbst kanonisch sein.