harshtalreja.com · hreflang consultant

Hreflang Consultant: I find why Google serves the wrong language or country version of your pages, fix it behind a reversible rollout, and verify it on the live SERP.

Google's hreflang report: dead since 202267% of setups have errors (Ahrefs)reversible · sitemap firstfrom $285

Senior technical SEO consultant specializing in international SEO. When Google shows the wrong language or region version of your pages, or treats your localized URLs as competing duplicates, I find the exact cause, fix it reversibly (sitemap first, never a rebuild), and verify it where it counts: the URL Google actually serves each locale. Below is also one of the most thorough, honestly sourced guides you will find for diagnosing and fixing hreflang yourself, on WordPress, Shopify, Next.js, or custom code.

By Harsh Talreja, senior technical SEO consultant (LinkedIn). I build SEO tools, including a Hreflang Checker that flags broken return tags, canonical conflicts, and invalid codes across a site, and I work the technical layer for international B2B SaaS and content sites where rankings move revenue.

TL;DR: Hreflang is a signal Google may use, not a directive, and not a ranking boost. It tells Google which localized URL to show which searcher. Most hreflang failures are systematic, not random: one template error silently breaks reciprocity across thousands of URLs. The dominant causes are missing return tags, a canonical that fights the hreflang, and invalid language or region codes. Google retired its only first-party hreflang report (International Targeting) in 2022, so you now diagnose with a crawler and confirm in the field by the URL Google actually serves. Fix the canonical first, deploy hreflang reversibly by sitemap, then verify per locale. This page shows exactly how, per platform, with the checks and risks for each fix.

Find your hreflang errors, free →

Send me your URL and the locales you run. Before we talk, I will crawl a sample and tell you the single cluster most likely being shown to the wrong users. No pitch, no obligation.


The Cluster Method: how I find what is actually breaking your hreflang

Most hreflang problems are not random. They are systematic: one wrong line in a template, one canonical pointing the wrong way, and the same fault repeats across every localized URL the template renders. The job is not to hand you a checklist of forty tags. It is to find the one systematic fault, prove how far it reaches, and fix it without splitting your rankings. The method is four steps, and it is the spine of every engagement and of this guide.

  1. Isolate (field first). Start from the URL Google actually serves each locale, not from one Lighthouse-style tag check. Find the cluster or template that is being shown to the wrong users, and the one fault driving it.
  2. Quantify the breakage. Prove how far the fault reaches. With m language versions across n templates, a single missing return tag can break reciprocity on n URLs at once. Name the number.
  3. Fix reversibly, canonical first. Correct the self-canonical before the hreflang, because a canonical conflict silently kills a cluster. Then deploy hreflang additively by XML sitemap, on a sample set first. Never a rebuild.
  4. Verify in the field. Confirm with Search Console's URL Inspection (the Google-selected canonical) and the live SERP per locale. A clean crawl is not a field win.
Reciprocity: every version points to every other, and itself no return link this pair gets ignored en-gb+ links to self de-de+ links to self fr-fr+ links to self "If two pages don't both point to each other, the tags will be ignored." (Google)
Hreflang reciprocity: each localized URL must list every version including itself; a missing return link makes Google ignore that pair
The Cluster Method 1 Isolate (field first) Start from the URL Google serves each locale. Find the one cluster being shown to the wrong users. 2 Quantify the breakage How far the fault reaches. m versions across n templates. Name it with a number. 3 Fix reversibly, canonical first Self-canonical, then hreflang by sitemap, on a sample first. Never a rebuild. 4 Verify in the field URL Inspection's Google-selected canonical, plus the live SERP per locale. A clean crawl is not a field win.
The Cluster Method: isolate, quantify the breakage, fix reversibly canonical first, verify in the field

I built a free Hreflang Checker

Paste a domain and it crawls the hreflang clusters and flags the faults that actually break them: missing return tags, self-reference gaps, canonical conflicts, invalid language or region codes, and targets that are noindexed or redirecting. It is the same first pass I run before any engagement.

Get your broken clusters →[TODO: point this button at the live Hreflang Checker URL once the tool is deployed.]

Work with me

