Beginner's Guide To International SEO

Scott Stockdale
Scott Stockdale
hero image

Is your website currently getting traffic and sales from multiple countries, but you know it could do better? Or perhaps you do well in your current market, and you’re looking to break out in front of a new audience, but not sure how to start?

Well, good news!

International SEO is one of the simplest ways to scale to a new customer base while also lowering your current bounce rate, increasing traffic, and improving your conversions across your site.

Sure, the technical SEO elements are a little complex to set up, but the process is incredibly simple:

  • Decide on a goal audience to target
  • Set up a new URL structure for that specific language/country, so Google understands who and where you’re targeting
  • Create translated versions of your current assets for that new language (or hire someone to do it for you)
  • Help Google deliver the right content to that new audience

Easy 😉!

In this guide, we’re going to share a step-by-step process for getting started with international SEO so you can see what's needed, and how you can start taking advantage of it.

Better still, we’re going to look at the pros and cons of certain options, while also simplifying what it all means, so let’s dive in…

Step 1: Decide on a goal audience to target

Because of the complexity and volume of work required, I highly recommend that you only target one new audience/language when starting your international SEO efforts.

This is because you need to create translated, native language versions of your entire site and content assets for each new audience. Multiple languages mean multiple versions of your assets which can get out of control fast unless you have a huge team or can hire multiple people.

Too many tasks to do

So which language should you target first?

You might already have a specific market in mind, perhaps because you’re going to expand there in the future or maybe you saw that there's low competition. If so, pick that one and jump ahead to the next step.

If you’re not sure where to start though, I recommend going into your Google Analytics and navigating to the Acquisition > Search Console > Countries option.

Find top locations for you to get traffic from with this new language

This will load up a report for traffic from various countries to your site, along with CTR, Bounce Rate, Conversion Rate, etc.

Look at your current traffic from each country

Now, you might be tempted to just choose the top country in your report with a different native language to your main audience. This way you’re choosing the country with the highest number of impressions, but I recommend you do a little research first.

Take a look at your report and each country, and then answer the following:

  • What is the current conversion rate for that country on your site? Are you making any sales?
  • What is the bounce rate for that traffic so far?
  • What’s the churn/refund rate for those sales?
  • What is the country's current situation? Do they have a market for you? Can a targeted audience in that location afford what you’re selling?
  • Does your product fit with that market?

For example

A large section of our own audience traffic is from India, but our conversion rate with this traffic is lower when compared to other countries. This could be potentially due to the difference in the exchange rate and our product being too expensive, but it’s also a possibility that our content simply ranks and gets clicks, but the readers bounce due to a language barrier.

When we look deeper at our analytics, we might be better off targeting German or even French-Canadian audiences.

Native content language barrier

These are all things you need to weigh up when deciding on a location or language to target. It could be that there’s a smaller segment that will buy and make your efforts profitable and so it’s still worth targeting.

Either way, do your market research first before you decide. Also, you need to think of your offer and how it fits…

Can you even sell to that new audience?

Don’t forget also to look at your product offer and the target country and language to make sure it can be sold to them.

For example

Here at ZTM, all of our programming courses are currently in English.

Coding courses in English

So although we could target other countries and languages to get more traffic, it wouldn’t make a lot of sense without also creating new versions of our courses in that same target language, as the visitors wouldn’t want to buy what we sell.

It’s not just different language products though. If you’re in ecommerce then you may have shipping restrictions or the need to relabel products first. Again, this is nothing too difficult to resolve, but just to keep in mind when doing your research.

Once you’ve decided on a language to target, it’s time to look at the implementation and site architecture.

Step 2: Choose your URL structure

The reason international SEO works so well is that you’re creating specific content and assets for that particular audience, which improves the user experience. Google loves this and so does the reader.

They search for a topic and then Google finds the content they want that best meets their requirements. And because the content is in the reader’s native language, they don’t bounce off to find a better version for their needs.

Celebrate

Hooray for them and hooray for us, because it means you can target specific keyword variations for either locations or languages, while also ranking. Huzzah!

The issue of course is that you need to create each of these new language assets, as well as a version of your website to suit.

Create an international version of your website

You see, international SEO is not as simple as keeping your standard site and then just throwing up a new version of a sales page or blog post after running it through a translation app.

(Never use translation tools for this by the way as they do a terrible job. You can hire a bi-lingual writer to translate and create new versions of content etc.)

