Moz Q&A is closed.
After more than 13 years, and tens of thousands of questions, Moz Q&A closed on 12th December 2024. Whilst we’re not completely removing the content - many posts will still be possible to view - we have locked both new posts and new replies. More details here.
Hreflang Alternate & Pagination
-
Hi everybody,
So I'm setting up hreflang tags on an ecommerce site. The sites are in the USA and Canada. The Canadian site will have fewer products than the American site, meaning that there won't be as many pages in each category as there are on the American site. What is the correct way to handle hreflang tags on these extra category pages?
To put this another way, the American site may have a category with 3 pages of products, while the Canadian equivalent only has 2 pages of products. What happens to this extra American category page (example.com/widget-category/page-3) ?
Does it get an hreflang tag linking to the first page of the equivalent Canadian category (example.ca/widget-category/)?
Does it not get any hreflang tags because it has no true Canadian counterpart?
Does it matter at all if it has a canonical tag pointing to the first page in the series anyway (example**.com**/widget-category/)?
Thanks,
Andrew B.
-
Canonicals and hreflangs must be treated separately.
My rule, and this what I said at LearnInbound, from where SEMRush tweeted the tweet you embedded in your post, is this:
-
First set up and/or solve all canonicalization issues your site may have;
-
Once you have solved the canonicalization issues, you can work on implementing the hreflang only on canonical URLs (not canonicalized)
In that case of pagination the pages 1, 2, 3, 4, et al have self-referential rel="canonical", so - ideally - the hreflang must reference to the corresponding pages 1, 2, 3, 4, et al of the same pagination in the other country and/or language version.
Finally, you are correct regarding the "view all" being the canonical URL of a paginated series.
-
-
You are right. I didn't know about the right way to paginate with canonical. But the point about Hreflang stands. Don't use Hreflang and canonical together on the same page. If you are using canonical to point to the "View All" version, then use Hreflang on the "View all" versions, and not on the individual pages.
-
"Page-2 and Page-3 on the US site should use rel canonical to point to US Page-1. And Page-2 on CA site should use rel canonical to point to Page-1 on CA."
Sorry to say, but this is wrong. Having this configuration will lead the Googlebot to not index or follow anything on page-2 or page-3 because only page-1 is the canonical page. Use either canonical to "page-all" (if existent) or rel="prev"/"next" (sometimes useful with Robots-Tag with noindex,follow for page-2, page-3 ...)
See > Mistake 1: rel=canonical to the first page of a paginated series
https://webmasters.googleblog.com/2013/04/5-common-mistakes-with-relcanonical.html# -
Don't use canonical and hreflang together. I blogged about this very issue: https://hreflang.org/use-hreflang-canonical-together/
What this means for you is that even for Page-2 (for both US and CA), if you are using rel canonical to say that Page-2 is a duplicate of Page-1, then do not use hreflang on Page-2. Using both canonical and hreflang on page-2 will only confuse Googlebot.
In your case, only use hreflang on the canonical versions of the page. i.e., Page-1 on both US and CA sites should point to each other using hreflang. Page-2 and Page-3 on the US site should use rel canonical to point to US Page-1. And Page-2 on CA site should use rel canonical to point to Page-1 on CA.
-
That makes perfect sense! Thanks Gianluca (hope to see you at Mozcon again this year btw!).
-
The example.com/widget-category/page-3 URL cannot have as href in its hreflang="en-CA" the example.ca/widget-category/page-1 because also this other URL - example.com/widget-category/page-1 - has that Canadian URL as href (moreover, that is the correct href for its hreflang="en-CA").
Hence, if you follow your first idea, you will be having a URL (the canadian first page of the paginated list) that will have two different hreflang annotations ( <rel="alternate" href="example.com/widget-category/page-1" hreflang="en-US">and <rel="alternate" href="example.com/widget-category/page-3" hreflang="en-US">, which is totally uncorrect, because you are telling Google to use two URLs for English speaking users in the USA, instead of one.</rel="alternate"></rel="alternate">
Sincerely I wouldn't worry that much. If you are using the rel="prev"/"next", Google will consider the third page of the US listing as a all with the first two pages, hence it should not start showing it in the index.
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
Using same URL for both "en" and "en-us" hreflang tags
Hi,I have a question. Is it okay if I use the same URL for both "en" and "en-us" hreflang tags? For example, for my en-us page: Is this okay with Google? What are your thoughts on this?
International SEO | Nov 12, 2020, 11:41 PM | Avid_Demand0 -
Traffic drop after hreflang tags added
We operate one company with two websites each serving a different location, one targeting EU customers and the other targeting US customers. thespacecollective.com (EU customers) thespacecollective.com/us/ (US customers) We have always had canonical tags in place, but we added the following hreflang tags two weeks ago (apparently this is best practice); EU site (thespacecollective.com) US site (thespacecollective.com/us/) Literally the same day we added the above hreflang tags our traffic dropped off a cliff (we have lost around 70-80% on the EU site, and after a minor recovery, 50% on the US site). Now, my first instinct is to remove the tags entirely and go back to just using canonical, but if this is truly best practice, that could do more damage than good. This is the only change that has been made in recent weeks regarding SEO. Is there something obvious that I am missing because it looks correct to me?
International SEO | Sep 28, 2020, 3:18 PM | moon-boots0 -
How do hreflang attributes affect ranking?
We have a site in English. We are considering translating the site into Dutch. If we use a hreflang attribute does that mean we have to create a duplicate page in Dutch for each English page, or does Google auto-translate? How would duplicate pages, even if they are in a different language, affect ranking?
International SEO | Sep 7, 2019, 2:48 PM | Substance-create0 -
Hreflang tags and canonical tags - might be causing indexing and duplicate content issues
Hi, Let's say I have a site located at https://www.example.com, and also have subdirectories setup for different languages. For example: https://www.example.com/es_ES/ https://www.example.com/fr_FR/ https://www.example.com/it_IT/ My Spanish version currently has the following hreflang tags and canonical tag implemented: My robots.txt file is blocking all of my language subdirectories. For example: User-agent:* Disallow: /es_ES/ Disallow: /fr_FR/ Disallow: /it_IT/ This setup doesn't seem right. I don't think I should be blocking the language-specific subdirectories via robots.txt What are your thoughts? Does my hreflang tag and canonical tag implementation look correct to you? Should I be doing this differently? I would greatly appreciate your feedback and/or suggestions.
International SEO | May 31, 2018, 5:35 AM | Avid_Demand0 -
Worldwide and Europe hreflang implementation.
Hi Moz ! We're having quite a discussion here and I'd like to have some inputs. Let me explain the situation and what we plan to do so far. One of our client has two separate markets : World and Europe. Both pages versions will be mostly the same, except for the fact that they will have their own products. So basically, we'd want to show only the European EN version to Europe and the standard EN version to the rest of the world, same goes for FR and ES. As far as IT, DE, CS and SK, they will only be present within the european version. Since we cannot target all Europe with a single hreflang tag, we might have to do it for every single european countries. Regarding this subject, SMX Munich recently had quite an interesting session about this topic with a confirmation coming from John Mueller saying that we can target a single URL more than once with different hreflang tags. You can read more here : http://www.rebelytics.com/multiple-hreflang-tags-one-url/ So having all this in mind, here's the implementation we plan to do : www.example.com/en/ Self canonical www.example.com/fr/ - hreflang = fr www.example.com/es/ - hreflang = es www.example.eu/it/ - hreflang = it www.example.eu/de/ - hreflang = de www.example.eu/cs/ - hreflang = cs www.example.eu/sk/ - hreflang = sk www.example.eu/fr/ - hreflang = be-fr www.example.eu/fr/ - hreflang = ch-fr www.example.eu/fr/ - hreflang = cz-fr www.example.eu/fr/ - hreflang = de-fr www.example.eu/fr/ - hreflang = es-fr www.example.eu/fr/ - hreflang = fr-fr www.example.eu/fr/ - hreflang = uk-fr www.example.eu/fr/ - hreflang = gr-fr www.example.eu/fr/ - hreflang = hr-fr etc… . This will be done for all european countries (FR, EN and ES). www.example.com/en/ - x-default Let me know what you guys think. Thanks!
International SEO | Feb 20, 2017, 10:40 AM | Netleaf.ca0 -
Is this setup of Hreflang xml sitemap correct?
Hi, I'm trying to setup hreflang for 2 domains. One is purely a US site and the other domain has the language-country as subdomains. For example: http://www.websiteUSA.com (Targets English - USA) https://www.websiteINT.com/en-CA (Targets English - Canada) https://www.websiteINT.com/fr-CA (Targets French - Canada) https://www.websiteINT/es (Targets Spanish) ..and so on and so forth for about 12 of these international URLs. I created an XML sitemap that looks something like this: <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>http://www.websiteUSA.com</loc></url></urlset> <url><loc>https://www.websiteINT.com/en-CA</loc></url> <url><loc>https://www.websiteINT.com/fr-CA</loc></url> Question 1: Is this correct? In my actual file, I have all the countries listed and self-referencing. Question 2: I'm hosting this file at https://www.websiteINT.com/hreflang.xml AND at http://www.websiteUSA.com/hreflang.xml. Is this correct? Question 3: Will this help the SERPs direct english speakers from the US to http://www.websiteUSA.com while show SERPs for say English Speakers in Canada to https://www.websiteINT.com/en-CA? Question 4: For some reason, when I put up the xml site, it only listed each URL once instead of the full XML file. Should I have uploaded a text file instead? It doesn't seem to render correctly. Thank you!
International SEO | Feb 4, 2016, 10:56 PM | SylviaH0 -
What is the proper way to setup hreflang tags on my English and Spanish site?
I have a full English website at http://www.example.com and I have a Spanish version of the website at http://spanish.example.com but only about half of the English pages were translated and exist on the Spanish site. Should I just add a sitemap to both sites with hreflang tags that point to the correct version of the page? Is this a proper way to set this up? I was going to repeat this same process for all of the applicable URLs that exist on both versions of the website (English and Spanish). Is it okay to have hreflang="es" or do I need to have a country code attached as well? There are many Spanish speaking countries and I don't know if I need to list them all out. For example hreflang="es-bo" (Bolivia), hreflang="es-cl" (Chile), hreflang="es-co" (Columbia), etc... Sitemap example for English website URL:
International SEO | Sep 29, 2014, 7:44 PM | peteboyd
<url><loc>http://www.example.com/</loc></url> Sitemap example for Spanish website URL:
<url><loc>http://spanish.example.com/</loc></url> Thanks in advance for your feedback and help!0 -
Upper case or/and lower case in rel="alternate" hreflang
Hi Mozzers, I have a question about the rel="alternate" hreflang tag, with an example. When I use two subfolders for two different countries/languages, for instance www.domain.com/nl-nl/ and www.domain.com/nl-en/ (for the English version) and I want to use the rel="alternate" hreflang tag, do I need to follow the ISO standards concerning Uppercase country code and Lowercase language code (en-NL)? Or is it okay to use the Lowercase country and language code (en-nl), since we also use this in the URL of the Subfolder. What does Google prefer? Thanks in advance.
International SEO | Feb 22, 2013, 9:38 PM | MartijnHoving820