Google über lokalisierte Versionen deiner Seite informieren

Wenn mehrere Versionen einer Seite für verschiedene Sprachen oder Regionen existieren, informiere Google darüber. Dadurch führt die Google Suche die Nutzer zur Version deiner Seite mit der passenden Sprache oder Region.

Beachte, dass Google auch dann andere Sprachversionen deiner Seite finden kann, wenn du uns nicht informierst. Das beste Ergebnis wird jedoch in der Regel dann erzielt, wenn du Seiten in bestimmten Sprachen oder für bestimmte Regionen explizit angibst.

Hier einige Beispiele für Situationen, in denen wir empfehlen, alternative Seiten anzugeben:

  • Du belässt die wesentlichen Inhalte in einer einzigen Sprache und übersetzt nur die Seitenvorlage, z. B. Navigation und Fußzeile. Das ist in der Regel bei Seiten mit von Nutzern erstellten Inhalten der Fall, etwa Foren.
  • Deine Inhalte sind im Wesentlichen in einer einzigen Sprache verfasst und einander ähnlich, dabei gibt es geringfügige regionale Abweichungen. Ein Beispiel hierfür wäre, wenn du englischsprachige Inhalte speziell für Großbritannien, Irland und die USA hast.
  • Die Inhalte deiner Website sind vollständig in mehrere Sprachen übersetzt. Das wäre zum Beispiel der Fall, wenn du eine deutsche und eine englische Version jeder Seite hast.

Lokalisierte Versionen einer Seite gelten nur dann als Duplikate, wenn der Hauptinhalt der Seite nicht übersetzt wurde.

Methoden zum Angeben deiner alternativen Seiten

Es gibt drei Möglichkeiten, bei Google mehrere Sprach- oder Länderversionen einer Seite anzugeben:

Richtlinien für alle Methoden

  • In jeder Sprachversion müssen die Version selbst und alle anderen Sprachversionen aufgelistet sein.
  • Alternative URLs müssen voll qualifiziert sein, wobei die Transportmethode (http oder https) genannt werden muss, also:
    https://example.com/foo, nicht //example.com/foo oder /foo
  • Alternative URLs müssen sich nicht in derselben Domain befinden.
  • Wenn mehrere alternative URLs auf Nutzer mit derselben Sprache, aber in unterschiedlichen Ländern ausgerichtet sind, empfiehlt es sich, auch eine Catchall-URL für geografisch nicht spezifizierte Nutzer dieser Sprache bereitzustellen. Hast du zum Beispiel spezifische URLs für englischsprachige Nutzer in Irland (en-ie), Kanada (en-ca) und Australien (en-au), solltest du auch eine allgemeine englischsprachige Seite (en) anbieten, die für Nutzer im Vereinigten Königreich, in den USA und in allen anderen englischsprachigen Ländern gleichermaßen geeignet ist. Dazu kannst du auch eine der spezifischen Seiten auswählen.
  • Wenn zwei Seiten nicht aufeinander verweisen, werden die Tags ignoriert. Dadurch wird verhindert, dass jemand auf einer anderen Website willkürlich ein Tag erstellt und die Seite als alternative Version einer deiner Seiten markiert.
  • Wenn es sich schwierig gestaltet, für jede Sprache eine Gruppe bidirektionaler Links zu pflegen, kannst du auf einigen Seiten ein paar Sprachen auslassen. Google wird die Links, die aufeinander verweisen, weiterhin verarbeiten. Neue Sprachversionen sollten jedoch unbedingt auf die ursprüngliche(n) Sprache(n) bzw. Hauptsprache(n) verweisen und umgekehrt. Beispiel: Deine Website wurde ursprünglich auf Französisch veröffentlicht, die Endung der URLs ist .fr und du möchtest nun neue Sprachversionen für Mexiko (.mx) und Spanien (.es) implementieren. In diesem Fall ist es wichtiger, dass die neuen Sprachversionen (.mx und .es) bidirektional auf die .fr-Version verweisen, als die neuen spanischen Versionen aufeinander verweisen zu lassen.
  • Du kannst für nicht zugeordnete Sprachen eine Seite hinzufügen, auf der Nutzer sozusagen aufgefangen werden. Das ist insbesondere auf Seiten mit einer Auswahlmöglichkeit für Länder oder Sprachen oder auf automatisch weiterleitenden Startseiten nützlich. Verwende den Wert x-default:
    <link rel="alternate" href="https://example.com/" hreflang="x-default" />