You can’t just use a plugin either to change the language dynamically. Instead, there needs to be a new language version of your entire site to not only help the audience navigate easier, but to also help Google understand the language or country you’re targeting so it can recommend it correctly in the SERPS.

Before you get all excited and start hiring though, we need to look at how you’re going to implement this new language version. Do you build a brand new site from scratch or are there easier and cheaper options?

Let's take a closer look at each one of these options before we explore their pros and cons from an SEO point of view...

Option #1: Creating a brand new ‘country code top-level domain’ (ccTLD)

ccTLD

The first option is to simply buy a new domain in that target country's URL structure so that it’s recognized as being from that specific country, and then create a brand new website.

  • yourwebsite.co.uk for England
  • yourwebsite.de for Germany
  • yourwebsite.fr for France, etc

If you’re going to target a specific country and not just a language, perhaps because you’re going to have unique offers for that country or even a physical location, then this would be the best option.

Pros

  • Targeting. It helps Google understand that you want to geo-target visitors in that particular country, which could help with ranking efforts. ccTLDs are the clearest signal to search engines and are, therefore, the easiest way to rank locally
  • Trust. It’s also a great trust signal for your target audience because they recognize the specific URL structure for their personal location. This can even work out well if you’re targeting the same language but want to customize for local terminology and keywords or to build trust in a region

For example

If you live in England, you’re probably going to purchase off the amazon.co.uk site instead of the amazon.com version, simply due to better options for delivery that are located closer to where you live, or even more specific options that ONLY ship to the UK.

geo targeting with URL structures

Cons

  • Costs. For every new domain, you’re going to have to cover costs for hosting and plugins on each version of your site
  • Availability. Your domain may have already been purchased by someone else in that target country! This could lead to an expensive purchase
  • Maintenance. You’re also going to have to maintain multiple versions of your site, along with all code updates and products
  • SEO rankings. Because each site is different, you'll have to spend a lot of time and money building up the domain authority on each new domain through separate link-building efforts, content writing, etc. If your resources are stretched - both in terms of time and money - ccTLDs may not be the way to go
  • Google issues. Some websites use URL structures that compete with these country URL designations

For Example

Libya (.ly) is the same URL structure that Bitly uses for their URL shortening tool to share items to social media (bit.ly).

Make sure the URL wont have any issues

This causes Google to view some country-code level domains as generic with no further advantage, which is not great.

So let’s look at a cheaper option than buying a new domain.

Option #2: Create a dedicated subdomain on your current site, to target that new language only

Dedicated subdomain

A subdomain is a child domain of a larger parent domain. In simple terms, you think of it as its own separate website but built on your current site.

You can call these subdomains anything you want, but the best practice is to use the same country codes as you might for a new domain so that you recognize which subdomain is for which language/country.

For example

  • us.yourwebsite.com
  • fr.yourwebsite.com
  • de.yourwebsite.com

Notice that the change to the URL is at the front end of the URL structure.

Pros of subdomains for URL structure

  • Simple. Fairly easy to set up
  • Cheap. Can piggyback on your current web hosting

Cons

  • Broader targeting. They provide weaker signals to search engines, meaning they don’t rank as well as they could if you had an exact country specific URL
  • Harder to rank. They MAY dilute domain authority (this is heavily debated in the SEO community) which means that your new language content may not rank without direct backlinks. (It’s treated almost like a totally different website). However, you can get around this with international link building, which is simply making sure you get links from relevant same language countries. The beauty of this though is that its often easier to rank this content in these new locations due to the level of local competition
  • Confusing user experience. Users may get confused with the URL structure. (Having your main website URL with some random letters BEFORE the domain, can cause some users to think it’s a spam site)
Does the URL look suspicious?

Important: Subdomains are probably not the best option for international SEO, but I’m including them here so that you can see what options you have available.

That, and the fact that they’re VERY similar in both name and layout to another option (subdirectories) which can be confusing unless you know the difference between the two. I wouldn’t want you to use the wrong one by accident and then have to redo all your work.

The key thing to understand is that this next option seems very similar, but it bypasses some of the cons that subdomains suffer from.

Option #3: Create a dedicated subdirectory/sub folder on your current site, to target that new language only

Create a dedicated subdirectory

So what's the difference between this option and the last one?

