International SEO Checklist: Hreflang, URL Structure and Audit Steps
An international SEO checklist for agencies: choosing a URL structure, implementing hreflang correctly, canonicals, localised content and how to audit it.
International SEO makes sure search engines show the right version of a website to people in each country and language. Get it wrong and the US page ranks in the UK, the German page never ranks in Germany, or Google treats translated pages as duplicates.
This checklist covers the decisions and checks we use in an international SEO audit: URL structure, hreflang, canonicals, localised content and the most common errors. It works for multilingual sites and for one-language sites targeting several countries.
International SEO checklist
| Area | Check |
|---|---|
| Targeting | Decide which countries, languages or both each version is for |
| URL structure | One consistent structure: ccTLD, subdomain or subfolder |
| Hreflang | Tags on every version, pointing to all versions, with return links |
| Canonicals | Each version canonical to itself |
| x-default | Set for unmatched visitors |
| Content | Translated and localised, not machine copies |
| Redirects | No automatic redirects based on IP that block Googlebot |
| Search Console | Each version verified and monitored |
| Local signals | Local currency, contact details, links and reviews |
Step 1: Choose a URL structure for international SEO
| Option | Example | Pros | Cons |
|---|---|---|---|
| Country domains (ccTLD) | example.de | Clearest country signal | Each domain builds authority separately |
| Subdomains | de.example.com | Easy to host separately | Partly separate in authority |
| Subfolders | example.com/de/ | Shares the main domain’s authority, easiest to manage | Weaker country signal on its own |
Most businesses do well with subfolders plus hreflang. Whatever you choose, use one structure consistently.
Step 2: Implement hreflang correctly
Hreflang tells Google which language and country each page targets, and which alternatives exist. Rules that cause most hreflang errors when missed:
- Use valid codes. Language in ISO 639-1 (en, de, fr), optional country in ISO 3166-1 Alpha-2 (en-GB, en-US). “en-UK” is a common mistake; the code is en-GB.
- Every version lists every version, including itself.
- Return links are required. If page A points to page B, page B must point back to A.
- Point to indexable, canonical URLs that return a 200 status.
- Add x-default for visitors who don’t match any version.
Hreflang can be added in the HTML head, in HTTP headers (for PDFs) or in the XML sitemap. For large sites, the sitemap is usually easiest to maintain.
Hreflang example
For a page with UK English, US English and German versions, every version carries the same set of tags in its head:
<link rel="alternate" hreflang="en-gb" href="https://example.com/uk/pricing/" />
<link rel="alternate" hreflang="en-us" href="https://example.com/us/pricing/" />
<link rel="alternate" hreflang="de-de" href="https://example.com/de/preise/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/pricing/" />
Each version also has a canonical pointing to itself. If one version is missing a tag, or links to a redirected URL, Google may ignore the set.
Step 3: Get hreflang and canonical tags working together
Each language or country version should have a self-referencing canonical, plus hreflang tags listing all versions. A frequent mistake is pointing every version’s canonical to the main English page. That tells Google the other versions are duplicates, and the hreflang is ignored.
Step 4: Localise content, don’t just translate it
- Translate with people who know the market, not raw machine output
- Use local spelling, currency, units and examples
- Research keywords per market; direct translations often miss how people search
- Localise contact details, addresses and trust signals
Step 5: Avoid automatic redirects by location
Redirecting visitors by IP address can stop Googlebot, which mostly crawls from the US, from ever seeing other versions. Use a clear banner or language selector instead, and let users choose.
Step 6: Check crawling and indexing for each version
Make sure every version can be crawled and indexed: no accidental noindex, robots.txt blocks or orphaned language folders. Our guide to crawlability and indexability covers the checks, and the wider site-level list is in our technical SEO audit checklist.
Common international SEO mistakes
- Invalid language or country codes, such as en-UK
- Missing return links between versions
- Canonicals pointing every version to one page
- Hreflang pointing to redirected or noindexed URLs
- Machine-translated pages with no local keyword research
- IP-based redirects that hide versions from Google
International SEO audit: how to check a site
- Crawl the site and extract every hreflang tag and canonical
- Check codes, return links and status codes for every URL
- Compare indexed pages per version in Search Console
- Search from each target country and check which version ranks
- Review content quality and keywords per market
Problems found in an audit often need developer time to fix, especially hreflang across large sites. Plan those fixes into the client’s roadmap, with the highest-traffic markets first.