Back to Tools

Hreflang Checker

Use cases

International SEO audits Hreflang implementation QA Multi-language site validation Competitor international targeting analysis Pre-migration hreflang documentation

BeautifulSoup extraction of <link rel="alternate" hreflang> tags plus HTTP Link header parsing.

Four validation checks: missing self-referencing tags, absent x-default, duplicate language codes, invalid language format (en, en-US, x-default).

Configurable timeout and inter-request delays.

Streamlit App

Platform

Browser-based (no installation required)

Input

URLs: single entry, pasted list, or CSV upload

Request timeout setting

Inter-request delay (avoid rate limiting)

Output

Excel with summary statistics, extracted hreflang tags (URL, language, destination, source), and validation issues per URL.

Launch App View Source

Features

  • HTML and HTTP header hreflang extraction
  • Missing self-reference tag detection
  • Missing x-default warning
  • Duplicate language code flagging
  • Language code format validation

How to use

  1. 1 Enter URLs (single, paste, or upload CSV)
  2. 2 Configure timeout and delay settings
  3. 3 Run hreflang extraction
  4. 4 Review tags by source (HTML vs HTTP header)
  5. 5 Check validation issues in dedicated tab
  6. 6 Download 3-sheet report: summary, tags, issues

Frequently asked questions

Does it validate return tags between language versions?
No. Every check is per URL; the tool never fetches the alternate URLs a page points to, so missing reciprocal (return) tags are not detected. To approximate that check, run all language versions of a page in the same batch and compare their tag sets in the export.
Why is a valid hreflang code flagged as potentially invalid?
The format check only accepts a two letter language with an optional two letter region (en, en-GB) or x-default. Legitimate codes outside that pattern, such as script subtags like zh-Hans, are flagged even though Google accepts them, so treat that check as a prompt to review rather than a definite error.
How do redirects affect the self referencing check?
Pages are fetched with redirects followed, and hreflang URLs are compared against the final URL (ignoring trailing slashes). If you check a URL that redirects, self reference is judged against the destination; the final_url column in the report shows what was actually evaluated.
When does the missing x-default warning fire?
Only when a page has more than one hreflang code and none of them is x-default. Pages with a single hreflang tag are not warned about x-default.
Will it find hreflang implemented in XML sitemaps?
No. It checks HTML link rel="alternate" tags and the HTTP Link response header only. A site that implements hreflang purely in its XML sitemaps will show zero tags here, which is not an error on the site's part.

Need something built for your business?

This tool started as bespoke client work. I build custom scripts, data pipelines, and full apps for SEO and product data problems that off-the-shelf tools don't solve.

Tell Me What You Need