Launching your website in a second language or country looks like a translation job. For search engines, it is a structure job first.
If Google cannot tell your versions apart, it may show your English page to buyers in France, treat your regional pages as copies of each other, or never find some versions at all. Translation spend is wasted when that happens.
The ten steps below follow the order we work in: choose the market, set the structure, connect the versions, then localize and measure. Tick each step as you finish it. Your progress is saved in this browser, so you can come back to it.
The short answer
International SEO means giving each language or country version of your site its own URL, connecting the versions with hreflang tags, and writing for the way people search in each market. Settle the structure before you translate: the costly problems start with versions Google cannot tell apart, tags that do not point back to each other, and redirects that hide pages.
0 of 0 steps done
Start with step 1. Each step you tick is saved in this browser.
Good start. Steps 2 to 5 decide whether Google can tell your versions apart, so finish them before you translate more pages.
The structure is in place. The last steps decide whether buyers in each market choose you.
All ten done. Recheck your hreflang tags whenever you add or remove a version.
1. Pick markets from evidence, not ambition
Every new market is another website to keep up: pages, links, enquiries in another language and legal pages for another country. Start where people already look for you.
How to check
- In Search Console, open the Performance report and the Countries tab. Which countries already bring impressions and clicks without any local pages?
- In your analytics and CRM, count enquiries and won deals by country.
- Ask sales which markets keep asking for quotes, proposals or calls in their own language.
How to decide
- Pick one or two markets where you can answer an enquiry in the local language and time zone.
- Plan by language as well as by country. One Spanish version can serve several countries when your offer is the same.
- Write down why each market made the list. It keeps the plan honest a year later.
2. Choose one URL structure and keep it
Google's guidance on multi-regional sites compares four ways to give each locale its own address. None of them is a ranking shortcut. Each one trades cost against clarity.
| Option | Example | Strengths | Trade-offs |
|---|---|---|---|
| Country-code domain | example.de | The clearest country signal; server location matters less | Costs more, means separate sites to run, and serves one country each |
| Subdomain | de.example.com | Easy to set up; each can be hosted in a different place | Visitors cannot tell whether "de" means a language or a country |
| Subfolder | example.com/de/ | Easy to set up; one host and one site to maintain | The country is less obvious from the URL, and the sites are harder to split later |
| URL parameter | example.com/?loc=de | None that Google lists | Google marks this option as not recommended |
For a B2B company entering a few markets, subfolders on one domain are usually the simplest to run, because every version shares the same authority and the same codebase. A country-code domain makes sense when you have a local entity, a local team and a budget to run a separate site.
Whatever you choose, treat it as permanent. Moving from one structure to another later is a full migration, with redirects for every URL. If you are ever in that position, follow a plan like our guide on how to redesign a website without losing SEO.
3. Give every language its own URL
Google asks for a different URL for each language version, not one URL whose content switches with cookies or browser settings. The reason is practical: Googlebot usually crawls without stating a preferred language, and its default crawl addresses appear to be in the US. A page that changes by visitor may only ever be seen in one language.
Keep one language per page as well. Google works out a page's language from the visible content, not from code or the URL, so side-by-side translations on one page make the language unclear.
How to check
- Run each version through URL Inspection in Search Console and view the crawled page. Is it in the right language?
- Check that menus, buttons, forms, error messages and the footer are translated, not only the body text.
How to fix
- Move each language to its own URL using the structure from step 2.
- Replace any script that swaps text by browser language with links to each version.
4. Add hreflang to every version
Hreflang tells Google which version of a page to show to which language and region. Google's documentation on localized versions sets out the rules. In plain terms:
- Pick one method. Link tags in the page head, HTTP headers (handy for PDFs) or your XML sitemap all work the same way. Using more than one adds nothing.
- Every version lists every version, itself included. If your English page points to the French page but the French page does not point back, Google ignores that pair.
- Use full URLs, including https:// and the domain.
- Use the right codes. A two-letter language code (ISO 639-1), then optionally a two-letter country code (ISO 3166-1 alpha-2), as in en-GB. A country on its own is not allowed. Script codes work too, as in zh-Hant.
- Avoid codes Google ignores. Region codes such as 419 (es-419) are not supported, and reserved codes such as UK and EU have no effect. For the United Kingdom, use GB.
- Add x-default for everyone else: the page to show when no version matches a visitor's language, often a language selector.
Here is what a complete set looks like for a page with three versions. The same block goes on all three.
<link rel="alternate" hreflang="en" href="https://www.example.com/en/" />
<link rel="alternate" hreflang="en-GB" href="https://www.example.com/en-gb/" />
<link rel="alternate" hreflang="fr" href="https://www.example.com/fr/" />
<link rel="alternate" hreflang="x-default" href="https://www.example.com/" />
Free tool
Hreflang tag builder
Add one row for each language or regional version of a page. The tags update as you type, and the checks flag codes and URLs that Google would ignore.
Add this block to the head of every version listed
Prefer your XML sitemap? Get the sitemap version
Once the tags are live, recheck them after every release that adds or removes a page. A missing return link is one of the common mistakes Google lists, and one forgotten page is enough to break a pair.
5. Point canonical tags at the right page
A canonical tag names the main URL among duplicates. On a multilingual site, each language version should normally name itself. If your French page's canonical points to the English page, you are telling Google the French page is a copy, and it may never appear in French results.
There is one exception. When two versions in the same language are near copies, such as identical German pages on example.de and example.com/de/, Google suggests you pick a preferred version and use canonical together with hreflang.
How to check
- View the source of each version and find the rel="canonical" line. It should be the page's own URL.
- In URL Inspection, compare the canonical you declared with the one Google selected.
How to fix
- Set each template to output its own URL as the canonical.
- Keep canonical and hreflang URLs identical, including the trailing slash.
6. Let visitors choose: no forced redirects
Sending people to a language version based on a guess about their location or browser feels helpful, but Google advises against automatic redirects between language versions. They can stop both visitors and crawlers from reaching every version. A buyer travelling abroad, or using a company VPN, also lands on the wrong page.
Do this instead
- Show a small banner that suggests the local version and lets the visitor stay.
- Add a language switcher with plain links to each version, so crawlers can follow them too.
- Write each language in its own name: Deutsch, Français, Español.
Avoid
- Redirects by IP address or browser language.
- Flags as the only language labels. A flag is a country, not a language.
- Switchers that only work with JavaScript.
7. Research keywords in each market
A translated keyword list is a guess. Buyers in different markets often use different words for the same thing, even in the same language: compare British and American English. Translate your English list word for word and you may target phrases nobody types.
How to research
- Start from your services, not your English keywords.
- Ask native speakers on your team, local partners or customers which words they use.
- Check search demand per country in your keyword tool, then look at what ranks for each term: the format and the questions it answers.
What to deliver
- One keyword map per language, page by page.
- A glossary of approved terms, so every writer and translator uses the same words.
This is where a native-speaking specialist earns their fee. Our website translation and multilingual SEO work starts with exactly this map before anyone translates a page.
8. Localize the page, not just the words
Google lists local addresses, phone numbers, language and currency among the signals it uses to understand who a page is for. Buyers look for the same clues before they trust you with an enquiry.
Check each page for
- Currency, units, and date and number formats
- A phone number in international format, plus support hours in the local time zone
- Case studies, client logos and certifications that buyers in that market recognise (only real ones)
- Privacy notice, cookie banner and terms for that market
Skip
- Geo meta tags such as geo.position: Google ignores them.
- Machine translation published without review by a native speaker.
- Local phone numbers nobody answers.
9. Build local proof and links
Links from other sites in the same country are one of the signals Google mentions for working out a page's target market. They also matter to buyers, who look for names they already know.
Where to start
- Trade associations, chambers of commerce and partner directories in that market
- Local events, webinars or panels where your team can speak
- One genuinely local article each quarter, such as a market report or a regulation explainer
Avoid
- Bought links and link exchanges
- Mass directory submissions with no audience
- A Business Profile without a real address in that country
10. Measure each market on its own
Totals hide problems. Overall traffic can grow while one market quietly falls, so give every market its own numbers.
In Search Console's Performance report you can filter and compare by country, page and query, which is enough to watch each version. Do not look for a country targeting setting: Google retired the International Targeting report and no longer supports country targeting in Search Console. Hreflang is still supported.
Your monthly review
- Impressions and clicks per country and per language folder
- Top queries in each language: are they the terms from your keyword map?
- Indexed pages per version, and any new hreflang or canonical errors
Tie it to revenue
- Record each enquiry's market in your CRM.
- Compare qualified enquiries and pipeline per market, not just traffic.