I find the cluster Google is getting wrong, fix it reversibly, and prove it on the URL Google actually serves your users. I fix the canonical before the hreflang, deploy additively by sitemap so a regression is a one-step rollback, and confirm the result in the field, not just in a crawl.

My promise: reversible, sitemap first, no rebuild. I deploy hreflang additively (XML sitemap first, proof of concept on a sample set), so a regression is a one-step undo, not a crisis. I fix the self-canonical before the hreflang, because a canonical conflict silently kills a cluster. I confirm each fix in a crawl and then in the field, by the URL Google serves each locale. What I will not promise is a ranking jump, because hreflang does not give one. It serves the right version to the right user. That is the win, and it is the honest one.

EngagementWhat it isStarts at
Hreflang diagnosticFull crawl plus field check, the exact broken clusters named, prioritized fix plan$285
Implementation sprintDiagnosis plus implemented, reversible hreflang (sitemap first), codes and canonicals fixed, validatedfrom $690
Retained monitoringOngoing crawl and field watch, alerts on regressions from a deploy or a new locale$270 / mo

The sprint scales with the work that actually drives it: locale count times template count, the same n by m that decides how many return-tag relationships have to stay in sync. Launch pricing, roughly 40 percent under the going rate for comparable work, while I publish more named results. No lock-in. For context, almost no hreflang service page publishes a price at all, which is the first thing I would fix about this market.

Find your hreflang errors, free →

Prefer to do it yourself? The complete, current guide for diagnosing and fixing hreflang, per platform, is below.


What hreflang really does (and what it does not)

Hreflang tells Google that several URLs are localized versions of the same content, so it can show the right one to the right searcher. In Google's words, it helps Search "point users to the most appropriate version of your page by language or region." That is the whole job. Two things follow that most pages get wrong:

Disclaimer, stated once and meant throughout: hreflang is for serving the correct localized URL and reducing same-language cross-region cannibalization. It is not a ranking lever, it is not the fix for a duplicate-content problem (there is no penalty for legitimate localized pages, and consolidation is the canonical tag's job, not hreflang's), and a perfect hreflang setup will not lift a page that does not already rank. Fix it so the right users land on the right page. That is a real user and revenue win on its own.

What a broken cluster actually costs. Hreflang will not raise your rankings, but a broken one quietly taxes the international traffic you already paid for. When the cluster fails, Google falls back to guessing, and every failure mode costs money:

None of this shows up as a ranking drop, which is why it goes unnoticed. It shows up as international pages that get impressions but do not convert. The gap between the markets you paid to enter and the version Google actually serves them is exactly what fixing hreflang recovers.


The three implementation methods (pick one)

The one movePick a single method and use it consistently. Google treats all three as equivalent, and using more than one gives no Search benefit while multiplying the ways it can drift out of sync. For most multi-language sites at any real scale, that one method is the XML sitemap.

There are three ways to declare hreflang, and Google states they are equivalent. Choose by your scale and what you can maintain.

MethodBest forThe trade-off
HTML <link> in <head>A few versions on a platform whose head is easy to templateEvery page carries the full cluster, so the tags add weight and every version must be edited when a locale is added. Breaks down at scale.
XML sitemap (xhtml:link)Large or multi-language sites. The recommended method at scale.Centralized in one file, out of the page HTML, easy to audit and update in bulk. You must list a full block for every URL, and a hreflang-annotated sitemap hits the 50MB byte cap long before the 50,000-URL cap.
HTTP Link headerNon-HTML files such as PDFsThe only option where there is no head to edit. Harder to see and to validate, so rarely the right choice for HTML pages.

The scale math nobody shows you. With m versions, every page must carry m hreflang entries, one per version including itself. Across n templated URLs, that is n times m annotations to keep reciprocal. Ten locales on ten thousand URLs is a hundred thousand tags that all have to agree. Add one language and every other version has to be updated or its return links break. This is why the in-head method quietly fails on big sites and the sitemap method wins: one file to keep in sync instead of every page.

Absolute URLs, always. Google is explicit: alternate URLs "must be fully-qualified, including the transport method (http/https)." Use https://example.com/foo, never //example.com/foo or /foo.


Get the language and region codes right