HTML-Tags

Füge dem Header deiner Seite <link rel="alternate" hreflang="lang_code"... >-Elemente hinzu. Dadurch wird Google über alle Sprach-/Regionsversionen einer Seite informiert. Das ist nützlich, wenn du keine Sitemap hast oder keine HTTP-Antwortheader für deine Website angeben kannst.

Füge für jede Variante der Seite eine Gruppe von <link>-Elementen im <head>-Element hinzu, d. h. einen Link für jede Seitenvariante, einschließlich der Seite selbst. Die Gruppe von Links ist für jede Version der Seite identisch. Hier findest du weitere Richtlinien.

Die Syntax eines einzelnen link-Elements sieht so aus:

<link rel="alternate" hreflang="lang_code" href="url_of_page" />
Syntax
lang_code Ein unterstützter Sprach- oder Regionscode für die Sprache/Region, auf die diese Version der Seite ausgerichtet ist, oder x-default für alle Sprachen, die nicht explizit in einem hreflang-Tag auf der Seite aufgelistet sind
url_of_page Die voll qualifizierte URL für die Version dieser Seite für die angegebene Sprache bzw. Region

Beispiel

Example Widgets Inc. betreibt eine Website für Nutzer in den USA, in Großbritannien und Deutschland. Die folgenden URLs liefern im Wesentlichen die gleichen Inhalte, allerdings mit regionalen Abweichungen:

URLs mit regionalen Varianten
https://en.example.com/page.html Allgemeine englischsprachige Startseite mit Informationen über Gebühren für den internationalen Versand aus den USA
https://en-gb.example.com/page.html Britische Startseite, auf der Preise in britischen Pfund angezeigt werden
https://en-us.example.com/page.html Startseite für die USA, auf der Preise in US-Dollar angezeigt werden
https://de.example.com/page.html Deutsche Sprachversion der Startseite
https://www.example.com/ Standardseite, die auf keine bestimmte Sprache und kein bestimmtes Land ausgerichtet ist und auf der die Nutzer ihre Sprache und ihr Land auswählen können

Beachte, dass die sprachspezifischen Subdomains in diesen URLs (en, en-gb, en-us, de) nicht von Google verwendet werden, um die Zielgruppe für die Seite zu bestimmen. Die Zuordnung zu den Zielgruppen musst du selbst vornehmen.

Unten siehst du den HTML-Code, der im <head>-Bereich aller in der Tabelle URLs mit regionalen Varianten aufgelisteten Seiten eingefügt werden sollte. Dadurch werden deutschsprachige Nutzer, englischsprachige Nutzer aus den USA und dem Vereinigten Königreich sowie allgemein englischsprachige Nutzer auf die lokalisierten Seiten weitergeleitet. Alle anderen Nutzer werden zu einer allgemeinen Startseite weitergeleitet. Die Google Suche gibt das entsprechende Ergebnis für den Nutzer gemäß den Browsereinstellungen zurück.

<head>
 <title>Widgets, Inc</title>
  <link rel="alternate" hreflang="en-gb"
       href="https://en-gb.example.com/page.html" />
  <link rel="alternate" hreflang="en-us"
       href="https://en-us.example.com/page.html" />
  <link rel="alternate" hreflang="en"
       href="https://en.example.com/page.html" />
  <link rel="alternate" hreflang="de"
       href="https://de.example.com/page.html" />
 <link rel="alternate" hreflang="x-default"
       href="https://www.example.com/" />
</head>

HTTP-Header

Du kannst einen HTTP-Header mit der GET-Antwort deiner Seite zurückgeben, um Google über alle Sprach- und Regionsvarianten einer Seite zu informieren. Dies ist nützlich für Nicht-HTML-Dateien wie PDFs.

So sieht das Format des Headers aus:

Link: <url1>; rel="alternate"; hreflang="lang_code_1", <url2>; rel="alternate"; hreflang="lang_code_2", ...
Syntax
<url_x> Die voll qualifizierte URL für die alternative Seite, die dem String für die Sprache entspricht, die mit dem Attribut hreflang verknüpft ist. Die URL muss in spitze Klammern < und > eingeschlossen sein. Beispiel: <https://www.google.com>
lang_code_x Ein unterstützter Sprach- oder Regionscode für die Sprache/Region, auf die diese Version der Seite ausgerichtet ist, oder x-default für alle Sprachen, die nicht explizit in einem hreflang-Tag auf der Seite aufgelistet sind