Annoyingly, their names are almost identical which is why subdirectories are sometimes called subfolders instead. If you’re not sure which version you want from your web dev, use that term.

Let’s get into the actual differences.

You may not have immediately noticed, but the URL structure is slightly different. With a subfolder/sub directory, the language code is AFTER the usual website URL slash and not before it i.e It’s not a change in the website domain URL, but an addition right after.

So rather than us.yourwebsite.com/, it’s yourwebsite.com/us/ which doesn't seem like much of a difference but there are a lot of pros here…

The URL looks far more trustworthy

Pros of subdirectory URL structure

  • Users better recognize the URL. Having the URL change after the main domain name feels like the same website and not a phishing scam
  • Google treats a subdirectory as the same website domain. This means that your new language assets will have the same Domain Authority as your current website, helping it to rank almost immediately
  • Those ranking efforts compound. If you later start targeting another new country/language, then any links that go to that subdirectory will also raise the rankings for the rest of your site and targeted languages. Huzzah!
  • Easier to maintain than multiple separate websites as everything is in one location
  • Same effort to set up as a subdomain but without the ranking and spam issues

Cons

  • The geo-targeting is not as effective as it would be with a ccTLD. You can target languages and set up hreflang code to help Google understand who you’re trying to target, (more on this in a second), but an exact match country domain is slightly better if you want to target a specific country vs just a language

So which is the best URL structure for international SEO?

There are a few other options you could use but in reality, the 2 best options are ccTLDs and subdirectories:

  • If you're targeting a specific country, and may even have local offers or even physical locations for that specific region, then think about using a ccTLD, such as .fr or .es. Again remember the added costs and need to rank separately and maintenance

  • If you are focusing on language targeting only and just getting traffic from those language speakers, then I recommend using a subdirectory such as yourwebsite.com/es if you're going to create Spanish language content. This is probably the best option if you don’t have a physical store or just sell a digital or consulting offer

Step 3: Create new language versions for your assets

So now that you have your URL structure decided on and set up, it’s time to create your new language assets.

Hire a native writer

I cannot emphasize this enough, but I really recommend that you hire a bi-lingual writer who works in your particular industry, and who can speak your current website language as well as the new target language.

Hore a native writer to translate your content

The reason being is that they can translate fine details that apps simply miss. It’s so easy for a translation app to make your website make no sense or worse, include offensive language by accident.

Build your core pages first

It can be tempting to just have your writer start translating blog posts for traffic but hold off. Instead, get them started on building your new URL structure and creating the core pages such as the home page, sales pages, about, refunds, etc.

Get all of that written up and added first because it’s pointless attracting foreign language audiences with content if they then can’t click through and convert on an offer.

The good news is, you can probably copy and paste templates across for each of these pages and just have the writer add the correct content. Same for the blog posts later.

Double check all links and link structure

Make sure they link to the correct content! The trouble with copy, paste, and translating pages is you might leave links to content in your original language and not link to the new versions.

Add in multi-language navigation

Once you’ve built these new language core pages on your new ccTLD or subfolder, go ahead and add a dropdown language menu option on both sites, and link between the different versions.

Create a drop down language menu

This way someone on holiday in Spain who is an English speaker can click across and vice versa.

Improve delivery speed

If you don’t have one already, add your website to a content delivery network (CDN) such as Cloudflare, or whoever your hosting provider recommends.

Improve site delivery speed with a CDN

