Hreflang tags are essential to gaining global recognition if your website contains content in multiple languages or wants to give worldwide users a more personalised experience. The hreflang tagging process isn’t particularly complicated. However, you need to be organised as there is a need for reciprocal tagging, which may leave you struggling without expert support. You can also automate some of the process of tagging pages with the relevant hreflang tags. Read on to find out why they are essential for businesses targeting an international audience, what they look like, and the recognised hreflang codes.
Hreflang tags
As an HTML attributable tag, the hreflang specifies the language the page is written in and can also target the geographical location of the page, do that it is possible, for example, to show a page written in English, specifically with country dialects relevant to those in the US and Australia so that they see a version with spellings familiar to them, rather than a generic English language page. Google and some other search engines (excluding Bing) use the hreflang tag to serve users the correct version of the page.
The importance of a hreflang tag
Using hreflang tags provides a better customer experience for those searching in different countries that you want to attract to your products or services. They see your page in their search results in their language. After translating your page into other languages, it makes sense to carry out the additional step of hreflang tagging to show users the most appropriate version. Quickly displaying content in a visitor’s native tongue will improve the user experience and, therefore, user engagement rates. All of which will strengthen your SEO and ranking, and, of course, results in more conversions, sales and leads.
Adding a hreflang tag will also prevent search engines from seeing the multiple language pages as duplicates. The pages will be recognised and ranked in their own right, something essential for your search engine ranking and your place in the results shown in different countries. Hreflang clusters share the ranking of the best pages within the cluster. The best match gives the ranking even when the most relevant page is shown to searchers. Whilst hreflang tags are considered a directive so results are not guaranteed. They provide clear signals and a better chance of the best user experience than pages not tagged.
Targeting tags
As we have mentioned, you can tag the language of the page; a simple two-letter code is used, for example, ‘en’ for English and ‘de’ for German. All the relevant codes are listed below. After you have tagged the language, you can go on to tag regions, an optional step that will differentiate the multiple pages showing the addition of a region or country. For English speakers in the UK, the hreflang attribute would be en-gb, whereas for English speakers in the US it would be en-us. Here’s how the tags would look respectively:
<link rel=”alternate” href=http://example.com/ hreflang=”en-gb” />
<link rel=”alternate” href=http://example.com/ hreflang=”en-us” />
This has particular significance for e-commerce stores selling products in multiple countries. A US buyer would expect pricing displayed in dollars; Australians want to see AUS dollars, whilst you may be based in the UK and display prices in £s to users. You can solve this by creating three versions of your page, one for each currency. Each page, pricing aside, is identical, and the hreflang tag will signal to search engines that multiple versions exist and which one to display to visitors from the relevant country.
You can then go further to cater for countries such as Canada, where English and French are the official languages. If you create pages for the Canadian market, it is wise to have both a French and English page and tag them to meet the users’ search language.
Implementation
The first thing to remember is that each page needs a self-referring hreflang tag. For best practice, each page should point back to itself, in addition to the identical pages. You must also ensure that your pages feature a bidirectional pointer in addition to the self-directing tag. The tags are coded in pairs, so that your English pounds page, for instance, must point to the other currency versions, and they, in turn, must each point back to the English pounds page.
Consistency and accuracy are vital to avoid broken tags and the wrong results showing for your specific audiences, which is where it can become confusing without expert help and reliable automation tools to ensure that all areas are covered.
Search engines need to know the relationship of each page to analyse and display each page correctly. Hreflang tags can be incorporated into your web pages by HTTP headers, sitemaps or HTML tags. One of the simplest ways to begin is by adding them to your web page as a <head tag>.
Google also recommends using an x-default tag, which specifies a default page to show users should there not be a language-appropriate version specifically for them. The hreflang tag works on a best-match basis by initially looking for a country match. If no country matches, it will display a language match. If neither, then the fallback is the x-default page version.
There are no limits to the number of hreflang tags you can have on each page, which can, for the uninitiated, lead to confusion when implementing. Hence, starting with a clear map of your website content and how the pages and versions link together to work would be best. This, again, is something that a technical SEO consultancy such as Ditto Digital can assist with.
A final piece of advice – planning and organisation are vital to cover all areas fully and that each tag is reciprocated with bidirectional tagging. Ensure you have completed self-referring and set up defaults where necessary. Setting up the hreflang tags is not the end of the story. No matter how much you try, mistakes will always slip through, so you should regularly perform a technical SEO audit of your website to pick up hreflang tag issues and correct them quickly.
Part one – Hreflang language codes
(2-letter ISO-639-1 Codes)
Language | 2-letter ISO Code |
Abkhaz | ab |
Afar | aa |
Afrikaans | af |
Akan | ak |
Albanian | sq |
Amharic | am |
Arabic | ar |
Aragonese | an |
Armenian | hy |
Assamese | as |
Avaric | av |
Avestan | ae |
Aymara | ay |
Azerbaijani | az |
Bambara | bm |
Bashkir | ba |
Basque | eu |
Belarusian | be |
Bengali, Bangla | bn |
Bihari | bh |
Bislama | bi |
Bosnian | bs |
Breton | br |
Bulgarian | bg |
Burmese | my |
Catalan, Valencian | ca |
Chamorro | ch |
Chechen | ce |
Chichewa, Chewa, Nyanja | ny |
Chinese | zh |
Chuvash | cv |
Cornish | kw |
Corsican | co |
Cree | cr |
Croatian | hr |
Czech | cs |
Danish | da |
Divehi, Dhivehi, Maldivian | dv |
Dutch | nl |
Dzongkha | dz |
English | en |
Esperanto | eo |
Estonian | et |
Ewe | ee |
Faroese | fo |
Fijian | fj |
Finnish | fi |
French | fr |
Fula, Fulah, Pulaar, Pular | ff |
Galician | gl |
Georgian | ka |
German | de |
Greek (modern) | el |
Guaraní | gn |
Gujarati | gu |
Haitian, Haitian Creole | ht |
Hausa | ha |
Hebrew (modern) | he |
Herero | hz |
Hindi | hi |
Hiri Motu | ho |
Hungarian | hu |
Interlingua | ia |
Indonesian | id |
Interlingue | ie |
Irish | ga |
Igbo | ig |
Inupiaq | ik |
Ido | io |
Icelandic | is |
Italian | it |
Inuktitut | iu |
Japanese | ja |
Javanese | jv |
Kalaallisut, Greenlandic | kl |
Kannada | kn |
Kanuri | kr |
Kashmiri | ks |
Kazakh | kk |
Khmer | km |
Kikuyu, Gikuyu | ki |
Kinyarwanda | rw |
Kyrgyz | ky |
Komi | kv |
Kongo | kg |
Korean | ko |
Kurdish | ku |
Kwanyama, Kuanyama | kj |
Latin | la |
Luxembourgish, Letzeburgesch | lb |
Ganda | lg |
Limburgish, Limburgan, Limburger | li |
Lingala | ln |
Lao | lo |
Lithuanian | lt |
Luba-Katanga | lu |
Latvian | lv |
Manx | gv |
Macedonian | mk |
Malagasy | mg |
Malay | ms |
Malayalam | ml |
Maltese | mt |
Māori | mi |
Marathi (Marāṭhī) | mr |
Marshallese | mh |
Mongolian | mn |
Nauru | na |
Navajo, Navaho | nv |
Northern Ndebele | nd |
Nepali | ne |
Ndonga | ng |
Norwegian Bokmål | nb |
Norwegian Nynorsk | nn |
Norwegian | no |
Nuosu | ii |
Southern Ndebele | nr |
Occitan | oc |
Ojibwe, Ojibwa | oj |
Old Church Slavonic, Church Slavonic, Old Bulgarian | cu |
Oromo | om |
Oriya | or |
Ossetian, Ossetic | os |
Panjabi, Punjabi | pa |
Pāli | pi |
Persian (Farsi) | fa |
Polish | pl |
Pashto, Pushto | ps |
Portuguese | pt |
Quechua | qu |
Romansh | rm |
Kirundi | rn |
Romanian | ro |
Russian | ru |
Sanskrit (Saṁskṛta) | sa |
Sardinian | sc |
Sindhi | sd |
Northern Sami | se |
Samoan | sm |
Sango | sg |
Serbian | sr |
Scottish Gaelic, Gaelic | gd |
Shona | sn |
Sinhala, Sinhalese | si |
Slovak | sk |
Slovene | sl |
Somali | so |
Southern Sotho | st |
Spanish, Castilian | es |
Sundanese | su |
Swahili | sw |
Swati | ss |
Swedish | sv |
Tamil | ta |
Telugu | te |
Tajik | tg |
Thai | th |
Tigrinya | ti |
Tibetan Standard, Tibetan, Central | bo |
Turkmen | tk |
Tagalog | tl |
Tswana | tn |
Tonga (Tonga Islands) | to |
Turkish | tr |
Tsonga | ts |
Tatar | tt |
Twi | tw |
Tahitian | ty |
Uyghur, Uighur | ug |
Ukrainian | uk |
Urdu | ur |
Uzbek | uz |
Venda | ve |
Vietnamese | vi |
Volapük | vo |
Walloon | wa |
Welsh | cy |
Wolof | wo |
Western Frisian | fy |
Xhosa | xh |
Yiddish | yi |
Yoruba | yo |
Zhuang, Chuang | za |
Zulu | zu |
Part 2 – Hreflang Region codes
(2-letter ISO-3166-1 Codes)
Country | 2-letter ISO Code |
Åland Islands | AX |
Albania | AL |
Algeria | DZ |
American Samoa | AS |
Andorra | AD |
Angola | AO |
Anguilla | AI |
Antarctica | AQ |
Antigua and Barbuda | AG |
Argentina | AR |
Armenia | AM |
Aruba | AW |
Australia | AU |
Austria | AT |
Azerbaijan | AZ |
Bahamas | BS |
Bahrain | BH |
Bangladesh | BD |
Barbados | BB |
Belarus | BY |
Belgium | BE |
Belize | BZ |
Benin | BJ |
Bermuda | BM |
Bhutan | BT |
Bolivia, Plurinational State of | BO |
Bonaire, Sint Eustatius and Saba | BQ |
Bosnia and Herzegovina | BA |
Botswana | BW |
Bouvet Island | BV |
Brazil | BR |
British Indian Ocean Territory | IO |
Brunei Darussalam | BN |
Bulgaria | BG |
Burkina Faso | BF |
Burundi | BI |
Cambodia | KH |
Cameroon | CM |
Canada | CA |
Cabo Verde | CV |
Cayman Islands | KY |
Central African Republic | CF |
Chad | TD |
Chile | CL |
China | CN |
Christmas Island | CX |
Cocos (Keeling) Islands | CC |
Colombia | CO |
Comoros | KM |
Congo | CG |
Congo, the Democratic Republic of the | CD |
Cook Islands | CK |
Costa Rica | CR |
Côte d’Ivoire | CI |
Croatia | HR |
Cuba | CU |
Curaçao | CW |
Cyprus | CY |
Czech Republic | CZ |
Denmark | DK |
Djibouti | DJ |
Dominica | DM |
Dominican Republic | DO |
Ecuador | EC |
Egypt | EG |
El Salvador | SV |
Equatorial Guinea | GQ |
Eritrea | ER |
Estonia | EE |
Ethiopia | ET |
Falkland Islands (Malvinas) | FK |
Faroe Islands | FO |
Fiji | FJ |
Finland | FI |
France | FR |
French Guiana | GF |
French Polynesia | PF |
French Southern Territories | TF |
Gabon | GA |
Gambia | GM |
Georgia | GE |
Germany | DE |
Ghana | GH |
Gibraltar | GI |
Greece | GR |
Greenland | GL |
Grenada | GD |
Guadeloupe | GP |
Guam | GU |
Guatemala | GT |
Guernsey | GG |
Guinea | GN |
Guinea-Bissau | GW |
Guyana | GY |
Haiti | HT |
Heard Island and McDonald Islands | HM |
Holy See (Vatican City State) | VA |
Honduras | HN |
Hong Kong | HK |
Hungary | HU |
Iceland | IS |
India | IN |
Indonesia | ID |
Iran, Islamic Republic of | IR. |
Iraq | IQ |
Ireland | IE |
Isle of Man | IM |
Israel | IL |
Italy | IT |
Jamaica | JM |
Japan | JP |
Jersey | JE |
Jordan | JO |
Kazakhstan | KZ |
Kenya | KE |
Kiribati | KI. |
Korea, Democratic People’s Republic of | KP |
Korea, Republic of | KR |
Kuwait | KW |
Kyrgyzstan | KG |
Lao People’s Democratic Republic | LA |
Latvia | LV |
Lebanon | LB |
Lesotho | LS |
Liberia | LR |
Libya | LY |
Liechtenstein | LI |
Lithuania | LT |
Luxembourg | LU |
Macao | MO |
Macedonia, the former Yugoslav Republic of | MK |
Madagascar | MG |
Malawi | MW |
Malaysia | MY |
Maldives | MV |
Mali | ML |
Malta | MT |
Marshall Islands | MH |
Martinique | MQ |
Mauritania | MR |
Mauritius | MU |
Mayotte | YT |
Mexico | MX |
Micronesia, Federated States of | F |
Moldova, Republic of | MD |
Monaco | MC |
Mongolia | MN |
Montenegro | ME |
Montserrat | MS |
Morocco | MA |
Mozambique | MZ |
Myanmar | MM |
Namibia | NA |
Nauru | NR |
Nepal | NP |
Netherlands | NL |
New Caledonia | NC |
New Zealand | NZ |
Nicaragua | NI |
Niger | NE |
Nigeria | NG |
Niue | NU |
Norfolk Island | NF |
Northern Mariana Islands | MP |
Norway | NO |
Oman | OM |
Pakistan | PK |
Palau | PW |
Palestine, State of | PS |
Panama | PA |
Papua New Guinea | PG |
Paraguay | PY |
Peru | PE |
Philippines | PH |
Pitcairn | PN |
Poland | PL |
Portugal | PT |
Puerto Rico | PR |
Qatar | QA |
Réunion | RE |
Romania | RO |
Russian Federation | RU |
Rwanda | RW |
Saint Barthélemy | BL |
Saint Helena, Ascension and Tristan da Cunha | SH |
Saint Kitts and Nevis | KN |
Saint Lucia | LC |
Saint Martin (French part) | MF |
Saint Pierre and Miquelon | PM |
Saint Vincent and the Grenadines | VC |
Samoa | WS |
San Marino | SM |
Sao Tome and Principe | ST |
Saudi Arabia | SA |
Senegal | SN |
Serbia | RS |
Seychelles | SC |
Sierra Leone | SL |
Singapore | SG |
Sint Maarten (Dutch part) | SX |
Slovakia | SK |
Slovenia | SI |
Solomon Islands | SB |
Somalia | SO |
South Africa | ZA |
South Georgia and the South Sandwich Islands | GS |
South Sudan | SS |
Spain | ES |
Sri Lanka | LK |
Sudan | SD |
Suriname | SR |
Svalbard and Jan Mayen | SJ |
Swaziland | SZ |
Sweden | SE |
Switzerland | CH |
Syrian Arab Republic | SY |
Taiwan | TW |
Tajikistan | TJ |
Tanzania, United Republic of | TZ |
Thailand | TH |
Timor-Leste | TL |
Togo | TG |
Tokelau | TK |
Tonga | TO |
Trinidad and Tobago | TT |
Tunisia | TN |
Turkey | TR |
Turkmenistan | TM |
Turks and Caicos Islands | TC |
Tuvalu | TV |
Uganda | UG |
Ukraine | UA |
United Arab Emirates | AE |
United Kingdom | GB |
United States | US |
United States Minor Outlying Islands | UM |
Uruguay | UY |
Uzbekistan | UZ |
Vanuatu | VU |
Venezuela, Bolivarian Republic of | VE |
Viet Nam | VN |
Virgin Islands, British | VG |
Virgin Islands, US. | VI |
Wallis and Futuna | WF |
Western Sahara | EH |
Yemen | YE |
Zambia | ZM |
Zimbabwe | ZW |
Adding hreflang tags to improve your global user experience is something all website owners should see as a crucial part of supporting their worldwide exposure and growth, so the sooner you get started, the sooner you will reap the benefits.