Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

A hreflang checker can identify missing alternate links, broken reciprocal relationships, and malformed language or region codes—but a clean report does not prove Google has indexed or selected the intended regional page. Use a checker to audit the annotations your site publishes, then confirm that every localized URL has a consistent set of fully qualified, reciprocal links.

What a hreflang checker can—and cannot—tell you

Hreflang annotations tell search engines which URLs are localized versions of a page. Google says they can help Search connect users with an appropriate language or regional version. They do not guarantee that Google will show a particular URL: Google determines page language from visible content, not from hreflang annotations or the HTML lang attribute. See Google’s guidance on managing multilingual and multi-regional sites.

A checker reports what it can retrieve and interpret. It may find implementation errors, but it cannot establish that Google has crawled, indexed, or chosen a locale URL. Google notes that third-party debugging tools are not maintained or checked by Google; treat their output as diagnostics, not a Google verdict. Google’s localized-versions documentation describes the annotations and common issues.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What to check in a hreflang audit

1. List every intended locale URL

Start with the pages that are genuinely equivalent versions of one another. Record the intended language or language-region for each URL and decide whether there is a fallback page for visitors whose language is not explicitly represented. A checker cannot reliably validate a group if the intended members are missing from its input.

2. Check self-references and matching alternate sets

Each page in the group should identify itself as well as every other localized version. The alternate-link set should be the same on every page in that group. Google’s documentation puts it plainly: “Each language version must list itself as well as all other language versions.”

3. Test reciprocal return links

If page A names page B as an alternate, page B needs to name page A. A missing return link leaves the relationship incomplete. Check the relationship in both directions rather than assuming that one page’s outbound annotations are sufficient.

4. Validate language and region values

Use a language code in ISO 639-1 format, optionally followed by a region code in ISO 3166-1 Alpha 2 format. A region by itself is not valid. Google says reserved codes including EU, UN, and UK have no effect in these annotations. A checker can flag code-format problems, but confirm the intended language and market with the people responsible for the localized content.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

5. Confirm complete, correct target URLs

HTML annotations should use fully qualified URLs, including the scheme and hostname. Check that each target is the intended locale page, not a typo, obsolete URL, or unintended destination. Inspect canonical and redirect behavior as additional diagnostics: these can reveal URL inconsistencies, although the cited Google hreflang guidance does not define every vendor-specific canonical or redirect warning as a hreflang rule.

6. Inspect the implementation method actually in use

Google supports hreflang information in HTML link elements, HTTP headers, and XML sitemaps. It considers the three methods equivalent; there is no Search benefit to implementing all of them if doing so makes maintenance harder. Choose a method your team can keep accurate and make sure the checker reads that method. A tool that only parses HTML cannot validate annotations stored in response headers or sitemap entries.

How to check hreflang tags step by step

  1. Choose the page group. Gather the live URLs for every language or regional version of the same content, including a fallback URL if you use one.
  2. Identify where annotations are published. Determine whether they are in the page’s HTML <head>, HTTP response headers, or an XML sitemap.
  3. Run an appropriate checker. For a single live page, use a validator that inspects that page’s implementation method. For a larger group, use a tool that accepts a URL list or sitemap URL and can follow alternate URLs to test return links.
  4. Compare every page’s alternate set. Confirm each page lists itself and all intended peers, and that the same set appears throughout the group.
  5. Resolve errors at their source. Fix the CMS, template, server header, or sitemap generator that emits the annotations; editing one rendered page may not correct the rest of the site.
  6. Re-run the check. Verify the changed live output, not just the source configuration. Keep a record of the tested URLs and checker method if the audit needs to be repeated.

Example HTML annotations

For HTML implementation, place alternate links in a well-formed page <head> and use complete target URLs. Each localized page should have the corresponding self-reference and the same alternate set, adjusted so its own URL is listed under its own code.

<link rel="alternate" hreflang="en" href="https://example.com/en/page/">
<link rel="alternate" hreflang="fr" href="https://example.com/fr/page/">
<link rel="alternate" hreflang="en-GB" href="https://example.com/en-gb/page/">
<link rel="alternate" hreflang="x-default" href="https://example.com/page/">

x-default is an optional value for a URL intended to match users whose language is not explicitly listed. It is a fallback concept, not a replacement for valid language or region values or for reciprocal links.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choosing a checker that matches your site

