37

I have a site that has 2 languages: English and Swedish.

What I want is, if someone Googles the site in Sweden, it should show the Swedish results. That is, I want Google in Sweden (google.se) to crawl the Swedish version of the site. For any other place, I would want the English version to be crawled.

I read the following:
http://googlewebmastercentral.blogspot.se/2010/03/working-with-multilingual-websites.html

It says I should have 2 separate pages for the website. Is there a way such that I don't need to change anything in the url?

I mean simply, if anyone on google.se searches for example.com, it should show the Swedish result, anywhere else, English.

3 Answers 3

60

Here is my full answer about how you should structure your URLs for multilingual sites.

There are many acceptable ways to structure your site for both SEO and internationalization. Each have advantages and disadvantages.

Top Level Domains

Buy the same domain name at multiple top level country domains like example.com, example.es and example.de.

Advantages

  • Fully supported by Google. You can add the sites to Google Webmaster Tools where there are options to tell Google about how they are targeted.
  • Often preferred by users who tend to like content published on the TLD for their country
  • The domain name itself can be localized. Many international users may react badly to English words or an English sounding domain name. This can be especially important for languages that do not use a Latin alphabet.
  • Supports localization by country. You can have separate sites like example.co.uk and example.com.au targeted at audiences in different countries. The sites may have duplicate content with slight spelling differences and still rank well. In fact, multiple well localized sites in the same language may rank better than a single site in that language.
  • Hosting can be localized by pointing DNS to a web server in the country being targeted.

Disadvantages

  • Expensive and time consuming to buy many domains. Especially if you have to deal with squatters.
  • Cookies cannot be shared across multiple locales, meaning that users have to log in separately to each site.
  • No good option for localizing only by language since many languages have multiple countries and no country TLD may be the language code. Even in cases where the TLD does match the language code like es, search engines may assume that the site is only appropriate for users from Spain, not for all Spanish speakers.

Sub-domains

Buy a single domain, and use sub-domains such as en.example.com, and es.example.com

Advantages

  • Fully supported by Google.
  • Supports localization by country or by language.
  • Hosting can be localized by pointing DNS to a web server located close to users.
  • Easy and cheap to implement compared to buying multiple domains.
  • Cookies can be shared across all locales, enabling single sign on for a more seamless user experience.

Disadvantages

  • No opportunity to localize the domain name itself
  • May look less local to users compared to a top level domain.

Sub-directories

Buy a single domain, and use sub-directories such as example.com/en/, and example.com/es/

Advantages and Disadvantages

  • The same as sub-domains, except that there is one DNS entry which precludes hosting your site in multiple countries for different locales.

Techniques that are NOT recommended

  • File Names: Using different file names such as index_en.html and index_de.html. This technique is not fully supported by Google. For example, there is no way to set targeting in webmaster tools.
  • URL Parameters: Using URL parameters such as lang=en. It is not recommended for the same reason that different file names are not recommended.
  • Accept Language Header: Automatically switching the language based on the Accept-Language header.
    • Many users do not have this header set correctly. This is especially true for users traveling abroad that may be using a friend's computer, or an internet cafe. It is also often true for international users that install an English web browser and know enough English to be get around, but would prefer content in a different language.
    • Google just announced that Googlebot will send the Accept-Language header and crawl from different geographic locations. However, Google still recommends that you have separate URLs for content in different languages.
    • You may use the Accept-Language header to suggest that users might prefer a different version of the site by displaying a message when the site they are visiting does not match the Accept-Language header.
  • Geographic IP Addresses: Automatically switching the language based where the IP address is geographically located.

On-page Markup

When supporting multiple languages, you should clearly mark up with language meta-data.

Use the lang attribute in the html tag:

<html lang="en">

Use rel alternate links to the same page in other languages as suggested by Google:

<link rel="alternate" hreflang="es" href="http://www.example.com/" />
<link rel="alternate" hreflang="es-ES" href="http://es-es.example.com/" />
<link rel="alternate" hreflang="es-MX" href="http://es-mx.example.com/" /> 
<link rel="alternate" hreflang="en" href="http://en.example.com/" />

Alternately, this information can be put into sitemap files.

Tell Google About Your Site

You should add each language (or locale) of your site to Google Webmaster Tools. This can be done for top level domains, for sub- domains, or for sub-directories.

If your site is targeted by country, you should use webmaster tools to set the site targeting. Navigate to "Configuration" -> "Settings" -> "Geographic target" and choose to target the correct country from the drop down list.

9
  • upvoted, because it's well written and the post updated few days ago! I notice I got my webpage indexed by google in 2 different locales which makes me more comfortable of not having a directory language content neither domain or subdomain approach. Commented Feb 8, 2015 at 0:20
  • 1
    I disagreed on the Techniques that are NOT recommended - Using URL parameters such as lang=en, if you were noticed, this page support.google.com/webmasters/answer/182192?hl=en Google are using this method exactly, aren't they? And for years they have not do anything on their so called best practice.
    – Peter
    Commented May 24, 2015 at 15:58
  • Google generally does not have to optimize their own content for rankings. Parameters can be used, but I don't recommend them. You would want to use alt lang meta tags if you do decide to use them because you won't be able to rely on settings in Google webmaster tools. Commented May 24, 2015 at 17:04
  • what do you think of putting Standard English content at example.com/content and then other languages at example.com/fr/content
    – azerafati
    Commented May 14, 2016 at 5:11
  • 1
    @azerafati It makes it difficult to separate out the English site in Analytics and makes it impossible in Google Search Console. In search console the base site will always be a rollup of all the languages. Commented May 14, 2016 at 10:10
44
+50

Here's Google's official documentation on multi-lingual sites. Which has substantially the same information as the blogspot entry you link to. They write:

Keep the content for each language on separate URLs.

and then give advice about what they consider best UX practices.

Given that, if you want an optimal Google experience, you should follow their guidelines and have language-specific urls. Google searches are certainly language-sensitive, and should return the appropriate version of the site when people search for it.

If you're set on having a single URL, how are you intending to set the language? Based on language headers? Javascript detection? Cookies? Those are all potentially problematic for SEO, and since Google doesn't think they're good methods, they don't offer advice on how to optimize SEO using them.

Your best bet is probably to go with Google's advice and have multiple URLs.

11

UPDATE IN 2015:

Google now supports Crawling and indexing of locale-adaptive pages!

Cited from the linked post, they support:

...

  • Geo-distributed crawling where Googlebot would start to use IP addresses that appear to be coming from outside the USA, in addition to the current IP addresses that appear to be from the USA that Googlebot currently uses.
  • Language-dependent crawling where Googlebot would start to crawl with an Accept-Language HTTP header in the request.

...

Although they still recommend using separate URLs.

1
  • You probably meant this link when you said about separate URLs.
    – x-yuri
    Commented Feb 25, 2021 at 13:39

Not the answer you're looking for? Browse other questions tagged or ask your own question.