← All free tools
FREE TOOLS / INTERNATIONAL SEO

Free Hreflang Checker.

Check one page’s hreflang tags and every language version it lists. See which versions link back, which codes are wrong, and which alternates redirect, fail or are noindex.

Free, no signup · HTML head and HTTP Link header · Up to 20 alternates fetched · About 10–25 seconds

READ THE SIGNALS

Hreflang works only when every version agrees.

01

Codes

Language in ISO 639-1, optional region in ISO 3166-1 alpha-2, or x-default.

02

Return links

Each version lists itself and every other version.

03

Working targets

Each listed URL answers 200, is indexable and is its own canonical.

THE GUIDE / HREFLANG

How to Check Hreflang Tags

Hreflang tells search engines which page to show to readers of each language or region. This guide explains what the free checker requests, how to read the cluster table, and how to fix the mistakes it finds.

AT A GLANCEEvidence first.
Same rules as the audit.

Check a page without an account.

6audit checks applied
20alternates fetched at most
2sources read: HTML and HTTP header
01 / THE BASICS

What hreflang does

When the same content exists in several languages, or for several regions in one language, hreflang annotations tell Google which URL belongs to which audience. Each annotation pairs a language code, optionally with a region, with a URL. Google’s documentation asks for three things: each version must list itself as well as all other versions, the codes must follow ISO 639-1 for languages and ISO 3166-1 alpha-2 for regions, and the URLs must be fully qualified, including https://.

Hreflang is a hint, not a directive. It helps Google show the right version; it does not make a page rank, and it does not stop Google from choosing a different URL as canonical. That is why the listed URLs should be the working, indexable, canonical versions of each page.

!
Return links prove the relationship

If the English page lists the German page but the German page does not list the English one back, Google may ignore the pair. Screaming Frog and Ahrefs describe the same rule: hreflang is reciprocal.

02 / HOW THIS TOOL WORKS

How this tool works, step by step

01

Read robots.txt

For every host it requests, the checker reads robots.txt first and honours it for DeepSpider. An alternate that robots.txt disallows is not requested; the report says so instead of guessing.

02

Fetch your page

It requests the page with DeepSpider’s own user agent and follows up to five redirects. It never pretends to be Googlebot.

03

Read the annotations

It reads <link rel="alternate" hreflang> from the HTML head and hreflang entries in the HTTP Link header, plus the page’s <html lang> and any hreflang placed in the body by mistake.

04

Fetch the alternates

It requests up to 20 listed alternates once each, four at a time, without following their redirects, and reads their own hreflang, noindex and canonical.

05

Apply the audit’s checks

It runs the same hreflang checks as a full DeepSpider audit over these pages: codes, absolute URLs, self-reference, return links, target status and directives, incomplete sets, one URL as several languages, and html lang.

03 / INTERPRETATION

How to read the report

LINKS BACK

Confirmed pair

The alternate lists your page in its own hreflang. A table row full of codes means that page lists the whole cluster.

MISSING

No return link

The alternate answered with HTML but does not list your page. Add the missing annotation on that version.

TARGET PROBLEM

Redirect, error, noindex or canonical elsewhere

List the final working URL that is its own canonical, or remove versions that should stay out of search.

NOT CHECKED

Could not be judged

robots.txt disallowed the request, the website did not answer, or the version was beyond the first 20. This is not a pass.

04 / BEST PRACTICES

How to fix the common mistakes

01 / Use valid codes

Use en-GB, not en-UK, and ja or ja-JP for Japanese, not jp. Google lists the reserved codes EU, UN and UK as mistakes.

02 / List every version on every version

Give each page the same complete set: all versions plus itself, and x-default if you use it. Fix it in the template or plugin, not page by page.

03 / Point to final, indexable URLs

Each listed URL should answer 200, have no noindex and name itself as canonical. Update annotations after redirects.

04 / Use absolute URLs

Google’s documentation asks for fully qualified URLs such as https://example.com/de/, not /de/.

05 / Keep annotations in the head

Hreflang link elements belong in a well-formed <head>. A missing </head> or a tag printed after <body> moves them into the body.

06 / One language per URL

Region variants such as en-GB and en-US may share a URL; two different languages should not.

05 / FAQ

Frequently asked questions

Does this tool check hreflang in my XML sitemap?

No. It reads the page’s HTML and HTTP headers only. If your hreflang lives in an XML sitemap, the page may look like it has none here. A full DeepSpider audit reads parsed XML sitemaps.

Is a missing self-reference really a problem?

Google’s documentation says each version must list itself as well as all others. John Mueller has also called self-references optional but good practice, so treat it as an easy fix rather than a disaster.

Why is an alternate marked “not checked”?

Its robots.txt disallows DeepSpider, its website did not answer, the 25-second limit was reached, or the page lists more than 20 versions. A not-checked alternate is never counted as passing.

Does Google use the html lang attribute?

Google does not rely on it for targeting, but other search engines and browsers read it. A page whose html lang differs from the language it claims in hreflang is worth correcting, so the report flags it.

Why does the checker not follow redirects on alternates?

Hreflang should point to the final URL. A redirecting alternate is reported with its status code, the same way a full DeepSpider audit reports it.

Why is an annotation marked “outside head”?

Google reads hreflang <link> elements only in the <head>. When the HTML parser ends the head early (for example at an <img> in the head) or the tag is printed after <body>, the annotation lands in the body and Google may ignore it. Each annotation shows where it really sits; the Head & Encoding Integrity Checker shows which element ends the head.

Is the check free and private?

Yes. There is no signup or email gate and no public report page. Repeat checks of the same URL within ten minutes reuse the previous result.

REFERENCE MATERIAL

Where to check the underlying guidance

Google Search Central: Tell Google about localized versions of your page. Practitioner guides: Ahrefs, their guide to hreflang tags; Search Engine Journal, the most common hreflang mistakes; Screaming Frog, missing return links; Sitebulb, noindex URL has incoming hreflang.