hreflang
attributes play a crucial role in informing search engines about the language and geographical targeting of a webpage. This becomes particularly important for websites that have content in multiple languages or cater to different regions.
What is hreflang?
hreflang
is an HTML attribute used to specify the language and geographical targeting of a webpage. When a site has content in multiple languages or versions tailored for different regions, hreflang
helps search engines serve the most appropriate version of a page to users based on their language preference or geographic location.
This is vital for providing a better user experience and ensuring that users find the content in their preferred language. It also helps in improving the site’s SEO by reducing problems like duplicate content and ensuring the correct regional pages rank in each area.
How Does hreflang Work?
The hreflang
attribute is added to the <link>
element in the <head>
section of an HTML document. It tells search engines which language and country the current document is intended for. If there are multiple versions of a page, each version will have its own hreflang
attribute, creating a network of pages where search engines can understand the relationship between them.
The syntax for hreflang
is straightforward. It includes a language code, and optionally, a country code. For example, en
for English, es
for Spanish, and if targeting a specific country, you might use en-GB
for English in the United Kingdom or en-US
for English in the United States.
hreflang Country Codes
Country codes in hreflang
attributes follow the ISO 3166-1 Alpha-2 code standard. These are two-letter codes representing countries around the world. For instance:
- US for the United States
- GB for Great Britain
- FR for France
- DE for Germany
- IN for India
When combined with a language code, it creates a more specific targeting. For example, fr-CA
would be used for French as spoken in Canada.
Importance of hreflang in International SEO
- Prevents Language Confusion: By clearly indicating the intended audience’s language and region,
hreflang
helps prevent confusion when the same content is available in multiple languages. - Improves User Experience: Users are more likely to stay on a page and engage with the content if it’s in their preferred language.
- Enhances Search Engine Accuracy: It helps search engines like Google present the correct language version of your site in search results, improving your site’s visibility.
- Reduces Duplicate Content Issues: For sites with similar content in different languages,
hreflang
helps search engines understand these are intended for different audiences, thus not duplicate content.
Best Practices for Using hreflang
- Ensure Correct Language and Country Codes: Use the right combinations of language and country codes for your target audience.
- Use Self-referencing hreflang Tags: Each page should include an hreflang tag for itself.
- Include a Return Link: If Page A links to Page B with
hreflang
, then Page B should link back to Page A. - Consistent Content Across Languages: The content should be equivalent across all languages and regions, differing only in language and minor regional variations.
- Avoid Common Mistakes: Common mistakes include using the wrong language codes, forgetting to include a return link, or not keeping hreflang tags updated.
List of hreflang Country Codes
Country | Hreflang Code |
---|---|
Afghanistan | AF |
Aland 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 |
Cape 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 | FM |
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, Province of China | 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, U.S. | VI |
Wallis and Futuna | WF |
Western Sahara | EH |
Yemen | YE |
Zambia | ZM |
Zimbabwe | ZW |
List of hreflang Language Codes
Here’s a non-exhaustive list of hreflang
language codes commonly used:
Language | Hreflang Code |
---|---|
Abkhazian | ab |
Afrikaans | af |
Aragonese | an |
Arabic | ar |
Assamese | as |
Azerbaijani | az |
Belarusian | be |
Bulgarian | bg |
Bengali | bn |
Tibetan | bo |
Breton | br |
Bosnian | bs |
Catalan / Valencian | ca |
Chechen | ce |
Corsican | co |
Czech | cs |
Church Slavic | cu |
Welsh | cy |
Danish | da |
German | de |
Greek | el |
English | en |
Esperanto | eo |
Spanish / Castilian | es |
Estonian | et |
Basque | eu |
Persian | fa |
Finnish | fi |
Fijian | fj |
Faroese | fo |
French | fr |
Western Frisian | fy |
Irish | ga |
Gaelic / Scottish Gaelic | gd |
Galician | gl |
Manx | gv |
Hebrew | he |
Hindi | hi |
Croatian | hr |
Haitian; Haitian Creole | ht |
Hungarian | hu |
Armenian | hy |
Indonesian | id |
Icelandic | is |
Italian | it |
Japanese | ja |
Javanese | jv |
Georgian | ka |
Kongo | kg |
Korean | ko |
Kurdish | ku |
Cornish | kw |
Kirghiz | ky |
Latin | la |
Luxembourgish; Letzeburgesch | lb |
Limburgan; Limburger; Limburgish | li |
Lingala | ln |
Lithuanian | lt |
Latvian | lv |
Malagasy | mg |
Macedonian | mk |
Mongolian | mn |
Moldavian | mo |
Malay | ms |
Maltese | mt |
Burmese | my |
Norwegian (Bokmål) | nb |
Nepali | ne |
Dutch | nl |
Norwegian (Nynorsk) | nn |
Norwegian | no |
Occitan (post 1500); Provençal | oc |
Polish | pl |
Portuguese | pt |
Raeto-Romance | rm |
Romanian | ro |
Russian | ru |
Sardinian | sc |
Northern Sami | se |
Slovak | sk |
Slovenian | sl |
Somali | so |
Albanian | sq |
Serbian | sr |
Swedish | sv |
Swahili | sw |
Turkmen | tk |
Turkish | tr |
Tahitian | ty |
Ukrainian | uk |
Urdu | ur |
Uzbek | uz |
Vietnamese | vi |
Volapük | vo |
Yiddish | yi |
Chinese (simplified) | zh-hans |
Thai | th |
Each of these codes can be paired with a country code to target a specific regional audience. For example, en-GB
for English in the United Kingdom, pt-BR
for Portuguese in Brazil, and es-MX
for Spanish in Mexico.
The hreflang
attribute is a crucial element for websites with content in multiple languages or that are targeting different geographic regions. Proper implementation of hreflang
and understanding the correct use of language and country codes can significantly enhance a website’s international SEO performance. It ensures that users are directed to the content most relevant to their language and region, thereby improving their overall experience and engagement with your site. As global digital connectivity continues to grow, mastering hreflang
becomes even more essential for businesses looking to expand their reach across diverse audiences.