BFSG 2025: Ist Ihre Website barrierefrei?
Was das Barrierefreiheitsstärkungsgesetz für Websites bedeutet und wie Sie BFSG-Konformität erreichen.
Deutschland, Österreich und die Schweiz sprechen dieselbe Sprache — aber Google behandelt sie als drei unterschiedliche Märkte. Ohne korrekte hreflang-Implementierung treffen Google-Algorithmen eigenständige Entscheidungen über Ihre DACH-Sichtbarkeit. Dieser Artikel zeigt Ihnen, wie Sie das verhindern.
Folgende Tags gehören in den <head> jeder relevanten Seite:
<link rel="alternate" hreflang="de" href="https://ihre-domain.de/seite/"> <link rel="alternate" hreflang="de-DE" href="https://ihre-domain.de/seite/"> <link rel="alternate" hreflang="de-AT" href="https://ihre-domain.de/seite/"> <link rel="alternate" hreflang="de-CH" href="https://ihre-domain.de/seite/"> <link rel="alternate" hreflang="x-default" href="https://ihre-domain.de/seite/">
Wichtig: Bidirektionalität — wenn Seite A auf Seite B verweist, muss Seite B auch auf Seite A verweisen. Fehlende Rückverweise machen das gesamte hreflang-Signal ungültig.
Der häufigste Irrtum lautet: "Meine Website ist nur auf Deutsch — hreflang brauche ich nicht." Das stimmt nur, wenn Sie ausschließlich in einem DACH-Land tätig sind und kein Interesse an Sichtbarkeit in den anderen beiden haben. Für die meisten DACH-Unternehmen gilt das nicht.
Was Google ohne hreflang macht: Wenn Sie keine länderspezifischen Signale setzen, wählt Google eigenständig, welche Version Ihrer Seite welchem Nutzer angezeigt wird — basierend auf dem Domainregistrar, dem Hosting-Standort und unscharfen Nutzersignalen. Das führt regelmäßig dazu, dass:
Was hreflang löst: Hreflang gibt Google ein explizites Signal: Diese URL ist für Nutzer in Deutschland (de-DE), diese für Österreich (de-AT), diese für die Schweiz (de-CH). Google kann dann gezielt die richtige Version für den richtigen Nutzer anzeigen.
Google akzeptiert drei technische Wege, hreflang zu implementieren. Für DACH-Websites empfehlen wir Methode 1 für kleine bis mittlere Websites und Methode 2 für große Websites mit vielen URLs.
<!DOCTYPE html> <html lang="de"> <head> <meta charset="UTF-8"> <title>Ihre Seite</title> <!-- Hreflang für DACH --> <link rel="alternate" hreflang="de" href="https://www.ihre-domain.de/leistungen/"> <link rel="alternate" hreflang="de-DE" href="https://www.ihre-domain.de/leistungen/"> <link rel="alternate" hreflang="de-AT" href="https://www.ihre-domain.de/leistungen/"> <link rel="alternate" hreflang="de-CH" href="https://www.ihre-domain.de/leistungen/"> <link rel="alternate" hreflang="x-default" href="https://www.ihre-domain.de/leistungen/"> <!-- Canonical immer konsistent mit hreflang --> <link rel="canonical" href="https://www.ihre-domain.de/leistungen/"> </head>
Bei Websites mit länderspezifischen Inhalten (unterschiedliche Preise, unterschiedliche Leistungsangebote für AT und CH):
<!-- Deutschland --> <link rel="alternate" hreflang="de-DE" href="https://www.ihre-domain.de/de/leistungen/"> <!-- Österreich --> <link rel="alternate" hreflang="de-AT" href="https://www.ihre-domain.de/at/leistungen/"> <!-- Schweiz --> <link rel="alternate" hreflang="de-CH" href="https://www.ihre-domain.de/ch/leistungen/">
Für Websites mit vielen Seiten ist die Sitemap-Methode effizienter als head-Tags auf jeder Seite einzeln.
<?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.ihre-domain.de/leistungen/</loc>
<xhtml:link rel="alternate" hreflang="de"
href="https://www.ihre-domain.de/leistungen/"/>
<xhtml:link rel="alternate" hreflang="de-DE"
href="https://www.ihre-domain.de/leistungen/"/>
<xhtml:link rel="alternate" hreflang="de-AT"
href="https://www.ihre-domain.de/leistungen/"/>
<xhtml:link rel="alternate" hreflang="de-CH"
href="https://www.ihre-domain.de/leistungen/"/>
<xhtml:link rel="alternate" hreflang="x-default"
href="https://www.ihre-domain.de/leistungen/"/>
</url>
</urlset>
Der Namespace xmlns:xhtml muss im <urlset> deklariert sein — ohne ihn ignoriert Google die hreflang-Angaben in der Sitemap vollständig.
Nur relevant für nicht-HTML-Ressourcen (PDFs, Bilder). Für normale Websites nicht die empfohlene Methode.
Link: <https://www.ihre-domain.de/dokument.pdf>; rel="alternate"; hreflang="de-DE",
<https://www.ihre-domain.de/dokument.pdf>; rel="alternate"; hreflang="de-AT"
Deutschland (de-DE): Der größte DACH-Markt mit dem höchsten Suchvolumen. Google.de ist die primäre Suchmaschine. hreflang de-DE ist das wichtigste Signal für die Mehrheit Ihrer DACH-Kunden.
Österreich (de-AT): Google.at wird von österreichischen Nutzern verwendet. Ohne de-AT-Signal sehen österreichische Nutzer möglicherweise Ergebnisse, die primär für Deutsche optimiert sind. Für Unternehmen, die österreichischen Kunden dienen: de-AT ist Pflicht, nicht Optional.
Schweiz (de-CH): Die Schweiz hat drei Amtssprachen — für die deutschsprachige Schweiz gilt de-CH. Für mehrsprachige Schweizer Websites kommen fr-CH (Westschweiz) und it-CH (Tessin) hinzu:
<link rel="alternate" hreflang="de-CH"
href="https://www.ihre-domain.ch/de/leistungen/">
<link rel="alternate" hreflang="fr-CH"
href="https://www.ihre-domain.ch/fr/prestations/">
<link rel="alternate" hreflang="it-CH"
href="https://www.ihre-domain.ch/it/servizi/">
<link rel="alternate" hreflang="x-default"
href="https://www.ihre-domain.ch/de/leistungen/">
Das sind die Fehler, die wir am häufigsten in DACH-Website-Audits finden. Jeder davon kann Ihr hreflang-Signal teilweise oder vollständig ungültig machen.
Das ist der häufigste — und kritischste — Fehler. Jede Seite im hreflang-Verbund muss auf alle anderen Seiten verweisen — und auf sich selbst.
Seite A verweist auf Seite B → hreflang korrekt Seite B verweist NICHT auf Seite A → hreflang ungültig
Seite A verweist auf Seite B → hreflang korrekt Seite B verweist zurück auf Seite A → hreflang valide
Google ignoriert hreflang nicht auf Unterseiten. Eine Leistungsseite, eine Produktseite, ein Blog-Artikel — jede URL, für die ein länderspezifisches Signal relevant ist, muss eigene hreflang-Tags haben.
hreflang nur auf index.html gesetzt
hreflang auf jeder relevanten Unterseite gesetzt
<!-- ❌ Falsch: Canonical und hreflang zeigen auf verschiedene URLs --> <link rel="canonical" href="https://www.ihre-domain.de/"> <link rel="alternate" hreflang="de-DE" href="https://ihre-domain.de/"> <!-- ohne www! -->
Canonical und hreflang müssen exakt dieselbe URL-Form verwenden — mit oder ohne www, mit oder ohne trailing slash, HTTP vs. HTTPS.
<!-- ❌ Häufiger Fehler: x-default fehlt komplett --> <link rel="alternate" hreflang="de-DE" href="..."> <link rel="alternate" hreflang="de-AT" href="..."> <!-- Kein x-default! -->
Ohne x-default hat Google keinen definierten Fallback für Nutzer außerhalb Ihrer hreflang-Länder. x-default immer setzen, auf sinnvolle Fallback-URL zeigen.
<!-- ❌ Falsch: relative URL --> <link rel="alternate" hreflang="de-DE" href="/leistungen/"> <!-- ✓ Richtig: absolute URL mit Protokoll und Domain --> <link rel="alternate" hreflang="de-DE" href="https://www.ihre-domain.de/leistungen/">
Google verarbeitet nur absolute URLs in hreflang-Tags.
<!-- ❌ Falsch: kein ISO 639-1 Sprachcode --> <link rel="alternate" hreflang="deutsch" href="..."> <link rel="alternate" hreflang="ger" href="..."> <!-- ✓ Richtig: ISO 639-1 Code --> <link rel="alternate" hreflang="de-DE" href="...">
Sprach-Codes müssen dem ISO 639-1 Standard folgen (zweistellig: de, en, fr). Ländercodes dem ISO 3166-1 Alpha-2 Standard (zweistellig: DE, AT, CH).
<!-- ❌ Problem: Seite ist noindex, aber trotzdem in hreflang -->
<meta name="robots" content="noindex">
<link rel="alternate" hreflang="de-DE" href="...">
Noindexierte Seiten sollten nicht Teil eines hreflang-Verbunds sein — Google kann sie nicht indizieren und ignoriert die hreflang-Signale dieser Seiten.
Für WordPress-Websites gibt es zwei bewährte Plugins sowie eine manuelle Lösung für Entwickler:
Rankmath oder Yoast SEO für einsprachige DACH-Websites: Wenn Ihre Website nur auf Deutsch ist, aber länderspezifische hreflang-Signale für DE, AT und CH setzen soll, erlauben beide Plugins manuelle hreflang-Eingabe über ihre SEO-Settings-Oberfläche.
Manuelle Implementierung im Theme (für Entwickler):
// In functions.php oder einem Custom Plugin
function add_hreflang_tags() {
$current_url = home_url( $_SERVER['REQUEST_URI'] );
echo '<link rel="alternate" hreflang="de"
href="' . esc_url($current_url) . '">' . "\n";
echo '<link rel="alternate" hreflang="de-DE"
href="' . esc_url($current_url) . '">' . "\n";
echo '<link rel="alternate" hreflang="de-AT"
href="' . esc_url($current_url) . '">' . "\n";
echo '<link rel="alternate" hreflang="de-CH"
href="' . esc_url($current_url) . '">' . "\n";
echo '<link rel="alternate" hreflang="x-default"
href="' . esc_url($current_url) . '">' . "\n";
}
add_action( 'wp_head', 'add_hreflang_tags' );
Selbsttest ohne Tools — direkt in der Browser-Konsole:
document.querySelectorAll('link[hreflang]').forEach(el => {
console.log(el.getAttribute('hreflang') + ' → ' + el.getAttribute('href'));
});
Hawd Design prüft Ihre hreflang-Implementierung und liefert einen detaillierten Fehlerbericht — inklusive priorisierter Korrekturmaßnahmen. Technisches SEO-Audit ab 500 €, Ergebnis in 3–5 Werktagen.
Wer in Deutschland, Österreich und der Schweiz sichtbar sein will, braucht korrekte hreflang-Tags. Nicht weil Google sie fordert — sondern weil Google ohne sie eigenständige Entscheidungen über Ihre DACH-Sichtbarkeit trifft, die nicht immer in Ihrem Sinne sind.
Die technische Implementierung dauert — korrekt gemacht — wenige Stunden. Die Fehlerbehebung nach Monaten unsichtbarer Traffic-Verluste dauert länger.
Hawd Design implementiert hreflang standardmäßig in jedem DACH-Webprojekt — de-DE, de-AT, de-CH, x-default — als Teil des technischen SEO-Setups, nicht als Zusatzleistung.