Before trusting a report, compare a tool’s documented capabilities with how your site publishes hreflang. Google’s troubleshooting page names third-party tools, including Aleyda Solis’s generator and Merkle SEO’s single-live-page validator, while warning that third-party tools are not maintained or checked by Google. That list is not an endorsement or a guarantee of current capabilities.

  • Annotation sources: Does the checker read source or rendered HTML, HTTP headers, sitemap annotations, or only some of these?
  • Audit scale: Can it check one live URL, a supplied list, or a site/sitemap crawl?
  • Return-link coverage: Does it follow the alternates and test that each page links back?
  • Validation: Does it flag language/region code formats and incomplete or malformed URLs?
  • Repeatability: Does it provide saved reports or API access if you need to rerun audits?
  • Access and privacy: Check current URL limits, account requirements, data handling, and cost on the service’s own page.

Tool-specific claims should be read as the vendor’s description unless independently verified. For example, the Hreflang Testing Tool FAQ says its service can interpret HTTP header hreflang information and use a sitemap to discover URLs, but cannot analyze hreflang annotations provided in XML sitemaps. Its FAQ also describes account-dependent URL limits and API access; consult the current service page for details because they can change. A vendor API page describes submitting URL lists or a sitemap URL and later querying completed results; that description is not independent evidence of performance. The Chrome Web Store listing for an extension from digitaldarts.com.au describes checks for return links, code formats, canonical consistency, and geo-IP redirects; these are listing claims, not independently tested findings.

Common hreflang checker errors and how to fix them

A return link is missing

What it means: One page names another locale, but the destination does not name the source page in return. Fix: Update the shared locale set or template so both pages publish each other and the full group remains consistent.

The language or region value is invalid

What it means: The annotation uses a malformed or unsupported value, such as a region without a language, or a reserved code that has no effect. Fix: Use a valid ISO 639-1 language code and, where needed, a valid ISO 3166-1 Alpha 2 region code.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The checker reports no tags

What it means: The tool may be inspecting the wrong source, may not see the page’s response headers or sitemap annotations, or may not be able to access the page. Fix: Confirm the implementation method and the checker’s supported inputs; then test a live URL or sitemap that actually exposes the annotations.

A URL is malformed or points somewhere unexpected

What it means: The target may lack a scheme or hostname, contain a typo, redirect unexpectedly, or not be the intended locale. Fix: Inspect the fully qualified target and its live destination. Treat canonical and redirect flags as prompts to investigate URL consistency rather than automatically as proof of a hreflang violation.

The report is clean, but Google shows another locale

What it means: A checker has validated accessible annotations; it has not confirmed Google’s indexing or selection. Google determines language from visible page content and uses its own systems. Fix: Review the actual content and URL versions as well as the annotations, and use Google Search Console or other Google-provided diagnostics for Google-specific status.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Performance, reliability, and cost considerations

For a small set of pages, a live-page validator is often enough to find markup or reciprocal-link problems. For a large site, a URL-list, sitemap, or crawl-based workflow can reduce manual checking, but the result is only as complete as its discovery method and access to your pages. Dynamic pages, access restrictions, and implementation methods the tool does not support can all limit what it sees.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Run checks after changes to locale templates, routing, canonicals, redirects, or sitemap generation, and periodically if localized pages are added or removed. If a vendor offers an API or saved reports, check its current limits, pricing, and data-handling terms directly; these vary by service and are not established by Google’s documentation.

Or skip the browser setup

ScreenshotNeo is a website screenshot API and MCP server. A screenshot can help a developer inspect the visible result of a locale URL, but it does not validate hreflang relationships or replace a dedicated checker. For a screenshot, one GET request returns an image or PDF; see the ScreenshotNeo documentation.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://example.com/fr/page/ -o shot.webp

ScreenshotNeo removes cookie/consent banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, and failed loads are not billed. Its MCP server lets AI agents take screenshots. The free plan includes 1,000 screenshots a month with no card, and paid plans start at $5 for 3,000. Sign up for ScreenshotNeo’s free plan.

Frequently Asked Questions

Does a hreflang checker tell me whether Google has accepted my tags?

No. It can report on annotations it can access, but it does not prove Google has crawled or selected a localized URL.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Can I use hreflang without translating every page?

Hreflang identifies localized or regional versions; the checker cannot decide whether pages are sufficiently localized for your audience. Review the visible content and the purpose of each URL.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.