{"id":2572,"date":"2018-08-21T08:34:59","date_gmt":"2018-08-21T08:34:59","guid":{"rendered":"http:\/\/www.rebelytics.com\/?p=481"},"modified":"2026-01-27T13:41:52","modified_gmt":"2026-01-27T13:41:52","slug":"hreflang-implementation-guide","status":"publish","type":"post","link":"https:\/\/www.searchviu.com\/de\/hreflang-implementierungsleitfaden\/","title":{"rendered":"hreflang tags implementation guide - Wie man hreflang implementiert"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"2572\" class=\"elementor elementor-2572\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5cad0086 e-flex e-con-boxed e-con e-parent\" data-id=\"5cad0086\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;ekit_has_onepagescroll_dot&quot;:&quot;yes&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-44c14b10 elementor-widget elementor-widget-text-editor\" data-id=\"44c14b10\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><strong>Webmasters who serve several versions of their content in different languages or for users in different countries should use <em>hreflang annotations<\/em> to help Google show the right version in the search results for each user.<\/strong><\/p><p><em>Note: This guide was first published on rebelytics.com in 2014 and has since then been updated several times and moved to this blog.<\/em><\/p><p>The correct implementation of <strong>hreflang<\/strong> can be quite a challenge. With this guide, I want to help you develop a correct implementation for your website. However, there is no one-size-fits-all-solution for hreflang. So if anything remains unclear, <em>feel free to ask your questions <a href=\"#comments\">in the comments section of this article<\/a><\/em>. I normally reply within a couple of days.<\/p><p>Google provides instructions for implementing hreflang, but when you look at how hreflang is implemented on most websites, it becomes clear that webmasters often misunderstand those instructions. Before you continue reading this article, you should still check out Google&#8217;s instructions <a title=\"Google's instructions for implementing hreflang\" href=\"https:\/\/support.google.com\/webmasters\/answer\/189077?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">here<\/a>.<\/p><p>After reading Google&#8217;s official instructions, following the advice in this article will help you avoid the most common mistakes and provide you with some additional tips.<\/p><p>Here we go! These are the steps I want to walk you through. How do you implement hreflang correctly?<\/p><ul><li><a href=\"#step1\">Step 1: Determine whether you need hreflang annotations on your website<\/a><\/li><li><a href=\"#step2\">Step 2: Create a map of your website\u2019s language and country versions<\/a><\/li><li><a href=\"#step3\">Step 3: Double-check your website structure and domain strategy<\/a><\/li><li><a href=\"#step4\">Step 4: Assign an hreflang value to each language and country version<\/a><\/li><li><a href=\"#step5\">Step 5: Check if you need hreflang=&#8221;x-default&#8221;<\/a><\/li><li><a href=\"#step6\">Step 6: Decide which pages to link with hreflang annotations<\/a><\/li><li><a href=\"#step7\">Step 7: Decide which hreflang implementation method to choose<\/a><\/li><li><a href=\"#step8\">Step 8: Implement hreflang on your website<\/a><\/li><li><a href=\"#step9\">Step 9: Create a Google Search Console Property for each language and country version<\/a><\/li><li><a href=\"#step10\">Step 10: Align your international targeting options in Google Search Console with your hreflang implementation<\/a><\/li><li><a href=\"#step11\">(OPTIONAL) Step 11: Audit your hreflang setup with searchVIU<\/a><\/li><\/ul><h2 id=\"step1\">Step 1: Determine whether you need hreflang annotations on your website<\/h2><p>It\u2019s quite simple: As soon as there is more than one version of your website for users from different countries or if your website is available in different languages, you should consider implementing hreflang annotations on your website.<\/p><p>Here are some typical examples of websites that require hreflang annotations:<\/p><ul><li><strong>Example 1: A website in English language with a version for the US, a version for the UK, and a version for the rest of the world.<\/strong><\/li><li><strong>Example 2: An international website with English, French and Spanish language versions.<\/strong><\/li><li><strong>Example 3: A global website with one version for Europe, one for the US and Canada and one for Asia\/Pacific, all in English language.<\/strong><\/li><li><strong>Example 4: A website that targets users in the US with an English and a Spanish language version.<\/strong><\/li><li><strong>Example 5: A website with several country domains, some of which have more than one language version (for countries with more than one language spoken).<\/strong><\/li><\/ul><p>We will be using these examples throughout this guide and we will develop a correct hreflang implementation for all of them.<\/p><p>Is your website similar to one of the examples above? In this case you most likely need an hreflang implementation. Let\u2019s get started by getting a clearer picture of your international or multilingual website structure.<\/p><h2 id=\"step2\">Step 2: Create a map of your website\u2019s language and country versions<\/h2><p>The purpose of hreflang annotations is to signal to Google that there are several versions of a URL for users of different languages or from different countries. URLs for users of the same language or from the same country are normally grouped into language or country versions of a website. So, in order to determine which hreflang values each URL on your website should receive, it is a good idea to start by mapping out exactly which users your different website versions target.<\/p><p>I suggest you start by creating a table with the following three columns:<\/p><ul><li><strong>Website version:<\/strong> Your website versions can be located in different subdirectories on the same domain, on different subdomains or on different domains.<\/li><li><strong>Language:<\/strong> Each website version can be assigned exactly one language, the language of the content of this version. Make sure you do not mix languages within website versions.<\/li><li><strong>Countries:<\/strong> Last but not least, each website version can target users in any number of countries ranging from 1 country to all countries in the world.<\/li><\/ul><p>For some websites, this table might be very simple, but for others, especially websites with lots of different version, this approach will be very helpful.<\/p><p>Let\u2019s recall the examples for different international or multilingual website structures from the previous step and have a look at what the structure map would look like for these examples.<\/p><p><strong>Example 1: A website in English language with a version for the US, a version for the UK, and a version for the rest of the world.<\/strong><\/p><p>[table id=1 \/]<\/p><p>This is a typical example for companies from the UK or the US that have already expanded into the other market and are targeting English speaking users from the rest of the world on top of that. Note that here, the UK content is hosted on a .co.uk domain, but it might as well be hosted on the .com domain, like the other two versions. This example is just to show that hreflang can be implemented across different domains.<\/p><p><strong>Example 2: An international website with English, French and Spanish language versions.<\/strong><\/p><p>[table id=2 \/]<\/p><p>This is an example of a company targeting users globally in different languages, a scenario you often see with location-independent companies in B2B sectors, like SaaS or similar industries. All three language versions are hosted on the .com domain in different subdirectories.<\/p><p><strong>Example 3: A global website with one version for Europe, one for the US and Canada and one for Asia\/Pacific, all in English language.<\/strong><\/p><p>[table id=3 \/]<\/p><p>Global brands often separate their web presences into versions for economic zones or continents, and this structure often represents the top-level organisational structure of the corporation. Although I would prefer a more user-centric approach to structuring website versions, this is a scenario we do see a lot in reality and it is one that we need a good hreflang solution for. The mixed domain and subdomain structure is also something I would not necessarily recommend, but structures like this one do exist and should be accounted for. If your website structure resembles this example, this guide will provide a solution for you!<\/p><p><strong>Example 4: A website that targets users in the US with an English and a Spanish language version.<\/strong><\/p><p>[table id=4 \/]<\/p><p>This is a website structure you will see a lot in countries that have more than one language spoken. The country and the languages in this example could be replaced and you will often see this structure on a country-specific domain, like .be for Belgium or .ca for Canada.<\/p><p><strong>Example 5: A website with several country domains, some of which have more than one language version (for countries with more than one language spoken).<\/strong><\/p><p>[table id=5 \/]<\/p><p>The last example we are looking at in this guide is typical for e-commerce players that operate across several countries. While B2B companies tend to choose global language versions over country versions, online shops and other B2C companies often prefer country versions. Country-specific versions can be hosted on country-specific domains, like in this example, but they can also be hosted on subdomains or in subdirectories on a generic domain.<\/p><p>I deliberately mixed different domain, subdomain and subdirectory strategies in the examples above, in order to show you that you can implement hreflang across almost all combinations of domains, subdomains and subdirectories.<\/p><blockquote><p><em><strong>A note on international domain strategies:<\/strong> My favourite approach is to avoid different domains and subdomains and to group all website versions in different subdirectories on the same domain. I have <a href=\"https:\/\/www.searchviu.com\/en\/cctlds-to-gtld\/\">good arguments<\/a> for this, but I will not discuss them in this article and not today \ud83d\ude09 Give me a shout if you want to talk about international domain strategies with me!<\/em><\/p><\/blockquote><p>So, have you mapped out your international or multilingual website structure? I hope so! If you have an international or multilingual website structure that is completely different from the examples listed here, I would love to hear about it! Now, let\u2019s continue with step 3&#8230;<\/p><h2 id=\"step3\">Step 3: Double-check your website structure and domain strategy<\/h2><p>If you have read the previous step carefully, you probably noticed that I said that you can implement hreflang across <em><strong>almost<\/strong><\/em> all combinations of domains, subdomains and subdirectories. Caution, there is one important rule that you need to pay attention to when developing your hreflang implementation strategy:<\/p><p>Google automatically interprets content on country-specific domains (ccTLDs) as targeted at users from exactly one country.<\/p><p>ccTLDS (country code top-level domains), as opposed to gTLDs (generic top-level domains), are domains that are associated with a specific country. gTLDs, on the other hand, are not country-specific.<\/p><p>This has important consequences for your international targeting. With a subdirectory or a subdomain on a ccTLD (i.e. a country domain), you should only target users from the country that your ccTLD is associated with.<\/p><p>Are you looking for proof for what I\u2019m saying? Go to a Google Search Console property for a gTLD, open the report <em>Search Traffic &gt; International Targeting<\/em>, change the tab to \u201cCountry\u201d and have a look at the options you have here to target your content at users from a certain country.<\/p><p>You will see that, for each property on a gTLD that you verify in Google Search Console, you can choose to target the content within this property at users from a specific country. This targeting option will become crucial for you at a later stage in this guide if you are targeting users in certain countries with content on a gTLD.<\/p><p>Now, go to the same report in the Google Search Console property for a ccTLD and try to change the country in the option \u201cTarget users in \u2026 \u201c you just saw in the property for the gTLD. See what I\u2019m going on about?<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-1192\" src=\"https:\/\/www.searchviu.com\/wp-content\/uploads\/2015\/06\/3acc33c5-international-targeting-google-search-console.png\" alt=\"International targeting options in Google Search Console\" width=\"100%\" \/><\/p><p>For ccTLDs, Google does not let you specify a country. Rather, the country is already specified by the ccTLD you chose. You will learn more about this targeting option in <a href=\"#step10\">step 10<\/a>. For now, let\u2019s see what you can do to avoid problems with this.<\/p><p>The following example would not work, as it would involve trying to target users outside of the UK with a ccTLD that is associated with the UK (.co.uk):<\/p><p>[table id=6 \/]<\/p><p>If you use ccTLDs, in Google&#8217;s eyes, you automatically target users from the corresponding country and not users from other countries with the content on your domain.<\/p><p>Before you move on, make sure that, in the previous step, you have not created a structure where a website version that is hosted on a ccTLD targets users in countries other than the country associated with the ccTLD.<\/p><p>This also goes for the targeting options \u201cRest of the world\u201d or \u201cAll countries\u201d. Website versions that target users in several countries should always be hosted on gTLDs.<\/p><p>Speaking of gTLDs, which (in case you have not noticed) I am a huge fan of, let\u2019s have a look at a potential of multilingual and international websites that lots of businesses miss out on: Do you have a website structure with several versions for different countries but no version for the rest of the world? Why would you want to miss out on more potential traffic by not creating a website version for users outside of your main target markets?<\/p><p>Let\u2019s assume you have a website with several country versions (no matter whether you host them on a gTLD or on ccTLDs), but no generic language versions for users in other countries. Your structure could look like the one we already saw above (example 5):<\/p><p>[table id=5 \/]<\/p><p>Here, it would make sense to add generic language versions on a gTLD in the languages we already have in order to better target users outside of the markets we already have website versions for. This would leave us with the following structure:<\/p><p>[table id=7 \/]<\/p><p>This structure targets the same users as example 5 above, but on top of that, it provides website versions for users in other countries that speak one of the languages already available. As the languages are already available, it is normally not a big effort to add these additional versions to a website and a lot of additional search traffic can be driven this way.<\/p><p>Now that we\u2019ve made sure that you have a decent international or multilingual domain structure, we\u2019re all set for defining a hreflang value for each website version. The next step is dead simple, so let\u2019s move on quickly:<\/p><h2 id=\"step4\">Step 4: Assign an hreflang value to each language and country version<\/h2><p>With all the good preparation we have done in the previous steps, nothing much can go wrong here. There are a few simple rules we have to follow when defining hreflang values for our website:<\/p><ul><li>Each hreflang value consists of a language code and, optionally, a country code. The language code and the country code are separated by a hyphen.<\/li><li>The language codes have to be in the format <a href=\"https:\/\/en.wikipedia.org\/wiki\/List_of_ISO_639-1_codes\" target=\"_blank\" rel=\"noopener noreferrer\">ISO 639-1<\/a>, the country codes in the format <a href=\"https:\/\/en.wikipedia.org\/wiki\/ISO_3166-1_alpha-2\" target=\"_blank\" rel=\"noopener noreferrer\">ISO 3166-1 Alpha-2<\/a>.<\/li><li>Each hreflang value can only be assigned once. This means you cannot have two website versions targeted at users of the same language and from the same country. Each combination of language and country has to be unique in your hreflang structure.<\/li><li>URLs may receive <a href=\"https:\/\/www.rebelytics.com\/multiple-hreflang-tags-one-url\/\">multiple hreflang values<\/a>. This will come in handy in examples like no. 3 above, where a website version targets users in multiple countries, but not all countries in the world.<\/li><\/ul><p>Now, let\u2019s add a fourth column to our website structure table from earlier on and get things going!<\/p><p><strong>Example 1: A website in English language with a version for the US, a version for the UK, and a version for the rest of the world.<\/strong><\/p><p>[table id=8 \/]<\/p><p>Here, the English version for users in the rest of the world receives only the language code for English, while the two country versions for the US and the UK receive the optional country codes.<\/p><p><strong>Example 2: An international website with English, French and Spanish language versions.<\/strong><\/p><p>[table id=9 \/]<\/p><p>The website versions in this example are not country-specific, so they all just receive language codes and no optional country codes.<\/p><p><strong>Example 3: A global website with one version for Europe, one for the US and Canada and one for Asia\/Pacific, all in English language.<\/strong><\/p><p>[table id=10 \/]<\/p><p>Every website version in this example targets more than one country, so they all receive multiple hreflang values. We will see how to implement this later on, but if you&#8217;re curious about assigning multiple hreflang values to one URL, check this out: <a href=\"https:\/\/www.rebelytics.com\/multiple-hreflang-tags-one-url\/\">Multiple hreflang tags can point to one URL<\/a>.<\/p><p><strong>Example 4: A website that targets users in the US with an English and a Spanish language version.<\/strong><\/p><p>[table id=11 \/]<\/p><p>In this simple example, we see two versions with the same country code appended to different language codes.<\/p><p><strong>Example 5: A website with several country domains, some of which have more than one language version (for countries with more than one language spoken).<\/strong><\/p><p>[table id=12 \/]<\/p><p>All website versions in this example are targeted at a specific country on hosted on a ccTLD, so they all receive the optional country codes. Mind you, in this case the country codes are not really optional, as the website versions are hosted on ccTLDs. As we have learned above, ccTLDs are automatically associated with countries. In order to be consistent, URLs on ccTLDs should always receive hreflang values with the correct country code.<\/p><h2 id=\"step5\">Step 5: Check if you need hreflang=&#8221;x-default&#8221;<\/h2><p>If you have been doing research about how to implement hreflang on your website, you have most likely come across the concept <em>hreflang=&#8221;x-default&#8221;<\/em>. Google and Yandex <a href=\"https:\/\/webmasters.googleblog.com\/2013\/04\/x-default-hreflang-for-international-pages.html\" target=\"_blank\" rel=\"noopener noreferrer\">introduced &#8220;x-default&#8221; in 2013<\/a> and it certainly hasn&#8217;t made the implementation of hreflang any easier for webmasters. Quite the contrary: This new value has caused a lot of confusion among international SEOs over the last few years, so let&#8217;s clear things up.<\/p><p>There are three scenarios in which you might want to assign the hreflang value &#8220;x-default&#8221; to a URL:<\/p><p><strong>Scenario 1: Some of your URLs automatically redirect to another URL based on the user&#8217;s location or browser language:<\/strong><\/p><p>This most often applies to home pages. In Example 2, which we last saw in <a href=\"#step4\">Step 4<\/a>, the URL https:\/\/www.rebelytics.com\/ might redirect users who have English as their browser language to https:\/\/www.rebelytics.com\/en\/. Users with French and Spanish set as their browser languages might be automatically redirected to https:\/\/www.rebelytics.com\/fr\/ and https:\/\/www.rebelytics.com\/es\/, respectively.<\/p><p>In this case, the URL https:\/\/www.rebelytics.com\/ would be included in the hreflang annotations and would receive the value &#8220;x-default&#8221;.<\/p><p>This is obviously not limited to home pages. Although cases like this are a lot rarer, the URL https:\/\/www.rebelytics.com\/products\/ might redirect to https:\/\/www.rebelytics.com\/en\/products\/ for English-speaking users, to https:\/\/www.rebelytics.com\/fr\/produits\/ for French speaking users, and to https:\/\/www.rebelytics.com\/es\/productos\/ for Spanish speaking users.<\/p><p>In this case, an &#8220;x-default&#8221; version would not only be defined for the home page, but for all sub-pages of the website. We will learn more about implementing hreflang on an URL level <a href=\"#step6\">in the next step of this guide<\/a>.<\/p><p>Let&#8217;s have a look at what our website structure map with hreflang values would look like if we include this &#8220;x-default&#8221; scenario in Example 2:<\/p><p>[table id=13 \/]<\/p><p>In this case, Google would show the URL https:\/\/www.rebelytics.com\/ to all users that are not using Google in English, French or Spanish. At this point it is important to note that Google will pull the information displayed in the search result snippet from the URL the Google bot is redirected to, so pay attention to this.<\/p><p>Let us now move on to the next (very similar) scenario where you might want to consider using &#8220;x-default&#8221;.<\/p><p><strong>Scenario 2: For a set of versions of a URL for different languages or countries, you provide a default version with a country or language selector.<\/strong><\/p><p>Like Scenario 1, this second scenario normally applies to (but is not limited to) home pages. In plain and simple English this situation would mean that your multilingual or international website has a home page where the user can select the language he or she wants the content to be shown in or the country he or she is located in (or both). The difference to Scenario 1 is that the selection of the right URL version for the user does not happen automatically by means of a redirect, but is executed manually by the user.<\/p><p>The hreflang annotations would be the same as in Scenario 1: The URL that hosts the language or country selector is assigned the &#8220;x-default&#8221; hreflang value, just like the URL that redirects the user based on the browser language or user location in Scenario 1. The result is also similar: Google will now show this version of the URL to users that are not using Google in English, Spanish or French, with the slight difference that here, the page provides its own content to be included in the search result snippet. Think about how to optimise this snippet for a global audience!<\/p><p>The third and last scenario is one that can be used by almost all websites that do not separate URLs with an automatic or manual language or country selection like the ones described above.<\/p><p><strong>Scenario 3: You want to declare one of the website versions you already have assigned a hreflang value to as the default or fallback version for users who use languages or are located in countries that you do not have a website version for.<\/strong><\/p><p>This scenario can easily be applied to all of the examples we have seen above. Just pick one of the website versions you have already defined hreflang values for and add the value &#8220;x-default&#8221; to it if you want this version to show for all users that use languages or are located in countries you do not have a website version for.<\/p><p>If we wanted the English <em>Rest of the world<\/em> version in Example 1 to also be the fallback version for all users that use Google in a language that is not English, we would simply add the value &#8220;x-default&#8221; to this version:<\/p><p>[table id=14 \/]<\/p><p>This way we let Google know that we want https:\/\/www.rebelytics.com\/en\/ to be the version of this URL that we want to be shown to users that we have not specified a website version for.<\/p><p>Now that you have defined all of the hreflang values you need, we can almost move on to the implementation! But before we do that, let us talk about one more very important topic: The implementation of hreflang on a URL level. As you probably already know, every set of URLs on your website receives its own hreflang annotations (so far, we have only assigned hreflang values to entire versions of your website). The implementation of hreflang on a URL level can be a bit of a challenge, so in step 6, we will talk about how to avoid the most common mistakes with this.<\/p><h2 id=\"step6\">Step 6: Decide which pages to link with hreflang annotations<\/h2><p>hreflang annotations have to be implemented on a URL level. This means that every set of URLs (different language and country versions of one URL) receives its own set of hreflang annotations. When implementing hreflang on a URL level, it is important to pay attention to the following details.<\/p><p>First of all, not all of your pages might exist in all language or country versions of your website. Make sure you do not use hreflang annotations to point to pages that do not exist. I have seen this go terribly wrong on several occasions.<\/p><p>Secondly, make sure that only pages that are supposed to be indexed by search engines receive hreflang annotations. hreflang is always an indexing signal, so you do not want hreflang annotations pointing to pages that you do not want in the index.<\/p><p>This second point is particularly important when you have a canonical tag solution implemented on your website (to solve a duplicate content problem). Make sure not to use hreflang annotations for non-canonical URLs (URLs that have a canonical tag pointing to another page). You can read more on how to use canonical tags and hreflang together here:<\/p><p><a href=\"https:\/\/www.searchviu.com\/en\/hreflang-canonical\/\">How to use hreflang and canonical tags together<\/a><\/p><p>Determining which pages receive hreflang annotations might be a bit tricky for you if there are big differences between your website versions or if you are a heavy user of canonical tags. Just make sure that you account for all of the exceptions and that only pages that are supposed to be linked with hreflang receive annotations.<\/p><p>If you are using separate mobile URLs, Google currently recommends to have one set of hreflang annotations linking the different country and language versions of your desktop URLs with each other and another set of hreflang annotations for your mobile URLs. The same is valid if you are using AMP: Desktop URLs are linked with their desktop equivalents and AMP URLs with their AMP equivalents in other languages or for other countries. Read more about this topic <a href=\"https:\/\/www.searchviu.com\/en\/hreflang-canonical\/#mobile-and-amp\">here<\/a>.<\/p><p>Now that you have completed your hreflang structure, you just have to decide <strong>how<\/strong> you want to implement hreflang. Read on to learn more!<\/p><h2 id=\"step7\">Step 7: Decide which hreflang implementation method to choose<\/h2><p>There are three methods for implementing hreflang on your website that you can choose from:<\/p><ul><li>In the header section of the HTML code of each page<\/li><li>In XML sitemaps<\/li><li>In the HTTP header of each page<\/li><\/ul><p>Let me walk you through the pros and cons of the three methods.<\/p><p><strong>Implementing hreflang in the header section of the source code of each page<\/strong><\/p><p>I am pretty sure that this is the most popular version across all websites that use hreflang, probably because it is the simplest one to implement for most developers.<\/p><p>Google normally processes the information included in the header section pretty well, so this is an option that I have had good experiences with in the past and that I can definitely recommend.<\/p><p>However, there are a couple of disadvantages of this method that I would like to share with you.<\/p><p>First of all, if you need an x-default value for a default home page that redirects users based on their location or browser language (see Scenario 1 in <a href=\"#step5\">step 5<\/a>), you will automatically generate a hreflang error if you opt for the source code variant: As the x-default version redirects to another URL and therefore does not have a source code, you will not be able to link back from the x-default version to the other language and country versions. Reciprocal links are a basic requirement of hreflang, so if your website has a home page that redirects users based on their browser language or location, you should probably choose one of the other two options to implement hreflang.<\/p><p>Also, if your website needs lots of hreflang annotations for different language and country versions (like in example 3 below), your hreflang annotations will get pretty long. Some might argue that including a lot of additional code in the header section of your pages will slow down your page load times, and they probably have a point. However, I believe that this also applies to the other methods: If you have lots of hreflang annotations, you always need a lot of code.<\/p><p>Let us have a look at how the hreflang annotations for some of our examples would look like, if implemented in the header section of each page.<\/p><p>Example 2 from above was a global website with English, French and Spanish website versions. The home pages of the three website versions would all receive the following set of hreflang annotations:<\/p><p><code>&lt;link rel=\"alternate\" hreflang=\"en\" href=\"https:\/\/www.rebelytics.com\/en\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"fr\" href=\"https:\/\/www.rebelytics.com\/fr\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"es\" href=\"https:\/\/www.rebelytics.com\/es\/\" \/&gt;<\/code><\/p><p>If there was a &#8220;products&#8221; page on each of the website versions, this set of URLs would receive the following set of hreflang annotations (and so on for all other URLs that exist on more than one of the website versions).<\/p><p><code>&lt;link rel=\"alternate\" hreflang=\"en\" href=\"https:\/\/www.rebelytics.com\/en\/products\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"fr\" href=\"https:\/\/www.rebelytics.com\/fr\/produits\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"es\" href=\"https:\/\/www.rebelytics.com\/es\/productos\/\" \/&gt;<\/code><\/p><p>Example 3 from above was also a website with three different versions, but each of them was targeted at several countries. This would result in the following set of hreflang annotations for the three versions of the home page:<\/p><p><code>&lt;link rel=\"alternate\" hreflang=\"en-AT\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-BE\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-CH\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-CZ\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-DE\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-DK\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-FI\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-FR\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-GB\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-GR\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-HU\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-HR\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-IE\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-IS\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-IT\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-LU\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-NO\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-NL\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-PL\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-PT\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-RO\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-SE\" href=\"https:\/\/www.rebelytics.eu\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-US\" href=\"https:\/\/www.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-CA\" href=\"https:\/\/www.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-AU\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-CN\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-HK\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-IN\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-ID\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-JP\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-MY\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-NZ\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-PH\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-SG\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-TW\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-TH\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-VN\" href=\"https:\/\/apac.rebelytics.com\/\" \/&gt;<\/code><\/p><p>And, to complete this, let us have a look at the hreflang annotations for a possible set of &#8220;about us&#8221; pages on the three website versions:<\/p><p><code>&lt;link rel=\"alternate\" hreflang=\"en-AT\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-BE\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-CH\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-CZ\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-DE\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-DK\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-FI\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-FR\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-GB\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-GR\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-HU\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-HR\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-IE\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-IS\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-IT\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-LU\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-NO\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-NL\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-PL\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-PT\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-RO\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-SE\" href=\"https:\/\/www.rebelytics.eu\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-US\" href=\"https:\/\/www.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-CA\" href=\"https:\/\/www.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-AU\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-CN\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-HK\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-IN\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-ID\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-JP\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-MY\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-NZ\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-PH\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-SG\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-TW\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-TH\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<br \/>\n&lt;link rel=\"alternate\" hreflang=\"en-VN\" href=\"https:\/\/apac.rebelytics.com\/about-us\/\" \/&gt;<\/code><\/p><p>I hope that these examples give you a good idea of what your hreflang annotations should look like if you decide to implement them as HTML link elements in the header section of your website&#8217;s source code. If not, just give me a shout and I&#8217;ll be happy to help.<\/p><p>Let us now have a look at another option of implementing hreflang: XML sitemaps.<\/p><p><strong>Implementing hreflang in XML sitemaps<\/strong><\/p><p>Let me tell you straight away: I have had very bad experiences with implementing hreflang in XML sitemaps and I have also spoken to other SEOs that have had similar problems.<\/p><p>Google does not crawl and process XML sitemaps as often as HTML pages and therefore has problems processing the information that is included in sitemaps on time. If you choose this option, you will probably experience lots of hreflang errors in Google Search Console and lots of pages being displayed to the wrong users in Google&#8217;s search results.<\/p><p>Developers often prefer implementing hreflang in XML sitemaps over implementing it in the HTML source code of each page when they are dealing with very big websites that have lots of different language and country versions.<\/p><p>I actually believe that a big amount of hreflang annotations causes a lot more trouble in an XML sitemap than it would in the header section of the source code of a page.<\/p><p>If you still want to implement your hreflang annotations in you XML sitemaps, go ahead and check out <a href=\"https:\/\/support.google.com\/webmasters\/answer\/2620865?hl=en\" target=\"_blank\" rel=\"noopener noreferrer\">Google&#8217;s recommendations on the topic<\/a>. I am now going to move on to the last (and probably best) method of implementing hreflang on your website:<\/p><p><strong>Implementing hreflang in the HTTP header of each page<\/strong><\/p><p>This is the option I have least observed out in the field and that I therefore have the least practical experience with. I honestly do not know why so few developers opt for this variant.<\/p><p>From a theoretical perspective, this option has all the advantages you can think of:<\/p><ul><li>Unlike XML sitemaps, the HTTP header is processed every time the page is crawled, so Google always receives the hreflang information associated with a page at the same time as it visits the page.<\/li><li>HTTP headers can be set for every URL, including those that do not have their own source code (like the home page that redirects users based on their location or browser languages) and also non-HTML files such as PDFs.<\/li><\/ul><p>One slight disadvantage might be that debugging and quality assurance are a bit more difficult with this option, as most common SEO tools do not really pay attention to HTTP headers. But I am sure this is going to change in the near future.<\/p><p>The code you need for implementing hreflang annotations in HTTP headers is very similar to the HTML header variant we saw above, with slight syntactical differences.<\/p><p>This is what the implementation in the HTTP header for the three home pages of Example 2 would look like:<\/p><p><code>Link: &lt;https:\/\/www.rebelytics.com\/en\/&gt;; rel=\"alternate\"; hreflang=\"en\",<br \/>\n&lt;https:\/\/www.rebelytics.com\/fr\/&gt;; rel=\"alternate\"; hreflang=\"fr\",<br \/>\n&lt;https:\/\/www.rebelytics.com\/es\/&gt;; rel=\"alternate\"; hreflang=\"es\"<br \/>\n<\/code><\/p><p>Just like the HTML header option, this method requires an implementation on a URL level, so the code for HTTP headers of the three versions of the &#8220;products&#8221; page on this website would be the following:<\/p><p><code>Link: &lt;https:\/\/www.rebelytics.com\/en\/products\/&gt;; rel=\"alternate\"; hreflang=\"en\",<br \/>\n&lt;https:\/\/www.rebelytics.com\/fr\/produits\/&gt;; rel=\"alternate\"; hreflang=\"fr\",<br \/>\n&lt;https:\/\/www.rebelytics.com\/es\/productos\/&gt;; rel=\"alternate\"; hreflang=\"es\"<br \/>\n<\/code><\/p><p>That&#8217;s it! With this information at hand, you should be able to decide which option is the best and most feasible for you and your developers.<\/p><p>Continue reading to learn how to complete and debug your hreflang implementation!<\/p><h2 id=\"step8\">Step 8: Implement hreflang on your website<\/h2><p>If you are looking for instructions on how to actually get that hreflang structure you have developed onto your website, I am afraid I have to disappoint you <em>(or maybe not? &#8211; keep reading!)<\/em>. This guide is mainly designed to help you understand what the hreflang annotations on your website are supposed to look like.<\/p><p>The exact way you implement hreflang on your website depends on lots of different factors, like the method you choose and also the content management or shop system you are using. If you are lucky, you will find a decent plugin, but in most cases you will need the support of a developer for the actual implementation.<\/p><p>There is one way of implementing hreflang that works for most websites, independent of their CMS or shop system. It is a bit experimental and <a href=\"https:\/\/twitter.com\/JohnMu\/status\/897746922492047361\" target=\"_blank\" rel=\"noopener noreferrer\">not officially recommended<\/a>, but if you really don&#8217;t find any other way to implement hreflang and if your are a DIY type of person, you should check this out <em>(you should check it out anyhow, because it&#8217;s really interesting)<\/em>:<\/p><p><a href=\"https:\/\/www.searchviu.com\/en\/hreflang-google-tag-manager\/\" target=\"_blank\" rel=\"noopener noreferrer\">How to implement hreflang with Google Tag Manager<\/a><\/p><h2 id=\"step9\">Step 9: Create a Google Search Console Property for each language and country version<\/h2><p>Now that you&#8217;ve implemented hreflang on your website, you should create a Google Search Console property for every language or country version of your website, if you haven&#8217;t done so already.<\/p><p>Why do you need a separate property for every website version? The most important reason is that in some cases you can send additional signals to Google via Search Console that will help with the correct interpretation of hreflang. We will learn more about this in <a href=\"#step10\">step 10<\/a>. Another good reason is that having separate properties really helps with monitoring indexing issues or analysing search queries per language and country.<\/p><p>Just go to Google Search Console, click on the &#8220;ADD A PROPERTY&#8221; button, and add the exact URL of each of your country or language versions (including subdomains, directories, and the correct protocol).<\/p><p>For example 2 from above, the properties could look like this (one for the entire domain and one for each language version, on subdirectory level):<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-1403\" src=\"https:\/\/www.searchviu.com\/wp-content\/uploads\/2017\/01\/4546bae6-search-console-properties.jpeg\" alt=\"Google Search Console properties for several language domains in subdirectories\" width=\"100%\" \/><\/p><p>You will see that this structure really helps you analyse issues and performance of the different versions of your website separately. Let&#8217;s move on to the next very important setting you should take care of in Google Search Console: Country targeting.<\/p><h2 id=\"step10\">Step 10: Align your international targeting options in Google Search Console with your hreflang implementation<\/h2><p>Above <em><a href=\"#step3\">(way above)<\/a><\/em>, we already talked about the fact that ccTLDs (country-specific domains such as .de, .fr or .co.uk), are automatically targeted at users from the countries they represent. If you are only using ccTLDs, you can skip this step.<\/p><p>gTLDs (and subdomains or subdirectories on gTLDs), on the other hand, can either be targeted at users from several countries, from all countries, or from just one or two countries.<\/p><p>Google Search Console allows you to target properties at one country or at all countries.<\/p><p><em><strong>So how does this fit together?<\/strong><\/em><\/p><p>If you have a country version that is hosted on a gTLD, make sure that you select the same country it is targeted at via hreflang in the country targeting settings in Google Search Console. Also, make sure that you don&#8217;t set the country targeting of a directory, subdomain or or entire domain to a certain country, if it is really meant for users from more than one country or from another country.<\/p><p>For your properties that are on a gTLD and that are targeted at users from exactly one country via hreflang, go to <em>Search Traffic &gt; International Targeting<\/em> in Google Search Console and select the country. For all other properties, leave the country targeting option deactivated.<\/p><p>For example 1 from above, this is what the country targeting options in Google Search Console should look like:<\/p><p>[table id=15 \/]<\/p><h2 id=\"step11\">(OPTIONAL) Step 11: Audit your hreflang setup with searchVIU<\/h2><p>Once you have your hreflang setup up and running, you can use our advanced SEO reports and data to audit your hreflang annotations. Our hreflang report highlights the following problems that can arise with hreflang implementations:<\/p><ul><li>hreflang pointing to non-canonical URLs<\/li><li>hreflang pointing to non-indexable URLs<\/li><li>hreflang pointing to redirected URLs<\/li><li>hreflang pointing to URLs that give back 404 or server errors<\/li><li>hreflang pointing to URLs that are blocked via robots.txt<\/li><li>Language marked up in hreflang annotation differs from language of the content on the URL it points to<\/li><li>Country marked up in hreflang annotation differs from country of the ccTLD it points to<\/li><li>URLs linked via hreflang are not linked with each other via HTML links (missing country or language switcher)<\/li><li>Translations that are linked via hreflang are not semantically similar<\/li><\/ul><p>The hreflang reports are part of our comprehensive SEO data solution. If you&#8217;d like to talk about how our product can help you, you can request a free trial here: <a href=\"https:\/\/www.searchviu.com\/en\/get-in-contact-increase-traffic-sales\/#request\">Request a trial<\/a><\/p><h2>That&#8217;s it! Any questions? Give me a shout.<\/h2><p>If there are any questions that remain unclear about the implementation of hreflang, please don&#8217;t hesitate to get in touch or write a comment under this article. I will be happy to help.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6aa3d10 e-flex e-con-boxed e-con e-parent\" data-id=\"6aa3d10\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;ekit_has_onepagescroll_dot&quot;:&quot;yes&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a64b938 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"a64b938\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"divider.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c851235 e-flex e-con-boxed e-con e-parent\" data-id=\"c851235\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;ekit_has_onepagescroll_dot&quot;:&quot;yes&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-90e133e e-con-full e-flex e-con e-child\" data-id=\"90e133e\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;ekit_has_onepagescroll_dot&quot;:&quot;yes&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b77f525 elementor-widget elementor-widget-elementskit-heading\" data-id=\"b77f525\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-heading.default\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" ><div class=\"ekit-heading elementskit-section-title-wraper text_left   ekit_heading_tablet-   ekit_heading_mobile-\"><h2 class=\"ekit-heading--title elementskit-section-title \">Summary of 138 Comments<\/h2><div class=\"ekit_heading_separetor_wraper ekit_heading_elementskit-border-divider elementskit-style-long\"><div class=\"elementskit-border-divider elementskit-style-long\"><\/div><\/div><h3 class=\"ekit-heading--subtitle elementskit-section-subtitle  \">\n\t\t\t\t\t\tComment Highlights &amp; Key Takeaways\n\t\t\t\t\t<\/h3><\/div><\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-05c88c4 elementor-widget elementor-widget-text-editor\" data-id=\"05c88c4\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\">Managing multi-language and multi-regional websites has its challenges\u2014and the wide-ranging discussions below prove hreflang is often trickier in practice than on paper! Here are the top takeaways and most frequent questions, distilled for clarity and practical value.<\/p><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>1.\u00a0<strong>Language vs. Country Targeting<\/strong><\/h5><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Core Insight:<\/strong><\/p><ul><li>If you only have one language version for your content, you generally don\u2019t need complex hreflang tags. Eoghan explains:<br \/><blockquote><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\">\u201cAn English article on an international domain will automatically target English-speaking users in the US, UK, CA, AUS, and beyond.\u201d<\/p><\/blockquote><\/li><\/ul><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Takeaway:<\/strong><\/p><ul><li>Only add country codes (<div><code>en-US<\/code><\/div><p>,<\/p><div><code>en-GB<\/code><\/div><p>) to hreflang if you actually have variations for each country. Otherwise, a simple language code (e.g.,<\/p><div><code>hreflang=\"en\"<\/code><\/div><p>) is enough.<\/p><\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>2.\u00a0<strong>When to Use<\/strong><\/h5><div><code>x-default<\/code><\/div><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Core Insight:<\/strong><\/p><ul><li><div><code>x-default<\/code><\/div><p>is reserved for cases where no other language\/region matches, or when a splash\/root page redirects users based on their browser\/language.<\/p><\/li><li>Quoting Eoghan:<br \/><blockquote><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\">\u201cIn your case, I would definitely recommend using &#8216;x-default&#8217; for the root domain that redirects users to the correct language version. This helps Google understand your structure.\u201d<\/p><\/blockquote><\/li><\/ul><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Takeaway:<\/strong><\/p><ul><li>Only use<div><code>x-default<\/code><\/div><p>for \u201ccatch-all\u201d pages (not for localized language pages).<\/p><\/li><li>For pages already assigned a language,<div><code>x-default<\/code><\/div><p>is optional and doesn\u2019t add much value.<\/p><\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>3.\u00a0<strong>URL Structure Doesn\u2019t Have to Match hreflang Exactly<\/strong><\/h5><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Core Insight:<\/strong><\/p><ul><li>Your directory or subdomain structure (e.g.,<div><code>\/us\/<\/code><\/div><p>,<\/p><div><code>\/eu\/<\/code><\/div><p>) doesn\u2019t have to match your hreflang annotation exactly.<\/p><blockquote><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\">\u201cURL directories and hreflang annotations do not have to match\u2014the structure you have in mind seems fine.\u201d<\/p><\/blockquote><\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>4.\u00a0<strong>Avoid Assigning Multiple Language Codes to One URL<\/strong><\/h5><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Core Insight:<\/strong><\/p><ul><li>Assigning several language-country codes (e.g.,<div><code>en-FR<\/code><\/div><p>,<\/p><div><code>en-DE<\/code><\/div><p>) to a single English page is technically possible and sometimes works, but considered \u201ccounter-intuitive\u201d and may confuse Google.<\/p><blockquote><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\">\u201cYou are clearly abusing hreflang tags this way&#8230; Google might end up ignoring your annotations completely if they send confusing signals.\u201d<\/p><\/blockquote><\/li><\/ul><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Takeaway:<\/strong><\/p><ul><li>Wherever possible, match the hreflang annotation to the actual language of the page.<\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>5.\u00a0<strong>Geo-Targeting in Google Search Console<\/strong><\/h5><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Core Insight:<\/strong><\/p><ul><li>If you use multiple hreflang tags for one URL, set GSC geo-targeting to \u201cunlisted\u201d (i.e., don\u2019t pick a single country).<br \/><blockquote><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\">\u201cIn this case I would leave the box for country targeting in GSC unchecked.\u201d<\/p><\/blockquote><\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>6.\u00a0<strong>No Content in a Language? Don\u2019t Target That Language!<\/strong><\/h5><ul><li>Can you rank in France\/Italy for English content? Yes, but only for English queries or ambiguous keywords.<br \/><blockquote><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\">\u201cWithout French site content, you won\u2019t get much traffic from French-language queries.\u201d<\/p><\/blockquote><\/li><\/ul><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Takeaway:<\/strong><\/p><ul><li>Don\u2019t add hreflang for languages you don\u2019t actually support.<\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>7.\u00a0<strong>Reciprocal and Self-Referencing Tags<\/strong><\/h5><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>Core Insight:<\/strong><\/p><ul><li>Every page should reference itself and all alternate versions with proper hreflang annotations\u2014a common cause for errors.<\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>8.\u00a0<strong>Technical Considerations &amp; Tools<\/strong><\/h5><ul><li>Some users encounter errors from 301\/302 redirects and IP-based redirects\u2014Googlebot might not behave as expected! Test thoroughly and avoid setups where Googlebot can\u2019t reach content.<\/li><\/ul><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\"><strong>On WordPress and CMS Plugins:<\/strong><\/p><ul><li>Multiple WordPress installations are not recommended. Instead, use trusted multilingual plugins if possible.<\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>9.\u00a0<strong>Consolidating Domains (ccTLD to gTLD, or Migrations)<\/strong><\/h5><ul><li>Migrations are risky but sometimes beneficial. Eoghan links to resources and advises planning and proper hreflang updates.<\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h5><br \/>10.\u00a0<strong>Multi-Language Pages (On a Single URL)<\/strong><\/h5><ul><li>If a page contains two languages (e.g., Chinese and English), there\u2019s no perfect hreflang solution:<br \/><blockquote><p class=\"MuiTypography-root MuiTypography-body1 css-1n3cajb\">\u201cNo official support exists for assigning multiple language codes to one URL. It\u2019s not recommended, but you can experiment.\u201d<\/p><\/blockquote><\/li><\/ul><hr class=\"MuiDivider-root MuiDivider-fullWidth css-ss6lby\" \/><h4><br \/>\ud83d\udc49 Key Advice in a Nutshell<\/h4><ul><li><strong>Match hreflang to content:<\/strong>\u00a0Only annotate what you offer, and don\u2019t point English content at non-English codes unless you fully understand the quirks.<\/li><li><strong>Use<\/strong><div><code>x-default<\/code><\/div><p><strong>for catch-alls, not for localized pages.<\/strong><\/p><\/li><li><strong>Think twice before making things overly complex\u2014simplicity is your friend in both SEO and maintenance.<\/strong><\/li><li><strong>If in doubt, keep it to language-only codes and extend with country codes only for substantial, localized differences.<\/strong><\/li><li><strong>Reciprocal links and self-references in your markup are essential.<\/strong><\/li><li><strong>When facing unusual edge cases, experiment carefully and monitor results, but stick to best practices when possible.<\/strong><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Die Implementierung von hreflang-Anmerkungen kann schwierig sein und wird oft falsch gemacht. Hier erf\u00e4hrst du, wie du deine hreflang-Anmerkungen richtig umsetzt.<\/p>","protected":false},"author":3,"featured_media":1093,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[25],"tags":[29],"class_list":["post-2572","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-international-seo","tag-engllish"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>hreflang tags implementation guide - How to implement hreflang<\/title>\n<meta name=\"description\" content=\"The implementation of hreflang annotations can be difficult and is often done wrong. Here is how to get your hreflang tags right! This step-by-step guide will help you develop a good hreflang concept and choose the right implementation method. Warning: Very long and detailed content.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.searchviu.com\/de\/hreflang-implementierungsleitfaden\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"hreflang tags implementation guide - How to implement hreflang\" \/>\n<meta property=\"og:description\" content=\"The implementation of hreflang annotations can be difficult and is often done wrong. Here is how to get your hreflang tags right! This step-by-step guide will help you develop a good hreflang concept and choose the right implementation method. Warning: Very long and detailed content.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.searchviu.com\/de\/hreflang-implementierungsleitfaden\/\" \/>\n<meta property=\"og:site_name\" content=\"SEO Data Warehouse And Monitoring\" \/>\n<meta property=\"article:published_time\" content=\"2018-08-21T08:34:59+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-27T13:41:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.searchviu.com\/wp-content\/uploads\/2023\/02\/82848321-hreflang-guide-400x269-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"400\" \/>\n\t<meta property=\"og:image:height\" content=\"269\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Eoghan Henn\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@searchviu\" \/>\n<meta name=\"twitter:site\" content=\"@searchviu\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Eoghan Henn\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"29\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/\"},\"author\":{\"name\":\"Eoghan Henn\",\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/#\\\/schema\\\/person\\\/7a031e5565b9ece3fd77be3c7f19381c\"},\"headline\":\"hreflang tags implementation guide &#8211; How to implement hreflang\",\"datePublished\":\"2018-08-21T08:34:59+00:00\",\"dateModified\":\"2026-01-27T13:41:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/\"},\"wordCount\":6516,\"commentCount\":138,\"publisher\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.searchviu.com\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/82848321-hreflang-guide-400x269-1.jpg\",\"keywords\":[\"Engllish\"],\"articleSection\":[\"International SEO\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/\",\"url\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/\",\"name\":\"hreflang tags implementation guide - How to implement hreflang\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.searchviu.com\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/82848321-hreflang-guide-400x269-1.jpg\",\"datePublished\":\"2018-08-21T08:34:59+00:00\",\"dateModified\":\"2026-01-27T13:41:52+00:00\",\"description\":\"The implementation of hreflang annotations can be difficult and is often done wrong. Here is how to get your hreflang tags right! This step-by-step guide will help you develop a good hreflang concept and choose the right implementation method. Warning: Very long and detailed content.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.searchviu.com\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/82848321-hreflang-guide-400x269-1.jpg\",\"contentUrl\":\"https:\\\/\\\/www.searchviu.com\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/82848321-hreflang-guide-400x269-1.jpg\",\"width\":400,\"height\":269},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/hreflang-implementation-guide\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.searchviu.com\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"hreflang tags implementation guide &#8211; How to implement hreflang\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/#website\",\"url\":\"https:\\\/\\\/www.searchviu.com\\\/\",\"name\":\"SEO Data Warehouse And Monitoring\",\"description\":\"SEO Solutions For Teams And Agencies\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.searchviu.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/#organization\",\"name\":\"searchVIU\",\"url\":\"https:\\\/\\\/www.searchviu.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.searchviu.com\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/d3babe41-searchviu-logo2x.png\",\"contentUrl\":\"https:\\\/\\\/www.searchviu.com\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/d3babe41-searchviu-logo2x.png\",\"width\":340,\"height\":340,\"caption\":\"searchVIU\"},\"image\":{\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/searchviu\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/searchviu\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.searchviu.com\\\/#\\\/schema\\\/person\\\/7a031e5565b9ece3fd77be3c7f19381c\",\"name\":\"Eoghan Henn\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/88ecd619af8b41640851bdb169ff87f2ddec10119431686bd36effdde5ff2eb8?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/88ecd619af8b41640851bdb169ff87f2ddec10119431686bd36effdde5ff2eb8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/88ecd619af8b41640851bdb169ff87f2ddec10119431686bd36effdde5ff2eb8?s=96&d=mm&r=g\",\"caption\":\"Eoghan Henn\"},\"url\":\"https:\\\/\\\/www.searchviu.com\\\/de\\\/author\\\/eoghan\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"hreflang tags implementation guide - Wie man hreflang implementiert","description":"Die Implementierung von hreflang-Anmerkungen kann schwierig sein und wird oft falsch gemacht. Hier erf\u00e4hrst du, wie du deine hreflang-Tags richtig umsetzt! Diese Schritt-f\u00fcr-Schritt-Anleitung hilft dir, ein gutes hreflang-Konzept zu entwickeln und die richtige Implementierungsmethode zu w\u00e4hlen. Achtung! Sehr langer und detaillierter Inhalt.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.searchviu.com\/de\/hreflang-implementierungsleitfaden\/","og_locale":"de_DE","og_type":"article","og_title":"hreflang tags implementation guide - How to implement hreflang","og_description":"The implementation of hreflang annotations can be difficult and is often done wrong. Here is how to get your hreflang tags right! This step-by-step guide will help you develop a good hreflang concept and choose the right implementation method. Warning: Very long and detailed content.","og_url":"https:\/\/www.searchviu.com\/de\/hreflang-implementierungsleitfaden\/","og_site_name":"SEO Data Warehouse And Monitoring","article_published_time":"2018-08-21T08:34:59+00:00","article_modified_time":"2026-01-27T13:41:52+00:00","og_image":[{"width":400,"height":269,"url":"https:\/\/www.searchviu.com\/wp-content\/uploads\/2023\/02\/82848321-hreflang-guide-400x269-1.jpg","type":"image\/jpeg"}],"author":"Eoghan Henn","twitter_card":"summary_large_image","twitter_creator":"@searchviu","twitter_site":"@searchviu","twitter_misc":{"Verfasst von":"Eoghan Henn","Gesch\u00e4tzte Lesezeit":"29\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/#article","isPartOf":{"@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/"},"author":{"name":"Eoghan Henn","@id":"https:\/\/www.searchviu.com\/#\/schema\/person\/7a031e5565b9ece3fd77be3c7f19381c"},"headline":"hreflang tags implementation guide &#8211; How to implement hreflang","datePublished":"2018-08-21T08:34:59+00:00","dateModified":"2026-01-27T13:41:52+00:00","mainEntityOfPage":{"@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/"},"wordCount":6516,"commentCount":138,"publisher":{"@id":"https:\/\/www.searchviu.com\/#organization"},"image":{"@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.searchviu.com\/wp-content\/uploads\/2023\/02\/82848321-hreflang-guide-400x269-1.jpg","keywords":["Engllish"],"articleSection":["International SEO"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/","url":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/","name":"hreflang tags implementation guide - Wie man hreflang implementiert","isPartOf":{"@id":"https:\/\/www.searchviu.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/#primaryimage"},"image":{"@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.searchviu.com\/wp-content\/uploads\/2023\/02\/82848321-hreflang-guide-400x269-1.jpg","datePublished":"2018-08-21T08:34:59+00:00","dateModified":"2026-01-27T13:41:52+00:00","description":"Die Implementierung von hreflang-Anmerkungen kann schwierig sein und wird oft falsch gemacht. Hier erf\u00e4hrst du, wie du deine hreflang-Tags richtig umsetzt! Diese Schritt-f\u00fcr-Schritt-Anleitung hilft dir, ein gutes hreflang-Konzept zu entwickeln und die richtige Implementierungsmethode zu w\u00e4hlen. Achtung! Sehr langer und detaillierter Inhalt.","breadcrumb":{"@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/#primaryimage","url":"https:\/\/www.searchviu.com\/wp-content\/uploads\/2023\/02\/82848321-hreflang-guide-400x269-1.jpg","contentUrl":"https:\/\/www.searchviu.com\/wp-content\/uploads\/2023\/02\/82848321-hreflang-guide-400x269-1.jpg","width":400,"height":269},{"@type":"BreadcrumbList","@id":"https:\/\/www.searchviu.com\/en\/hreflang-implementation-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.searchviu.com\/en\/"},{"@type":"ListItem","position":2,"name":"hreflang tags implementation guide &#8211; How to implement hreflang"}]},{"@type":"WebSite","@id":"https:\/\/www.searchviu.com\/#website","url":"https:\/\/www.searchviu.com\/","name":"SEO Data Warehouse und Monitoring","description":"SEO-L\u00f6sungen f\u00fcr Teams und Agenturen","publisher":{"@id":"https:\/\/www.searchviu.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.searchviu.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/www.searchviu.com\/#organization","name":"searchVIU","url":"https:\/\/www.searchviu.com\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.searchviu.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.searchviu.com\/wp-content\/uploads\/2023\/02\/d3babe41-searchviu-logo2x.png","contentUrl":"https:\/\/www.searchviu.com\/wp-content\/uploads\/2023\/02\/d3babe41-searchviu-logo2x.png","width":340,"height":340,"caption":"searchVIU"},"image":{"@id":"https:\/\/www.searchviu.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/searchviu","https:\/\/www.linkedin.com\/company\/searchviu\/"]},{"@type":"Person","@id":"https:\/\/www.searchviu.com\/#\/schema\/person\/7a031e5565b9ece3fd77be3c7f19381c","name":"Eoghan Henn","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/88ecd619af8b41640851bdb169ff87f2ddec10119431686bd36effdde5ff2eb8?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/88ecd619af8b41640851bdb169ff87f2ddec10119431686bd36effdde5ff2eb8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/88ecd619af8b41640851bdb169ff87f2ddec10119431686bd36effdde5ff2eb8?s=96&d=mm&r=g","caption":"Eoghan Henn"},"url":"https:\/\/www.searchviu.com\/de\/author\/eoghan\/"}]}},"modified_by":null,"_links":{"self":[{"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/posts\/2572","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/comments?post=2572"}],"version-history":[{"count":19,"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/posts\/2572\/revisions"}],"predecessor-version":[{"id":8718,"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/posts\/2572\/revisions\/8718"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/media\/1093"}],"wp:attachment":[{"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/media?parent=2572"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/categories?post=2572"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.searchviu.com\/de\/wp-json\/wp\/v2\/tags?post=2572"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}