Hreflang Table Validator

Paste a hreflang CSV or matrix and audit reciprocal links, x-default, duplicate languages, and invalid URLs.

Hreflang table

Audit summary

StatusLooks complete

Every checked page has reciprocal alternates, x-default, and no duplicate hreflang codes.

Pages3
Links12
Issues0
Table format detected

The input was parsed as either long rows or a locale matrix.

Reciprocal links are present

Every alternate target links back to its source page.

x-default coverage is present

Every parsed source page includes an x-default fallback.

No duplicate language codes

Each page uses one URL per hreflang code.

Issue list

Detected format: Row table
No issues found in the current hreflang table.

Normalized row format

source_url,hreflang,target_url
"https://example.com/en/product","en","https://example.com/en/product"
"https://example.com/en/product","fr","https://example.com/fr/produit"
"https://example.com/en/product","de","https://example.com/de/produkt"
"https://example.com/en/product","x-default","https://example.com/product"
"https://example.com/fr/produit","en","https://example.com/en/product"
"https://example.com/fr/produit","fr","https://example.com/fr/produit"
"https://example.com/fr/produit","de","https://example.com/de/produkt"
"https://example.com/fr/produit","x-default","https://example.com/product"
"https://example.com/de/produkt","en","https://example.com/en/product"
"https://example.com/de/produkt","fr","https://example.com/fr/produit"
"https://example.com/de/produkt","de","https://example.com/de/produkt"
"https://example.com/de/produkt","x-default","https://example.com/product"