Hreflang Sitemaps Tool

Most Common Errors in Use

Our Hreflang Sitemap Tool converts your URL map from a CSV table into XML sitemaps and has been used by hundreds of thousands of SEO professionals across the world since we built it in 2012. Over that time, we’ve come across a handful of common user errors that can prevent the tool from working. If you are trying to use the tool and are getting nowhere fast, check out our fixes below to help save you time and energy in working it out.

1. Missing Headers

Our tool converts the values in the header column into the hreflang value in XML. For example, if your column header is en-gb, the URLs in that column will appear in the XML:


If there is no header column then there’s no value shown in your output file.

TIP: Hreflang values can be language and location, OR language only (using ISO codes) BUT NOT location only.

2. Blank Cells

There’s no data validation or form of ‘intelligent processing’ in the conversion from CSV input to XML output, therefore if you have a blank cell the tool will break. If there’s a column header but no cell-data, the tool doesn’t know what to do. In this case, if you have partial alternates i.e. alternate URLs for some [lang/geo] combinations but not for others, you will need to split your input files up and then hand-stitch your XML output files together.

TIP: Hreflang is a cyclical argument. No matter how you implement it, every alternate needs a self-referential tag, plus reference to every alternate ad infinitum, or it won’t work. In Search Console – this is where you get the “no return tags” error.

3. Dirty Data

If you have any errant data in your CSV input file, this will again break the tool. This can happen if you’ve opened an earlier file to re-use the headers or formatting, but haven’t cleared all the cells. We’ve even had one very frustrating occasion when a user had some text in white in a stray cell without realising.

Tip: Make sure you use canonical URLs with your chosen URLs for mark-up. A crawl can sometimes trigger actions that append a query or parameter to a URL. Clean these out or you could end up with a messy index problem if you don’t spot the issue before going live.

4. German Use of Semi-Colon

Our tool only works with CSV (comma separated values). We’ve noticed that German language users will often use “;” as the value separator in the input file. Unfortunately, this won’t work with our tool and the solution is to change your input file to make sure it uses “,” as the value separator.

Have fun generating your XML sitemaps for Hreflang. If you’re working with non-Latin URLs – such as Aramaic languages – you can also use our tool, providing you combine it with this hack.

If you’re still having trouble getting the tool to work, don’t hesitate to get in touch.

Like what you see? Lets talk. Get In Touch