The one moveLanguage first, region optional, and only real ISO codes. The first value is an ISO 639-1 language. An optional second value is an ISO 3166-1 Alpha-2 region. You cannot specify a region on its own, and the most common mistakes are codes that look right but are reserved or mean something else.

The format is a language code, optionally followed by a region code. Google only accepts language codes from ISO 639-1 and region codes from ISO 3166-1 Alpha-2. The classic mistakes:


The errors that silently kill clusters

These are the faults I find most often, in the order I check them. Note that almost none of them throw a visible error. The cluster just stops working, and Google falls back to guessing.

Fix these first (each with what to check and the risk)

Then tidy these

Here is the same cluster wrong and right, the in-head method, three locales:

// BROKEN: en-uk is reserved (ignored), missing self-reference, relative URL
<link rel="alternate" hreflang="en-uk" href="https://example.com/uk/" />
<link rel="alternate" hreflang="de-de" href="/de/" />

// FIXED: real ISO codes, absolute URLs, self-reference + x-default, all reciprocal
<link rel="alternate" hreflang="en-gb" href="https://example.com/uk/" />
<link rel="alternate" hreflang="de-de" href="https://example.com/de/" />
<link rel="alternate" hreflang="en-gb" href="https://example.com/uk/" /> // self, on the en-gb page
<link rel="alternate" hreflang="x-default" href="https://example.com/" />

Every other version (de-de, etc.) must carry the matching full set, including its own self-reference. That reciprocity is what makes the cluster valid.


By platform


How to audit hreflang now the Search Console report is gone

The one moveThere is no first-party Google hreflang report anymore. Crawl for the syntax and reciprocity (the lab result), then confirm in the field by the URL Google actually serves. A clean crawl proves the tags are valid, not that Google is serving the right version.

Google removed the Search Console International Targeting report, the only first-party place that surfaced hreflang errors, in 2022, and did not replace it. Anyone still telling you to "open the International Targeting report" is describing a tool that has not existed for years. Here is how diagnosis actually works now.

ToolLab or FieldUse it for
Screaming Frog, hreflang tabLab (crawl)The workhorse. Filters for Missing Return Links, Inconsistent Language and Region Return Links, Non-Canonical Return Links, Noindex Return Links, Missing Self Reference, Incorrect Language and Region Codes, Missing X-Default, and tags Outside <head>.
Ahrefs / Sitebulb / OnCrawl Site AuditLab (crawl)Managed, at-scale checks: missing reciprocal hreflang, invalid codes, hreflang to a broken page, multiple pages for one language.
Merkle hreflang Tags Testing ToolLabSingle-URL validator that reads HTML, HTTP headers, and sitemap implementations. Good for spot checks.
Search Console, URL InspectionFieldThe verdict. Shows the Google-selected canonical, which reveals how Google actually clustered and canonicalized the page.
The live SERP per localeFieldCheck what URL a US, UK, or DE searcher is actually served. This is the only true test that hreflang is doing its job.

Why both: a crawler proves your tags are syntactically valid and reciprocal. It cannot prove Google is honoring them, because hreflang is a signal, not a directive. Only the field check (the Google-selected canonical and the served SERP) tells you the user is actually landing on the right version.


Does hreflang affect rankings? The honest answer

No. Hreflang does not raise your rankings, and any consultant who says it does is selling something Google says does not exist. Google's Gary Illyes put it plainly in a 2019 AMA: "you will NOT receive a ranking benefit per se," and "what you will receive is more targeted traffic." John Mueller has said the same, that hreflang "does not change ranking."

What it actually does is decide which version is shown. Illyes described the mechanism: Google retrieves the page with the stronger signals, then, if it sees a better sibling for that user's language or region, serves the sibling instead. Ranking is decided on the strongest page's own merits; hreflang only swaps the displayed URL. So the real payoff is:

One claim to be careful with: some popular guides say hreflang "shares" or "consolidates" ranking signals across a cluster. Google's own representatives describe the opposite, ranking on the strongest page's signals and swapping the served URL, so I do not make that claim. The defensible, honest line is the one above: hreflang routes the right version to the right user, it does not pool authority.


What you get when I do it (and what you keep)

As promised up top: every change is reversible, no rebuild, and I confirm the result in the field, not just in a crawl. The one thing I will not promise is a ranking jump, because hreflang does not give one.


