Korte definitie
Hreflang — een aanduiding in de HTML, een HTTP-header of de sitemap die zoekmachines vertelt welke pagina's taal- of landversies van elkaar zijn, zodat ze elke bezoeker de juiste versie tonen.
Ook bekend als: hreflang-tag, hreflang-attribuut, x-default.
Hreflang is een aanduiding waarmee je zoekmachines vertelt welke pagina’s taal- of landversies van elkaar zijn, zodat Google elke bezoeker de versie in zijn taal of voor zijn land toont. Het is geen rankingtruc: hreflang helpt bepalen welke versie verschijnt, niet hoe hoog ze staat.
Hoe ziet hreflang eruit?
In de HTML staat hreflang als een reeks linkelementen in de head van de pagina. Elke versie krijgt één regel met haar taalcode en haar volledige URL, inclusief https://. Een site met een Nederlandstalige versie voor België, een Nederlandstalige versie voor Nederland en een Franstalige versie voor België ziet er zo uit:
<link rel="alternate" hreflang="nl-BE" href="https://voorbeeld.be/" />
<link rel="alternate" hreflang="nl-NL" href="https://voorbeeld.be/nl-nl/" />
<link rel="alternate" hreflang="fr-BE" href="https://voorbeeld.be/fr/" />
<link rel="alternate" hreflang="x-default" href="https://voorbeeld.be/" />Dezelfde set regels staat op alle drie de versies, dus elke pagina verwijst ook naar zichzelf. Je kunt dezelfde koppeling ook in een HTTP-header zetten (handig voor pdf’s) of in de XML-sitemap met xhtml:link-regels. Volgens de Google-documentatie over gelokaliseerde versies zijn de drie methodes gelijkwaardig.
Taalcodes en landcodes
De waarde van hreflang begint altijd met een taalcode volgens ISO 639-1, zoals nl, fr of en. Daarachter mag een landcode volgens ISO 3166-1 staan: nl-BE is Nederlands voor België, fr-BE Frans voor België en nl-NL Nederlands voor Nederland. Een taalcode alleen, zoals nl, geldt voor iedereen die die taal spreekt, ongeacht het land.
Een landcode alleen werkt niet. be is geen België maar de taalcode voor Wit-Russisch. Ook UK en EU hebben geen effect, omdat ze geen geldige ISO-landcodes zijn. Schrijf en-GB voor het Verenigd Koninkrijk.
Wat doet x-default?
x-default is een gereserveerde waarde. Ze wijst naar de pagina voor bezoekers van wie de taal bij geen enkele versie past, bijvoorbeeld iemand met een Duitse browser op een site in het Nederlands en het Frans. Volgens Google is x-default bedoeld voor taalkeuzepagina’s en werkt de waarde daar het best. Een taalcode zet je er niet bij.
Waarom moeten beide pagina’s naar elkaar verwijzen?
Hreflang werkt alleen in twee richtingen. Verwijst pagina A naar pagina B, dan moet B ook naar A verwijzen. Doet B dat niet, dan negeert Google de koppeling. Zo kan een andere site zich niet zomaar als vertaling van jouw pagina aanmelden.
Die regel maakt hreflang kwetsbaar bij handwerk. Voeg je een nieuwe taalversie toe, dan moet je elke bestaande versie bijwerken. Vergeet je één pagina, dan valt de koppeling voor die pagina weg zonder dat je iets ziet op de site zelf.
Veelgemaakte fouten met hreflang
- een terugverwijzing ontbreekt, waardoor Google de koppeling negeert;
- de codes staan verkeerd, zoals
bevoor België ofbe-nlin plaats vannl-BE(be-nlbetekent Wit-Russisch voor Nederland); - relatieve URL’s zoals
/fr/in plaats van volledige URL’s methttps://; - een canonieke URL die naar de versie van een ander land wijst, waardoor alleen die versie telt;
- hreflang naar een vertaling die niet bestaat.
Google gebruikt hreflang trouwens niet om de taal van een pagina te herkennen. Die taal leidt Google af uit de tekst zelf. Een pagina met hreflang="fr" maar met Nederlandse tekst blijft voor Google dus een Nederlandstalige pagina.
Hoe wij hreflang op straffesites.com regelen
Onze site bestaat in het Nederlands en het Engels. Eén vaste koppellijst in de code bepaalt welke Nederlandse en Engelse pagina’s vertalingen van elkaar zijn. Uit die lijst bouwen we bij elke deploy zowel de hreflang-links in de HTML als de xhtml:link-regels in de sitemap. Omdat beide uit dezelfde bron komen, kunnen ze niet uit elkaar lopen en is elke koppeling automatisch wederkerig.
Pagina’s die maar in één taal bestaan, krijgen geen hreflang-links, alleen een canonieke URL. We verzinnen dus nooit een vertaling die er niet is. Je kunt dat zelf nakijken in de broncode van deze pagina: ze verwijst naar haar Engelse tegenhanger, en die verwijst terug.
Samenhang met andere begrippen
Hreflang is één onderdeel van internationale SEO, naast de keuze voor een domein of submap, lokale zoekwoorden en meten per land. Het werkt samen met de canonieke URL: bij versies voor verschillende landen wijst elke canonieke URL naar zichzelf. Hoe je een meertalige website met een headless CMS opzet, staat in de gids over een meertalige website met Storyblok.
Betrouwbare bron en verdere uitleg
Lees voor de volledige regels de Google Search Central-documentatie over gelokaliseerde versies van je pagina’s.