CDNs work by saving copies of your website on localized servers, so that they can reduce delivery load time for your website for people around the world. (To put simply, a copy is saved to a server that's closer to the user for faster load time.)

This is especially important if you’re going to target people in a different country from where you’re currently hosted.

Create your new language blog posts and optimize them

Rather than just translate the content directly, be sure to also do keyword research in the native language of your target audience.

Optimize international content for new keywords

Not only will this help you to rank and be recommended by Google in the audience's countries, but you might find some better keyword options with lower competition and higher search volume.

Be sure to optimize the on page SEO, img tags, Metadata, and Schema also.

Simple!

Step 4: Help Google deliver the correct content to your audience with hreflang tags

So what are hreflang tags, how do they help us and how do they work?

Well, as advanced as Google and other search engines are, they still get a little confused around content and context. An hreflang tag is our method of trying to help these search engines understand our pages better.

It's a line of code that we can add to a webpages HTML, and it looks something like this:

<link rel="alternate" hreflang="_x language_" href="https://yourwebsite.com/alternate-page"/>

The hreflang tag allows you to show search engines what the relationship is between web pages in alternate languages, which is useful when you've created content that's specific to a local audience.

Here’s what each part of this code means:

  • link rel="alternate" means this page has an alternate version
  • hreflang="_x language_" means that the alternate is in X language, and
  • href="https://yourwebsite.com/alternate-page" means that you can find the alternate version of this page at this URL

The hreflang tag sends a signal to search engines that a user querying in language "x" will want this alternate result, instead of a page with similar content in language "y". This can decrease your bounce rate and increase your conversions by making sure your target audience lands on the version of your page most appropriate for them.

For example

If you create a Spanish-language version of your English-language homepage, such as yourwebsite.com/es, you would also tag it as "Español" by using hreflang="es" inside that page's HTML code.

This means that searchers with an IP address that a search engine has reason to believe is in a Spanish speaking country are served that page in Spanish instead of the English version.

Likewise, if they are in an English speaking country, then they would be served the English version instead of the Spanish version.

English to Spanish example

We mainly use hreflang tags to show different language versions of a page, but we can also use it for targeting different locations that use the same language…

Location targeting with hreflang tags

Hreflang tags can also be used to show that you have content targeted toward variations of a single language. This means that you can target your pages even more specifically by extending the hreflang attribute with annotations that indicate which region the content is localized for.

For example

Let’s say that you have 2 versions of the same content in Spanish. But one version is tailored specifically to Spanish speakers in Mexico.

Well then you could add hreflang code to help Google understand which page is for which group of readers. The only change is a country code is added to the language section of each pages hreflang code:

Normally the code for Spanish readers would be just hreflang="es”

But if we want to target Spanish speakers in Spain and Mexico with different pages, then we could add the country code also to differentiate:

Spain hreflang="es-es" versus Mexico hreflang="es-mx".

This is particularly useful to geotarget users in the same new language but you can then also show specific versions to people in different locations to control for variations in currency, shipping, seasonality, and culture etc.

Geotarget locations with hreflang tags

A quick note on hreflang. Hreflang tags are a signal to help Google better understand the context of pages, but it’s not a directive. That means that other SEO factors may override the hreflang attribute and cause a different version of your page to rank higher.

How to create an hreflang tag

There are different tools you can use to create these but honestly, it's as simple as copying the base code and then pasting in the elements that you want to change.

You just add in the language code and country (if you want to geo target) and then the alternate page URL.

For example

Let’s say that we have 2 versions of our article on learning to code for free. The original in English, and a new version in Spanish.

We simply copy the basic hreflang code…

<link rel="alternate" hreflang="x language here" href="https://yourwebsite.com/alternate"/>

And then add in our details for our Spanish version:

<link rel="alternate" hreflang="es" href="zerotomastery.io/es/blog/aprende-a-codificar-gratis"/>

Simple! You can find a list of all of the ISO country language codes here on Wikipedia.

Remember: Hreflang tags are bi-directional

It’s important to remember that hreflang tags are used to show the connection between multiple versions of a page. That’s why it says alternate in the code.

hreflang tags are bidirectional

With this in mind, you need to create not only each version of the code, but you have to also include each version of that code on each version of your page:

For example

If we had a Spanish version of our English language article, then we would include the code to reference both versions, on each version of the page:

<link rel="alternate" hreflang="es" href="zerotomastery.io/es/blog/aprende-a-codificar-gratis"/><link rel="alternate" hreflang="en" href="zerotomastery.io/blog/learn-to-code-for-free"/>

We would simply copy and paste that into both the English and the Spanish versions of the pages HTML, and Google will now be able to show the best version for either Spanish or English readers 😀 🇪🇸 🇬🇧

Likewise, if your Spanish website sold to customers in Spain, France, and Portugal only, the hreflang attributes for your homepage might look like this:

Add multi-language code

The same tags should appear on the French and Portuguese homepages too.

Remember though, it’s still possible that readers in other countries that speak these same languages such as Mexican, French Canadian, or Brazilian could still see your site. (Remember, hreflang is a signal - not a directive).

However, if you localize other aspects of your content and site (start by indicating what currency you use and by showcasing a local address and phone number), you're less likely to have to deal with pesky import/export restrictions on your products.

There’s one final thing to note about hreflang before I show you a real-world example.

If your page serves up content in a variety of languages or just asks a user to select a preferred page, you can use x-default to show that the page is not specifically targeted. That looks like this:

<link rel="alternate" href="https://yourwebsite.com" hreflang="x-default"/>

Here's an example of source code taken from myprotein.com - an online sports nutrition brand.

You can take a look at hreflang on similar websites by holding "ctrl + u" on your Windows device when on an internet browser ("command + u" on Mac) and searching hreflang.

I've taken a screenshot of all of their hreflang alternatives so it's incredibly small....

example hreflang code on website

If we zoom in, you'll see that the language always comes first in the alternatives, and then the country/location:

Example hreflang code

For example, in Hong Kong, the English-language version of the myprotein homepage is shown to users.

English is the language code (en) and Hong Kong is the country code (hk):

hreflang example with geo targeting

You'll also see that some locations have a subdomain, such as de.myprotein.com, whilst others have country code top-level domain (ccTLDs for short), such as lt for Lithuania:

Alternate geo tag options

Don’t overthink it. As long as you reference each version and location, you’ll be fine.

Installing the hreflang code

Hreflang tags can be placed in the on-page markup, the HTTP header, or the sitemap. Just be sure to only use one of those locations and not all of them, as you don’t want multiple versions of the same code everywhere causing issues.

If you’re on Wordpress then you can even get plugins that will allow you to add the code to each page.

hreflang installation plugin

Easy!

Best practices for international SEO and using hreflang tags

So a quick recap before you implement this guide:

#1: Make sure that everything on your website, from your site navigation to your content to your help desk, is in the primary language of the region you're targeting

Everything should be in harmony. It should all be dedicated URLs and not dynamically changed.

#2: Stay away from machine translations

They're still not good enough (yet).

example translation issues with international seo

#3: Don't automatically redirect a user to a different language based on location

It's fine to suggest an alternate language site, but you don't know (without asking) if that English-language searcher in France is an expat, a student of foreign language, or someone who's lost on the internet.

#4: Stay away from using cookies or scripts to show different-language versions of a page

Search engines can't crawl that type of dynamic content, and human users may not be able to see it either. With updates to privacy laws, cookies are being blocked by most browsers as standard also.

#5: Always reference each version inside each version

The hreflang tag on each page should include a reference to itself, as well as to all the pages that serve as alternates for it.

As long as you follow this guide and remember these 5 key points, you should be fine getting started with hreflang tags.

How long does it take to rank with international SEO?

Like all aspects of SEO, it can take 3-6 months before you see any major difference.

If you’re building your different language assets on a subfolder/subdirectory of your current site, and you already have a good Domain Authority, then you should start to see results faster than a brand new domain.

So what are you waiting for? Start ranking and get that international SEO traffic now!

Hopefully by now you see how simple international SEO is. Sure you have to do a little prep and strategy, and you have to recreate assets, but it’s nothing overly complex.

The benefits of getting into a new market can be huge for your business, especially if you’re actively link building and creating high value content. If you want to learn more about this topic, along with other aspects of technical SEO, then be sure to check out our SEO bootcamp.

By the way, if you want to learn both technical and non-technical skills that you need to have a successful career in the tech industry, then come join us as a member of Zero To Mastery.

More from Zero To Mastery

[Full Guide] Learn To Code For Free in 2024 & Get Hired in 5 Months (+ Have Fun Along The Way!) preview
Popular
[Full Guide] Learn To Code For Free in 2024 & Get Hired in 5 Months (+ Have Fun Along The Way!)

Updated for 2024 (including A.I. & ChatGPT). In 2014, I taught myself how to code & got hired in 5 months. This is the step-by-step guide I used. Now 1,000s of other people have also used it to learn to code for free & get hired as web developers.

The 6 Mistakes I Made When Learning To Code (And How To Get Past Them) preview
Popular
The 6 Mistakes I Made When Learning To Code (And How To Get Past Them)

This article will help you save time and avoid the mistakes that a lot of beginners make. If I could go back in time, this is how I would have saved myself from countless hours, days, and months working on the wrong things.

ZTM Career Paths: Your Roadmap to a Successful Career in Tech preview
Popular
ZTM Career Paths: Your Roadmap to a Successful Career in Tech

Whether you’re a beginner or an experienced professional, figuring out the right next step in your career or changing careers altogether can be overwhelming. We created ZTM Career Paths to give you a clear step-by-step roadmap to a successful career.