Short answer: When the wrong language or country version of a page ranks, the cause is usually one of five things: broken or missing hreflang, canonical tags that point across versions, versions that are too similar, weak internal links to the local version, or redirects and IP-based behaviour that hide versions from crawlers. Confirm the problem with local search data first, then check each cause in that order, because the first two are the most common and the easiest to fix.
What “wrong version ranking” looks like
On multilingual and multi-regional sites the symptom shows up in a few familiar ways:
- Searchers in Germany see your English page instead of the German one.
- Your en-GB page ranks in the United States, with pound prices and UK delivery information.
- Your Spanish page for Spain ranks in Mexico, although you have a Mexican version.
- Search Console for one country shows impressions mostly for another country’s URLs.
The business impact is real even if rankings look fine: the searcher lands on the wrong currency, wrong shipping terms or the wrong language, and often leaves. The goal is not only to rank, but to rank with the right version for each market.
Step 1: confirm the problem with data, not one search
Before changing anything, make sure the problem is real and not a side effect of how you tested. Personal searches are unreliable: results depend on your location, language settings, search history and the Google domain you use.
Better evidence comes from:
- Search Console Performance report, filtered by country and by page. If the US filter shows most clicks going to
/uk/URLs, the problem is confirmed. Our guide to Search Console for international sites shows which reports to use. - Analytics landing pages by visitor country. Many visits from one country landing on another country’s pages is a strong signal.
- Location-specific rank tracking, if you use a rank tracker that can set country and language.
Also check whether the “wrong” version is really wrong. If you have no Mexican version, your Spanish page for Spain ranking in Mexico is the best available match, and x-default or a general Spanish version may be the right answer rather than a fix. Only treat it as a problem when a better-matching version exists and is being ignored.
Note which pages and which markets are affected. A problem on every page points to a sitewide cause such as a template or plugin. A problem on a few pages points to page-level causes such as missing translations or content differences.
Step 2: check hreflang on the affected pages
hreflang is the main signal that tells search engines which version belongs to which language and country. When it is broken, search engines fall back to their own judgement, which often picks the strongest version, typically the original English one.
Open the affected page and the version that should rank, and check:
- Both pages carry hreflang annotations listing all versions, including themselves.
- Each page links back to the other. One-way annotations may be ignored.
- The codes are valid: language first (ISO 639-1), then optional country (ISO 3166-1), for example
de-AToren-GB, neveren-UK. - Every URL in the cluster returns status 200 directly, without redirects.
- No annotated URL is noindex or blocked in robots.txt.
Our complete list of hreflang errors and how to fix each one covers the less obvious cases, and the guide on how to test hreflang explains how to check a whole site rather than one page.
Step 3: check canonical tags
A canonical tag tells search engines which URL is the preferred version of a page. If the German page has a canonical pointing to the English page, you are effectively asking search engines to ignore the German page and show the English one. hreflang cannot override that.
The rule is simple: each language or country version should have a self-referencing canonical, and hreflang connects the versions. Canonicals must never point across languages or countries. The typical causes of cross-version canonicals are:
- A translation plugin that copies the canonical from the original page.
- Country versions in the same language that were “deduplicated” with canonicals by mistake.
- Templates that build the canonical from the default language URL.
Also check which canonical Google actually chose, using the URL Inspection tool. If the declared canonical is correct but Google selected another version, the pages are probably too similar, which leads to the next step. The details of combining the two tags are in canonical tags and hreflang together.
Step 4: check whether the versions are too similar
Search engines handle identical content in different languages well, because translation makes the pages different. The difficult case is the same language for several countries: en-US, en-GB and en-AU, or es-ES and es-MX. If these pages are word-for-word identical, search engines may treat them as duplicates, pick one as canonical and show it everywhere.
hreflang helps here, but it works much better when the pages also differ in ways that matter to local users:
- Currency and prices, taxes and delivery information.
- Local spelling and vocabulary (“colour” or “color”, “ordenador” or “computadora”).
- Local phone numbers, addresses and legal information.
- Local examples, case references, payment methods and units.
Our guide to targeting several countries in the same language goes into detail. If you cannot make country versions meaningfully different, ask yourself whether you need separate versions at all.
Step 5: check internal links and signals
Even with correct tags, the version with more internal links, more external links and more history often has more strength. When a local page is barely linked, the stronger original can win.
- Make sure each language version has its own navigation, linking to pages in the same language and country.
- Check that the language switcher links to the equivalent page, not to the home page of the other version.
- Include each version in the XML sitemap, ideally with its hreflang alternates.
- Build local signals over time: local links, local reviews and a local address where you have one. Our article on local trust signals for country versions lists what helps.
Step 6: check redirects and IP-based behaviour
Automatic redirects based on IP address or browser language can hide versions from search engines. Googlebot mostly crawls from US IP addresses. If every visitor from the US is redirected to the US version, Googlebot may never see the UK or German versions at all, and it can only rank what it can crawl.
Check whether the site redirects by location or language, and whether it changes content on the same URL depending on the visitor. The safer pattern is to let every URL be reachable by everyone and show a dismissible banner that suggests the local version. Test this yourself by fetching the page with a tool or VPN from several countries, with cookies cleared, and compare the final URL and content. If the same URL returns different content per country, search engines see only one of those variants. The reasons are explained in why automatic language redirects hurt international SEO.
Quick diagnosis table
| Symptom | Most likely cause | First check |
|---|---|---|
| Original language ranks everywhere | Missing or broken hreflang | Return links and valid codes |
| Local page not indexed at all | Cross-version canonical or redirect | Canonical tag and URL Inspection |
| Wrong country, same language | Near-duplicate versions | Content differences and Google-selected canonical |
| Only some pages affected | Missing translations or weak links | hreflang cluster and internal links for those pages |
| Local versions never crawled | IP or language redirects | Fetch pages from different locations and without cookies |
How an audit speeds up the diagnosis
Checking hreflang, canonicals and status codes page by page is slow on a site with several languages. Site SEO AI Audit crawls the whole site and reports language issues such as missing hreflang return links, broken language versions, x-default and lang attribute problems, alongside canonical and redirect issues, each weighted by how many pages it affects. That shows quickly whether you are dealing with a sitewide template problem or a few pages. Start with a free audit to see where your language versions stand.
Related reading
- hreflang return links: how to fix “no return tags” errors
- How to target a specific country in Google search today
- International SEO audit checklist for multilingual sites
The bottom line
When the wrong country or language version ranks, confirm it with country-filtered search data, then work through the causes in order: hreflang, canonicals, similarity between versions, internal links and redirects. Most cases trace back to one template or plugin setting, so one fix often repairs every page. After the fix, allow a few weeks for recrawling and check the country reports again.
GYIK
How long does it take for the right version to rank after fixing hreflang?
It depends on how often search engines crawl the affected pages. Frequently crawled pages can change within days; others can take several weeks. Requesting indexing for key URLs and keeping sitemaps current helps.
Can hreflang override a canonical tag?
No. If a page’s canonical points to another URL, search engines treat it as a duplicate of that URL, and hreflang cannot bring it back. Each version needs a self-referencing canonical.
Why does my US page rank in the UK even with hreflang?
hreflang is a strong hint, not a command. If the UK page is nearly identical to the US page, weakly linked or not indexed, search engines may still prefer the US version. Make the UK version genuinely local and well linked.
Should I block other countries from seeing a version?
No. Blocking or redirecting by location can stop search engines from crawling versions at all. Keep every URL accessible and suggest the local version with a banner instead.
Does x-default fix wrong country rankings?
Not directly. x-default tells search engines which page to show when no version matches the searcher. It helps unmatched markets but does not fix broken annotations or canonicals between specific versions.


