Hebt u een website in het Nederlands en het Frans, of een aparte versie voor Frankrijk of Nederland? Dan wilt u dat een Vlaamse bezoeker de Nederlandstalige pagina ziet, een Brusselse Franstalige de Belgisch-Franse en een Parijse aankoper de Franse. Daarvoor dient hreflang. In dit artikel leggen we uit wat hreflang tags zijn, welke codes u gebruikt, waar u ze plaatst en welke fouten we in de praktijk het vaakst tegenkomen. Ook zonder technische achtergrond kunt u zo met uw webbouwer het juiste gesprek voeren.
In dit artikel
Hreflang is een attribuut waarmee u zoekmachines vertelt dat een pagina in andere talen of voor andere landen bestaat, en voor welk publiek elke versie bedoeld is. Het staat niet zichtbaar op de pagina. Het zit in de code, in de XML-sitemap of in de HTTP-header.
Een hreflang tag zegt in feite: "Deze pagina heeft een Franstalige versie voor België op dit adres, en een Nederlandstalige versie voor België op dat adres." Google gebruikt die informatie om in de zoekresultaten de versie te tonen die het best past bij de taal en de locatie van de zoeker.
Belangrijk om te weten: hreflang is een signaal, geen bevel. Google kan het negeren als de signalen tegenstrijdig zijn of de tags fouten bevatten. Hreflang laat een pagina ook niet hoger ranken. Het zorgt ervoor dat de juiste versie van een pagina verschijnt op de plaats waar uw site al rankt.
U heeft hreflang nodig zodra dezelfde inhoud in meer dan één taal- of landversie bestaat. Voor Belgische bedrijven is dat bijna altijd het geval, omdat veel sites minstens een Nederlandstalige en een Franstalige versie hebben.
Hreflang is vooral nuttig in deze situaties:
Hebt u één website in één taal, voor één markt? Dan heeft u geen hreflang nodig. Hreflang is ook maar één onderdeel van een bredere aanpak, die we toelichten op onze pagina over het werk van een internationaal SEO-bureau.
De meest gebruikte vorm is een reeks link-elementen in de head van de HTML-pagina. Elke regel vermeldt een taalcode en het volledige adres van de bijhorende versie. Voor een offertepagina van een Belgisch bedrijf met een Nederlandstalige en een Franstalige versie ziet dat er zo uit:
<link rel="alternate" hreflang="nl-be" href="https://www.uwbedrijf.be/nl/offerte/" />
<link rel="alternate" hreflang="fr-be" href="https://www.uwbedrijf.be/fr/devis/" />
<link rel="alternate" hreflang="x-default" href="https://www.uwbedrijf.be/" />Drie dingen vallen op. Elke versie staat in de lijst, ook de pagina zelf. De adressen zijn volledig, met https en domeinnaam. En de laatste regel, x-default, vertelt Google welke pagina hij moet tonen aan bezoekers voor wie geen van de andere versies past.
Exact dezelfde reeks staat op de Nederlandstalige en op de Franstalige pagina.
Een hreflang-code bestaat uit een taalcode volgens ISO 639-1, eventueel gevolgd door een landcode volgens ISO 3166-1 alfa-2. Hoofdletters maken geen verschil: nl-BE en nl-be worden op dezelfde manier gelezen.
De codes die voor Belgische bedrijven het vaakst terugkomen:
U kunt een taal opgeven zonder land, maar geen land zonder taal. Een veelgemaakte fout is hreflang="be" gebruiken om België aan te duiden. "be" is de taalcode voor het Wit-Russisch. Een andere klassieker is en-UK: de correcte landcode voor het Verenigd Koninkrijk is GB, dus en-GB.
De waarde x-default duidt de pagina aan die Google moet tonen als geen enkele andere versie overeenkomt met de taal of het land van de zoeker. Stel dat uw site versies heeft voor nl-BE, fr-BE en fr-FR, en iemand zoekt in het Duits. Dan verschijnt de x-default-versie.
Welke pagina u als x-default kiest, hangt af van uw site:
X-default is niet verplicht, maar wel aan te raden. Het voorkomt dat Google zelf een versie kiest voor bezoekers buiten uw doelmarkten, en het maakt uw bedoeling expliciet. Neem x-default ook op in de reeks op elke taalversie, net als de andere codes.
Er zijn drie methodes. Google behandelt ze als gelijkwaardig. Kies er één en pas die consequent toe: drie methodes door elkaar verhogen vooral de kans op tegenstrijdigheden.
Dit is de meest gebruikte methode, zoals in het voorbeeld hierboven. Ze is overzichtelijk en makkelijk te controleren in de broncode.
Bij grote sites of veel taalversies is de sitemap vaak handiger. Elke URL krijgt dan de lijst van zijn alternatieven:
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>https://www.uwbedrijf.be/nl/offerte/</loc>
<xhtml:link rel="alternate" hreflang="nl-be" href="https://www.uwbedrijf.be/nl/offerte/" />
<xhtml:link rel="alternate" hreflang="fr-be" href="https://www.uwbedrijf.be/fr/devis/" />
</url>
<url>
<loc>https://www.uwbedrijf.be/fr/devis/</loc>
<xhtml:link rel="alternate" hreflang="nl-be" href="https://www.uwbedrijf.be/nl/offerte/" />
<xhtml:link rel="alternate" hreflang="fr-be" href="https://www.uwbedrijf.be/fr/devis/" />
</url>
</urlset>Voor bestanden zonder HTML, zoals pdf-brochures of technische fiches, kunt u hreflang meesturen in de HTTP-header van de server:
Link: <https://www.uwbedrijf.be/nl/brochure.pdf>; rel="alternate"; hreflang="nl-be",
<https://www.uwbedrijf.be/fr/brochure.pdf>; rel="alternate"; hreflang="fr-be"
Hreflang werkt alleen in twee richtingen. Als uw Nederlandstalige pagina naar de Franstalige verwijst, moet de Franstalige pagina ook terugverwijzen naar de Nederlandstalige. Ontbreekt die terugverwijzing, dan kan Google de tags voor dat paar negeren.
Daarnaast verwijst elke pagina ook naar zichzelf. Bij drie taalversies bevat elke versie dus dezelfde drie regels, eventueel aangevuld met x-default.
In de praktijk gaat het vaak mis bij:
Elke URL in een hreflang-reeks moet een bestaande, indexeerbare pagina zijn die met status 200 antwoordt.
De canonical-tag vertelt Google welke URL de hoofdversie is van een pagina. Hreflang vertelt welke versies voor andere talen of landen bestaan. Beide moeten elkaar versterken.
De regel is eenvoudig: elke taalversie heeft een canonical naar zichzelf. De Franstalige pagina verwijst met haar canonical naar de Franstalige URL, en vermeldt daarnaast de andere versies via hreflang:
<link rel="canonical" href="https://www.uwbedrijf.be/fr/devis/" />
<link rel="alternate" hreflang="nl-be" href="https://www.uwbedrijf.be/nl/offerte/" />
<link rel="alternate" hreflang="fr-be" href="https://www.uwbedrijf.be/fr/devis/" />Een canonical naar een andere taalversie is een ernstige fout. Daarmee vraagt u Google om de eigen pagina als duplicaat te beschouwen, waardoor ze uit de index kan verdwijnen. Dat gebeurt vaker dan men denkt, bijvoorbeeld wanneer een thema of plugin standaard naar de Nederlandstalige startpagina verwijst.
Ook pagina's met een noindex-tag horen niet in een hreflang-reeks. Een pagina die niet geïndexeerd mag worden, kan geen alternatief zijn in de zoekresultaten.
Ja. Hreflang werkt binnen één domein, tussen submappen, tussen subdomeinen en tussen volledig verschillende domeinen. Een pagina op uwbedrijf.be kan dus verwijzen naar haar tegenhanger op uwbedrijf.fr, op voorwaarde dat de verwijzing wederkerig is.
Welke structuur u kiest, is een aparte beslissing. Landendomeinen, submappen en subdomeinen kunnen alle drie goed werken. De keuze hangt af van het aantal talen en markten, van uw fysieke aanwezigheid in een land en van de vraag of er lokale marketingteams zijn met eigen autonomie. Die afweging maakt u best in een strategisch gesprek. We gaan er dieper op in in ons artikel ccTLD of subfolder.
Het typische Belgische geval is een site met een Nederlandstalige en een Franstalige versie, bijvoorbeeld in de submappen /nl/ en /fr/. Hier zijn er twee mogelijkheden:
Voor een kmo die levert, factureert of service verleent in België is nl-BE en fr-BE meestal de meest nauwkeurige keuze. Als x-default kiest u een taalkeuzepagina, of de versie die u als hoofdversie beschouwt.
Let ook op de startpagina. Veel Belgische sites sturen bezoekers automatisch door naar /nl/ of /fr/ op basis van de taal van de browser. Dat mag, zolang zoekmachines en bezoekers elke versie rechtstreeks kunnen bereiken en een duidelijke taalkeuze op elke pagina staat.
Wie na België ook Frankrijk wil bereiken, voegt een derde versie toe: fr-FR. Dat kan in een submap op het Belgische domein of op een apart .fr-domein. De hreflang-reeks breidt dan uit, op elke versie:
<link rel="alternate" hreflang="nl-be" href="https://www.uwbedrijf.be/nl/machines/" />
<link rel="alternate" hreflang="fr-be" href="https://www.uwbedrijf.be/fr/machines/" />
<link rel="alternate" hreflang="fr-fr" href="https://www.uwbedrijf.fr/machines/" />
<link rel="alternate" hreflang="x-default" href="https://www.uwbedrijf.be/" />Nu bestaan er twee Franstalige versies. Hreflang vertelt Google welke voor België en welke voor Frankrijk bedoeld is, zodat ze niet met elkaar concurreren. Toch is hreflang alleen niet genoeg. Een Franse aankoper verwacht andere termen, een Frans telefoonnummer of contactpunt, andere leveringsvoorwaarden en verwijzingen naar Franse gewoonten. Een Belg zegt "septante" en "GSM", een Fransman "soixante-dix" en "portable".
Hoe u een site bouwt die voor Franse klanten werkt, leest u op onze pagina over een Franse website. De lokalisatie van de teksten zelf behandelen we bij SEO-vertaling. Ons Franse team werkt vanuit Rijsel (Lille), net over de grens.
Bij audits van meertalige sites komen telkens dezelfde problemen terug:
De meeste van die fouten ontstaan later, bij een nieuwe pagina, een gewijzigde URL of een plugin-update. Regelmatige controle is dus even belangrijk als een correcte opzet.
Google Search Console had vroeger een apart rapport voor internationale targeting, maar dat bestaat al enkele jaren niet meer. U kunt hreflang dus niet langer op één plaats in Search Console nakijken. Controleren gebeurt vandaag vooral met crawlers en met handmatige steekproeven.
Een praktische werkwijze:
Veel Belgische bedrijfssites draaien op WordPress. Meertalige plugins zoals WPML en Polylang voegen hreflang doorgaans automatisch toe zodra pagina's als vertalingen aan elkaar gekoppeld zijn. Dat is handig, maar het werkt alleen goed als de configuratie klopt.
Controleer in elk geval:
Na de configuratie laat u een crawler over de site lopen. Zo ziet u zwart op wit wat de plugin werkelijk genereert.
Voor een site met twee talen en een duidelijke structuur kan een goede webbouwer hreflang correct opzetten. Het wordt complexer zodra u meerdere landen met dezelfde taal bedient, verschillende domeinen combineert, een migratie plant of honderden productpagina's hebt.
Hreflang vertelt Google welke versie bij wie hoort. Zoekwoorden per markt, lokale content en autoriteit in het doelland moet u daarnaast apart uitwerken.
Mintense werkt al 17 jaar in 16 talen en 60 landen, met moedertaalteams in Italië, Frankrijk en het Verenigd Koninkrijk. Wilt u weten of uw hreflang klopt, of plant u een nieuwe taal- of landversie? Lees hoe we als internationaal SEO-bureau te werk gaan of neem contact op.
Hreflang is een attribuut waarmee u zoekmachines vertelt dat een pagina in andere talen of voor andere landen bestaat, en voor welk publiek elke versie bedoeld is. U plaatst het in de head van de HTML, in de XML-sitemap of in de HTTP-header. Google gebruikt die informatie om de versie te tonen die past bij de taal en locatie van de zoeker. Hreflang is een signaal en geen bevel, en het verhoogt uw posities niet rechtstreeks.
Voor een site die zich specifiek op België richt, gebruikt u meestal nl-BE voor de Nederlandstalige versie en fr-BE voor de Franstalige versie, aangevuld met x-default voor bezoekers die bij geen van beide passen. Elke versie vermeldt de volledige reeks, ook zichzelf. Gebruik nooit alleen "be" als code: dat is de taalcode voor het Wit-Russisch. Als uw pagina's voor alle Nederlandstaligen en Franstaligen bedoeld zijn, ongeacht het land, volstaan nl en fr.
Beide codes duiden Franstalige pagina's aan, maar voor een ander land: fr-BE voor België, fr-FR voor Frankrijk. Als u beide versies hebt, vertelt hreflang Google welke versie hij aan Belgische en welke aan Franse zoekers moet tonen, zodat ze niet met elkaar concurreren. Inhoudelijk is het zinvol om de Franse versie volledig te lokaliseren, met de termen, contactgegevens en voorwaarden die Franse aankopers verwachten. Hreflang alleen maakt een Belgische tekst niet Frans.
Hreflang staat op elke pagina die in meer dan één taal- of landversie bestaat. Op die pagina's vermeldt u alle versies, inclusief de pagina zelf en eventueel x-default, en elke versie bevat dezelfde reeks. Pagina's die maar in één taal bestaan, hebben geen hreflang nodig. Verwijs nooit naar een vertaling die er niet is, en neem geen pagina's op die doorverwijzen, een foutmelding geven of een noindex-tag hebben.
Search Console heeft al enkele jaren geen apart rapport meer voor internationale targeting, dus controleren gebeurt vooral met een crawler zoals Screaming Frog of Sitebulb. Die tonen ontbrekende terugverwijzingen, ongeldige codes en URL's die niet correct antwoorden. Vul dat aan met handmatige controles: bekijk de broncode van enkele pagina's per taal, controleer de canonical met de URL-inspectie en zoek zelf in de lokale Google-versie welke pagina verschijnt.
WPML en vergelijkbare meertalige plugins voor WordPress voegen hreflang doorgaans automatisch toe aan pagina's die als vertalingen aan elkaar gekoppeld zijn. Controleer wel of de taalcodes het juiste land bevatten, bijvoorbeeld nl-BE en fr-BE, of elke pagina aan haar vertaling gekoppeld is, hoe x-default ingesteld is en of geen andere plugin een tegenstrijdige canonical toevoegt. Een crawl na de configuratie toont wat de plugin werkelijk genereert.