Do you even need a consultant? An honest guide

If anyone guarantees a ranking jump from hreflang, walk away. That is not an honest promise.


Your screen recording goes here
A live hreflang teardown (the Cluster Method on a real site).

What I found auditing hreflang consultant pages on Google

I read the hreflang consultant and service pages ranking on Google. Two patterns stood out, and both are reasons to be careful who you hire.

First, stale audits. A widely cited hreflang guide, last updated in March 2025, still tells you to open the International Targeting report in Google Search Console. Google removed that report in 2022. If a 2025 page is still pointing you at a tool that has not existed for three years, ask what else on it is out of date.

Second, the ranking overclaim. Several service pages sell hreflang as a way to "boost your rankings." It is not. Google has said plainly you will not receive a ranking benefit per se, and that hreflang does not change ranking. What it changes is which version is shown. A page that sells you a ranking lift from hreflang is selling something Google says does not exist.

Almost none of them publish a price, show a real before-and-after, or promise the work is reversible. That is the whole reason this page does all three.

Your real before/after goes here
A genuine field result: wrong-locale URL served, then the correct one, with the Search Console or SERP screenshot.
I will not fabricate this. It goes live when there is a real, anonymized client result to show.

Frequently asked questions

What does a hreflang consultant do?

A hreflang consultant diagnoses why Google is serving the wrong language or region version of your pages, or treating your localized URLs as competing duplicates, then implements and verifies the fix. The good ones start from the URL Google actually serves, name the specific systematic fault (usually a canonical conflict, a missing return tag, or a bad code), and ship reversible changes rather than a generic checklist.

Why is Google showing the wrong country version of my page in search?

Usually because the hreflang cluster is broken, so Google is falling back to its own guess. The common causes are a canonical that points the localized page at a different version, a missing return link so the annotation is ignored, an invalid code such as en-uk, or a target that is noindexed or redirecting. Until the cluster is valid, Google decides for you.

Do I need hreflang if it is the same language in different countries, like en-US and en-GB?

Often yes. Even with near-identical content, hreflang stops a UK searcher being shown your dollar-priced US page and tells Google these regional pages are legitimate alternates, not duplicates. It does not consolidate them (that is the canonical tag's job), and each regional page should self-canonicalize.

Does hreflang help my rankings?

No. It is a signal Google may use, not a ranking factor. Google has said you do not receive a ranking benefit from it. What you get is the right version shown to the right user and less same-language cannibalization, which is a real traffic and revenue win, just not a ranking one.

How do I audit hreflang now that the Search Console International Targeting report is gone?

Google removed that report in 2022 and did not replace it, so there is no first-party hreflang validator anymore. Crawl with Screaming Frog (or Ahrefs, Sitebulb) for reciprocity, codes, and canonicals, spot-check single URLs with the Merkle tester, then confirm in the field with URL Inspection's Google-selected canonical and the live SERP per locale.

What is the most common hreflang mistake?

At scale, missing return links: one template missing one locale breaks reciprocity across thousands of URLs, and Google ignores the unpaired annotations. The most damaging single mistake is a canonical conflict, where the localized page canonicalizes to a different version, because it silently kills the whole cluster with no error shown.

HTML tags or XML sitemap, which should I use?

Google treats them as equivalent, so pick by scale. A handful of locales on an easily-templated site can use in-head tags. Anything larger should use the XML sitemap method, which keeps the annotations in one auditable file instead of on every page, where they drift out of sync. Do not use both.

Can you guarantee Google will show the right version?

No honest consultant guarantees that, because hreflang is a signal Google may use, not a directive it must obey. What I can do is make the cluster valid and reciprocal, fix the canonicals underneath it, and show you in the field that Google is serving the right version. If your setup cannot realistically work (for example, the locales are not genuinely distinct), I will tell you that before you spend money.


Sources

Every fact on this page is from Google's own documentation or a named, on-the-record source, not opinion:


Find your broken cluster. Book a free hreflang review.

Send me your URL and the locales you run. Before we talk, I will crawl a sample and find the cluster most likely being shown to the wrong users. The call is the verdict, not discovery. You leave knowing the one thing to fix, even if you never hire me.

Book a free hreflang review →

Find your hreflang errors, free →