Hreflang Attribute

7 Common Hreflang Mistakes (and How to Fix Them) + Bonus Tip

It is surprising how often I hear about international SEO discussed without any mention of “hreflang.” If anything, because hreflang is such a tricky subject, it should be discussed more often in conjunction with helping SEO specialists understand how to target international web audiences more accurately.

Not only is it difficult to implement correctly on your geo-targeted sites, but the purpose of hreflang is also commonly misunderstood. It has been around for a few years but SEOs who target international audiences still struggle to figure out how to use hreflang annotations correctly. These are misconceptions even among advanced SEO experts, so make sure you understand how to correctly use it to set up your international sites for success.

The Purpose of Hreflang

Hreflang annotations are meant to cross-reference pages that are similar in content, but target different audiences. You can target different audiences with hreflang according to their language and/or their country. This ensures that the correct pages will be shown to the correct users when they search on the versions of Google search that you are targeting.

Here is an example of two hreflang tags that target English speakers in the USA and English speakers in Canada:

Both of these tags would appear on both pages. This would ensure that Canadians searching on would find the page targeting Canadians, and Americans searching on would find the page targeting Americans.

So that’s the purpose of hreflang, but often I come across mistakes and misconceptions about how to implement hreflang. Here are some of the most common:

Common Hreflang Mistakes that is committed in Implementation

Return Tag Errors

“Return Tag Errors” are the result of hreflang annotations that don’t cross-reference each other. These can be found within Google Search Console under the International Targeting tab. If your website has hreflang annotations, either via the page tagging method or the xml sitemaps method, there will be data reported on how many hreflang tags were found, and how many hreflang errors were found. If there are errors, often times those errors are “return tag errors.” Here’s an example of a site that has 412 hreflang tags with errors – all due to “no return tags”):

Your annotations must be confirmed from the other pages. If page A links to page B, page B must link back to page A, otherwise, your annotations may not be interpreted correctly.

Often times, the “missing link” is because the hreflang tags do not include a reference to the page itself. Your annotations should be self-referential. Page A should use rel-alternate-hreflang annotation linking to itself.

Using the Wrong Country or Language Codes

When you are adding hreflang codes to your webpages, you need to be absolutely sure that you are using the correct country and language codes. According to Google, “The value of the hreflang attribute must be in ISO 639-1 format for the language, and in ISO 3166-1 Alpha 2 format for the region. Specifying only the region is not supported.”

One of the most common mistakes is using “en-uk” to specify English speakers in the United Kingdom. However, the correct hreflang tag for the UK is actually “en-gb.”

You can use hreflang generator tools like this one to figure out which values you should be using.

Combining Hreflang Sitemaps and Page Tagging Methods

There is no need to use multiple methods for hreflang implementation. Google recommends against it, since it would be redundant. You certainly can use both methods, and there is no clear advantage of one method over the other. Here are some considerations for when you are deciding whether to use the xml sitemaps or page tagging methods:

  • Hreflang xml sitemaps can be difficult to create and update. You can use online tools or create it in Excel, but it is difficult to automate the process. If you have xml sitemaps that your CMS updates for you automatically, it would be better to continue to use those rather than create separate, static hreflang xml sitemaps.
  • Page tagging leads to code bloat, especially when you are targeting several countries/languages. That can mean an additional 10+ lines of code to each geo-targeted page.
  • Some content management systems, such as WordPress and Drupal, offer automatic hreflang page tagging solutions.

Believing That hreflang Annotations Will Consolidate Link Authority

This is another common misconception that can trip up even advanced SEO experts. There have been articles published that seem to show that, once hreflang is correctly implemented across multiple top-level domains or sub-domains, the most authoritative domain gains in link authority. This has not been verified with other international SEO experts, and I have no evidence to believe this is the case either.

The best way to build link authority and consolidate it across your geo-targeted web pages is to keep your content all on one domain. Use a generic, top-level domain such as a .com, and use the sub-folder method to create your country- or language-targeted content.

Fixing Duplicate Content Issues

This is another tricky subject that deserves some nuance. Duplicate content itself is often misunderstood, and throwing hreflang into the mix makes it even more difficult to understand. Hreflang does not “fix” duplicate content issues, per se. For example, when you add hreflang tags to your site, they will appear in the International Targeting tab of Google Search Console (so Google does indeed recognize and understand them), but you will still continue to see Duplicate Title Tags and Duplicate Meta Description warnings in the HTML Improvements tab (if you have pages with duplicate titles and descriptions across your geo-targeted webpages). So if you have two pages in the same language targeting different regions, such as English in the USA and Canada, the content of those two pages may be so similar that they are considered duplicates. Adding hreflang tags will not change that. It is still possible that your American page may outrank your Canadian page, if the American page has significantly more link authority, and especially if it has links from Canadian sources.

However, hreflang tags will help to alleviate this issue. This is why hreflang tags are not enough. They provide a technical structure that helps Google sort out and understand your content, but to have a full-fledged international site(s), you need a holistic international marketing strategy that includes building link authority to your site(s) from the relevant countries/languages that you are targeting.

Hreflang is very effective at handling cross-annotations among different languages, but when it comes to same language, different regions, you can get mixed results.

Not Using Canonical Tags and Hreflang Tags Together Correctly

The hreflang tag also can be used along with rel=”canonical” annotations, but hreflang tags need to reference self-referential canonical URLs. For example, page A should have a canonical tag pointing to page A, page B should have a canonical tag pointing to page B, and page C should have a canonical tag pointing to page C. All three pages should have hreflang tags that mention all three of the pages in the group. You do NOT want to canonicalize only one version of a page in a page grouping, as that would interfere with hreflang annotations.

Here is a more visual example:

On this page, the hreflang tags might say:

So in this case, the canonical tag for this page would be:

And on the Canadian page, the hreflang tags would remain the same, but the canonical tag would be:

Not Using Absolute URLs

This one is a heart-breaker because often everything is correct except for the simple fact that the hreflang link referenced is relative rather than absolute. There really is no margin for error with hreflang tags so make sure you are always using absolute URLs. For example, here is what NOT to do:

Google wants to be able to crawl the entire URL path, especially since many times hreflang tags reference separate ccTLDs or sub-domains.

Adding hreflang tags to noindexed pages

If you have hreflang tags that point to a page that is noindexed, either with a meta-robots noindex tag, or blocked in robots.txt, then Google will report that tag as an error. Google will not be able to follow the return link from that blocked page back to the originating link, so it will report a return tag error. It’s important to note that this does not mean ALL your hreflang tags in a page group will suddenly stop working; it means ONLY the pages that are blocked, and their return links, will stop working. As a general rule of thumb, just don’t create hreflang tags that point to pages that are blocked from Google’s indexing.

Leave a Reply