Du musst für jede Version der Seite, einschließlich der angeforderten Version, eine Gruppe von durch Kommas voneinander getrennten <url>-, rel="alternate"- und hreflang-Werten wie im folgenden Beispiel angeben. Der für jede Version einer Seite ausgegebene Link:-Header ist identisch. Hier findest du weitere Richtlinien.

Beispiel

Das ist ein Beispiel für einen Link:-Header, der von einer Website mit drei Versionen einer PDF-Datei ausgegeben wurde: eine für englischsprachige Nutzer, eine für deutschsprachige Nutzer aus der Schweiz und eine für alle anderen deutschsprachigen Nutzer:

Link: <https://example.com/file.pdf>; rel="alternate"; hreflang="en",
      <https://de-ch.example.com/file.pdf>; rel="alternate"; hreflang="de-ch",
      <https://de.example.com/file.pdf>; rel="alternate"; hreflang="de"

Sitemap

Mithilfe einer Sitemap kannst du Google über alle Sprach- und Regionsvarianten einer URL informieren. Füge dazu ein <loc>-Element hinzu, in dem eine einzelne URL mit untergeordneten <xhtml:link>-Einträgen für jede Sprach- und Ländervariante der Seite, einschließlich der Seite selbst, aufgeführt ist. Wenn du also drei Versionen einer Seite hast, enthält deine Sitemap drei Einträge mit jeweils drei identischen untergeordneten Einträgen.

Sitemap-Regeln:

  • Gib den XHTML-Namespace so an:
    xmlns:xhtml="http://www.w3.org/1999/xhtml"
  • Erstelle für jede URL ein separates <url>-Element.
  • Jedes <url>-Element muss ein untergeordnetes <loc>-Element haben, das die Seiten-URL angibt.
  • Jedes <url>-Element muss ein untergeordnetes Element <xhtml:link rel="alternate" hreflang="supported_language-code"> haben, in dem jede alternative Version der Seite, einschließlich der Seite selbst, aufgelistet ist. Die Reihenfolge dieser untergeordneten <xhtml:link>-Elemente spielt keine Rolle. Es ist allerdings sinnvoll, bei den Elementen dieselbe Reihenfolge einzuhalten, weil du sie so besser auf Fehler prüfen kannst.
  • Hier findest du weitere Richtlinien.

Beispiel

Das ist eine englischsprachige Seite, die an englischsprachige Nutzer weltweit gerichtet ist, sowie eine äquivalente Version der Seite, die an deutschsprachige Nutzer weltweit gerichtet ist, und eine deutschsprachige Version, die an deutschsprachige Nutzer in der Schweiz gerichtet ist. Hier siehst du alle auf deiner Website vorhandenen URLs:

  • www.example.com/english/page.html ist auf englischsprachige Nutzer ausgerichtet.
  • www.example.com/deutsch/page.html ist auf deutschsprachige Nutzer ausgerichtet.
  • www.example.com/schweiz-deutsch/page.html ist auf deutschsprachige Nutzer in der Schweiz ausgerichtet.

Dies ist die Sitemap für diese drei Seiten:

<?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">
  <url>
    <loc>https://www.example.com/english/page.html</loc>
    <xhtml:link
               rel="alternate"
               hreflang="de"
               href="https://www.example.com/deutsch/page.html"/>
    <xhtml:link
               rel="alternate"
               hreflang="de-ch"
               href="https://www.example.com/schweiz-deutsch/page.html"/>
    <xhtml:link
               rel="alternate"
               hreflang="en"
               href="https://www.example.com/english/page.html"/>
  </url>
  <url>
    <loc>https://www.example.com/deutsch/page.html</loc>
    <xhtml:link
               rel="alternate"
               hreflang="de"
               href="https://www.example.com/deutsch/page.html"/>
    <xhtml:link
               rel="alternate"
               hreflang="de-ch"
               href="https://www.example.com/schweiz-deutsch/page.html"/>
    <xhtml:link
               rel="alternate"
               hreflang="en"
               href="https://www.example.com/english/page.html"/>
  </url>
  <url>
    <loc>https://www.example.com/schweiz-deutsch/page.html</loc>
    <xhtml:link
               rel="alternate"
               hreflang="de"
               href="https://www.example.com/deutsch/page.html"/>
    <xhtml:link
               rel="alternate"
               hreflang="de-ch"
               href="https://www.example.com/schweiz-deutsch/page.html"/>
    <xhtml:link
               rel="alternate"
               hreflang="en"
               href="https://www.example.com/english/page.html"/>
  </url>
