Hreflang tag implentation
-
Hi,
We've had hreflang tags implemented on our site for a few weeks now, and while we are seeing some improvements for the regional subfolders I wanted to double check I had the tags implemented correctly (a couple of examples are below). However while the regional subfolder sites are now ranking instead of the US site for some keywords, some key search terms are still returning the US site. Could this be due to incorrect implementation for that specific page?
Due to complications with using Magento we're implementing the tags in the site maps. Also magento appears to be inserting a rel canonical tag automatically for each page and self referencing e.g. On www.example.com/uk/security-cameras (one of the pages we're having issues with) the canonical tag is http://www.example.com/uk/security-cameras" />. Is this an issue?
Any advice would be appreciated. Thanks.
<url><loc>http://www.example.com/uk/dvrs-kits</loc>
<lastmod>2014-07-23</lastmod>
<changefreq>daily</changefreq>
<priority>0.5</priority></url>
<url><loc>http://www.example.com/uk/dvrs-kits/1080p</loc>
<lastmod>2014-07-23</lastmod>
<changefreq>daily</changefreq>
<priority>0.5</priority></url> -
Thanks.. it took me a while but I did realise that one eventually.
-
Thanks Thomas. That is how our sitemap now reads. It just seems odd that when you access map via a browser the hreflang tags don't appear...
-
The answers you received here in the thread are correct:
your sitemap implementation is wrong, because it commits a classic mistake: self-referencing hreflang annotations are missing.
In other words, you must declare that the URL http://www.example.com/uk/dvrs-kits is the one Google must show to English speaking users in the UK.
So you must add this:
Seeing the changes taking place in the SERPs is not immediate.
-
So I will test the site map agin after you made the XML sitemap did you tell Google about language and country targeting? Use tell Google Webmaster tools to Geo target the subfolders? http://www.google.com/webmasters/ Check your listing all over the world http://www.isearchfrom.com/ https://support.google.com/webmasters/answer/2620865?hl=en&ref_topic=2370587 You need the site map to look like this. <url><loc>http://www.example.com/english/</loc> **This is the URL we want to be indexed** <xhtml:link rel="alternate" <strong="">This tells Google there is an alternate version of the URL hreflang="de" **This tells Google the language we’re targeting with the alternate version (German)** href="http://www.example.com/deutsch/" **This tells Google the URL of the alternate version** /> <xhtml:link rel="alternate" <strong="">This tells Google that there is an alternate version of the URL hreflang="de-ch" **This tells Google the language and country we’re targeting with the alternate version (German and Switzerland)** href="http://www.example.com/schweiz-deutsch/" **This tells Google the URL of the alternate version** /> <xhtml:link rel="alternate" <strong="">This tells Google that there is an alternate version of the URL hreflang="en" **This tells Google the language we’re targeting with the alternate version (English)** href="http://www.example.com/english/" **This tells Google the URL of the alternate version** /></xhtml:link></xhtml:link></xhtml:link></url>
Important note - the example above is only for one URL which has three alternate versions. The following code is an example of a full XML sitemap which includes three URLs, each with three alternate versions.
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url> <loc>http://www.example.com/english/</loc> </url> <url> <loc>http://www.example.com/deutsch/</loc> </url> <url> <loc>http://www.example.com/schweiz-deutsch/</loc> </url></urlset> I will use Deep Crawl to look for hreflang it site maps. You might want to use the header way if it is not working. Thomas
-
I've updated the site maps but the hreflang tags still aren't showing when you view the site map...
-
I think I might see the problem. I'm only referencing the alternative pages with the hreflang tag, I've not included the site itself. it should be:
<url><loc>http://www.swann.com/uk/dvrs-kits</loc>
<lastmod>2014-07-23</lastmod>
<changefreq>daily</changefreq>
<priority>0.5</priority></url> -
This is the beginning of my sitemap for the UK subfolder, as far as I can see we're following both the case studies you posted and the Google advice on the structure. But as you point out when you view the sitemap online it's not showing the hreflang tags.
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>http://www.swann.com/uk/dvrs-kits</loc>
<lastmod>2014-07-23</lastmod>
<changefreq>daily</changefreq>
<priority>0.5</priority></url>
<url><loc>http://www.swann.com/uk/dvrs-kits/1080p</loc>
<lastmod>2014-07-23</lastmod>
<changefreq>daily</changefreq>
<priority>0.5</priority></url>
<url><loc>http://www.swann.com/uk/dvrs-kits/960h</loc>
<lastmod>2014-07-23</lastmod>
<changefreq>daily</changefreq>
<priority>0.5</priority></url></urlset> -
-
- Here is the next test
- Use this link to see in the the site
- http://crawl.blueprintmarketing.com/projects/reports/69930?ro=991e4a1c6d5086bd0bd4d0965e3b6037ed69b692
- http://cl.ly/3G2h3u464400
- Files
- http://cl.ly/3G2h3u464400
- http://searchengineland.com/how-to-implement-the-hreflang-element-using-xml-sitemaps-123030
- https://search.nerdydata.com/search/#!/searchTerm=http://www.swann.com//searchPage=1/sort=pop
- sitemap
- http://cl.ly/text/1d2E2h3P022J
- http://cl.ly/text/0t0T3T2p210h
- https://cl.ly/Xjb3
-
Thanks for running this.
The deeptrawl says that there are no hreflang tags in place. If you view the sitemap.xml files on the site you can't see any there either. However they're definitely in the files I'm giving to my colleague to upload.
I matched the structure of the tag to the two case studies you put in your first post...
-
Here is crawl 1
- http://cl.ly/3u0Z3N0S3m1B
- Interactive URL
- http://crawl.blueprintmarketing.com/projects/reports/69929?ro=0de594f6c4b262001d6d234c282d8ade7e42c020
- http://crawl.blueprintmarketing.com/report_grid/trend/69929/pages_without_hreflang
- &
- http://crawl.blueprintmarketing.com/report_grid/69929?repname=pages_without_hreflang
- I am still running a 2ed full crawl it will post in the AM
Tom
-
You could use the site map however I've had better luck with other methods. If you would like me to I am more than happy to run deep crawl on your site and figure out the problem with your current setup via site map
I have Deepcrawl & will use it to check.
I am referencing this from
http://moz.com/blog/hreflang-behaviour-insights
"Section 4: Tools for the serious International SEO
Essentials:
- Reliable rank tracker that can localize: Advanced Web Ranking, Moz, etc...
- Crawler that can validate hreflang annotations in XML sitemaps or within : The only tool on the market that can do this, and does it very well, is Deepcrawl.
Other nice-to-haves:
- Your own method of "gathering" international search results on scale. You should probably go with proxies.
- Your own method of parsing XML sitemaps and cross checking (even if you use something like Deepcrawl, you'll need to double check).
- Obvious, but worth a reminder: Google webmaster tools, Analytics, access to server logs so you can understand Google's crawl behaviour."
Please look for the report it in the AM,
Tom
-
Hi,
I did have a read through those two case studies previously. My understanding was that we could implement the code purely on the on the sitemap, and that nothing on the site was needed. Are you saying we also need some code on the site as well?
The verification tool doesn't say we have it implemented, but I wasn't sure that it would check the sitemaps or just the sites HTML.
-
Run the site through the tools below
it appears that your only running the site map and not the code itself a good look at the code need it is found in URL below
- http://moz.com/blog/using-the-correct-hreflang-tag-a-new-generator-tool
- http://www.seerinteractive.com/blog/case-study-the-impact-of-hreflang-tag
1 validator
- Validator http://flang.dejanseo.com.au/
- 2 site map tool
- site map tool http://www.themediaflow.com/tool_hreflang.php
- http://www.stateofdigital.com/hreflang-sitemap-tool/
- hreflang
- Generator http://www.internationalseomap.com/hreflang-tags-generator/
- From Google
- https://support.google.com/webmasters/answer/189077?hl=en
For language/country selectors or auto-redirecting homepages, you should add an annotation for the hreflang value "x-default" as well:
Thomas
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
-
NoIndex tag, canonical tag or automatically generated H1's for automatically generated enquiry pages?
What would be better for automatically generated accommodation enquiry pages for a travel company? NoIndex tag, canonical tag, automatically generated H1's or another solution? This is the homepage: https://www.discoverqueensland.com.au/ You would enquire from a page like this: https://www.discoverqueensland.com.au/accommodation/sunshine-coast/twin-waters/the-sebel-twin-waters This is the enquiry form: https://www.discoverqueensland.com.au/accommodation-enquiry.php?name=The+Sebel+Twin+Waters®ion_name=Sunshine+Coast
Technical SEO | | Kim_Lazaro0 -
Shopify Canonicals for Tagged Filters
I've been researching this topic endlessly and thought I had arrived at a solution but Screaming Frog indicates my solution was not successful. Problem: I used tags to filter my collections pages. The result, I discovered, was the creation of dozens and dozens, maybe hundreds, of additional collection URLs for each possible permutation of tag filters. I would like to make the collection page URL, with no tag filters, the canonical. Proposed Solution: I found the following code described somewhere as the solution: {% if template contains 'collection' and current_tags %} {% else %} {% endif %} However, I crawled my site with Screaming Frog and found that the canonical link element is still listed as the URL with the tags included. The crawler does recognizes the "noindex" instruction. Any ideas on what the best move is here?
Technical SEO | | vgusvg0 -
Use hreflang for language and regional URLs
I have implemented hreflang on site, seen here http://www.cobaltrecruitment.com/ but Webmaster Tools is returning loads of errors in the international targeting area..... "'“en-sg"' - unknown language code" and "'“en-ar"' - unknown language code" Can anyone suggest what I need to tell my developers to do? Thanks for your help!
Technical SEO | | the-gate-films0 -
Is alt text inside an img tag inside an h1 the same weight as text directly inside the h1?
Right now I use a background image and CSS to tie the h1 tag to my logo on each page. However, I am concerned that may not be best practice. Plus, I am interested in using schema markup on my logo. So, my question is, if I use an image with alt text inside my h1 tag, will the alt text carry as much weight as a text-based h1?
Technical SEO | | Avalara0 -
Title tag not changing in Google. Can somebody take a look for me?
I'm using Yoast SEO plugin for the website. The website is http://www.emerypharmaservices.com. It appears on the webpage, the title tag is correct (home page should be Contract Laboratory Research Services for Analytical Chemistry and Microbiology), however, in Google it only says Emeryville Pharmaceutical Services. Could this be due to my settings? Please advise. Thank you
Technical SEO | | leopold49520 -
Duplicate Title Tag issue due to Shopify CMS
Hi guys, I'm a novice really when it comes to SEO, yet have taken it in house for the next year or so, firstly because I have had my fingers burnt twice...and secondly, to allow me to recoup some of the loss from my prior campaigns. One thing I have noticed on my site (which uses a Shopify E-commerce CMS), is that Shopify duplicates a url for each my products. An example of this is http://www.vidahomes.co.uk/collections/designer-radiators-heating/products/reina-aliano
Technical SEO | | philscott2006
http://www.vidahomes.co.uk/products/reina-aliano Both products provide exactly the same information, yet appear in different ways subject to how the customer finds them. I contacted Shopify to find a fix to this issue when I noticed a high amount of Duplicate Title Tags in my SEO crawl. Their response was as follows. Using a rel canonical link will help prevent duplicate content issues with search engines. All you need to do is add this line of code: **<link rel="canonical" href="{{ canonical_url }}" />** ** before the tag in the theme.liquid file. It’s that simple :)** The theme liquid file basically generates the outer template for the whole site, and is only compromised when over-ruled. This all seems a little too easy for me, so I am hoping whether someone can elaborate as to whether this will work or not, as I'm not entirely sold on their response. I was always under the impression with canonical tags, that they should be added to the header section of the duplicate page in question, which refers back to the original page. The code I have been told to add above implies that the canonical tag would be added to every page in my site so the Google robot would have a hard time in finding anything at all of relevance Thanks in advance for any assistance with this. Kind Regards Phil Scott Vida Homes0 -
Should rel canonical tags include the root domain
It does sound like a silly question but bear with me a little... I recently installed on my Joomla website a module that automatically creates rel canonical tags for pages that contain lists that can be sorted by different criteria: (price, alphabetic order, etc...) I know that a proper canonical tag should look like this: However, the module I'm using creates the following structure Will this work? I mean, will it be "understood" by the bots? To see what the module actually does, you can visit the following link http://www.quipeutlefaire.fr/fr/index.php?sort=price&sort_direction=desc&limit=10&limitstart=0&option=com_auctions&category=240 In the source code you will see that the canonical tag is Which is the original "unsorted" page. Thanks in advance for your help
Technical SEO | | QPLF0 -
At what point is the canonical tag crawled
Do search engines (specifically Google) crawl the url in the canonical tag as it loads or do they load the whole page before crawling it? Thanks,
Technical SEO | | ao.com0