</urlset>

Unterstützte Sprach- und Regionscodes

Der Wert des Attributs hreflang legt die Sprache einer alternativen URL im Format ISO 639-1 und optional auch die Region im Format ISO 3166-1 Alpha 2 fest. Ist nur ein Code angegeben, geht Google davon aus, dass der Code ein Sprachcode ist. Die Sprache muss nicht mit der Region zusammenhängen. Beispiel:

  • de: deutschsprachige Inhalte, unabhängig von der Region
  • en-GB: englischsprachige Inhalte für Nutzer in Großbritannien
  • de-ES: deutschsprachige Inhalte für Nutzer in Spanien

Bei unterschiedlichen Schriftsystemen leitet sich das korrekte Schriftsystem vom Land ab. Wenn du zum Beispiel zh-TW für Nutzer in Taiwan verwendest, wird daraus automatisch das Schriftsystem „Chinesisch (traditionell)“ abgeleitet. Du kannst das Schriftsystem auch explizit durch Verwendung von ISO 15924 festlegen. Das sieht dann so aus:

  • zh-Hant: Chinesisch (traditionell)
  • zh-Hans: Chinesisch (vereinfacht)

Alternativ kannst du eine Kombination aus Schriftsystem und Region verwenden, zum Beispiel zh-Hans-TW für vereinfachtes Chinesisch für taiwanesische Nutzer.

Das Tag x-default für nicht übereinstimmende Sprachen verwenden

Der reservierte Wert hreflang="x-default" wird verwendet, wenn keine andere Sprache oder Region mit der Browsereinstellung des Nutzers übereinstimmt. Dieser Wert ist optional, wird aber empfohlen, um die Seite zu steuern, wenn keine Sprache mit der Browsereinstellung übereinstimmt. Es ist z. B. sinnvoll, ihn auf die Startseite deiner Website auszurichten und dort eine Weltkarte bereitzustellen, auf der Nutzer ihr Land durch Klicken auswählen können.

Für den Wert x-default muss kein Sprachcode angegeben werden. Die Seite ist auf Nutzer ausgerichtet, für deren Spracheinstellungen es auf deiner Website keine Übereinstimmungen gibt. Daher ist die Sprache der Seite irrelevant.

Fehlerbehebung

Häufige Fehler

Dies sind die häufigsten Fehler bei der Verwendung von hreflang:

  • Fehlende zurückverweisende Links: Wenn Seite X auf Seite Y verweist, muss Seite Y zurück auf Seite X verweisen. Falls dies nicht für alle Seiten mit hreflang-Attribut der Fall ist, werden die Attribute möglicherweise ignoriert oder nicht richtig interpretiert. Nehmen wir an, du hast diesen Link unter https://de.example.com/index.html:
    <link rel="alternate" hreflang="en-gb" href="https://en-gb.example.com/index.html" />
    Dann musst du auch einen hreflang-Link unter https://en-gb.example.com/index.html haben, der auf die de-Version des Inhalts zurückverweist:
    <link rel="alternate" hreflang="de" href="https://de.example.com/index.html" />
  • Falsche Sprachcodes: Achte darauf, dass durch alle verwendeten Sprachcodes die Sprache einer alternativen URL im Format ISO 639-1 und optional auch die Region im Format ISO 3166-1 Alpha 2 festgelegt wird. Die Angabe der Region allein ist ungültig.

hreflang-Fehler beheben

Mithilfe des Berichts zur internationalen Ausrichtung kannst du die häufigsten Fehler beheben. Achte darauf, dass Google genügend Zeit zum Crawlen deiner Seiten hatte, und gehe dann im Bericht auf den Tab Sprache. Dort siehst du möglicherweise erkannte Fehler.

Es sind auch viele Tools von Drittanbietern verfügbar. Hier sind ein paar beliebte Tools, die jedoch nicht von Google gepflegt oder geprüft werden: