The short answer: hreflang is a tag that tells Google which language and country version of a page to show to which searcher. For an English–Italian site it pairs each English page with its Italian twin, both ways. Get it wrong and your Italian page ranks in Manchester while your English page hides from British buyers.
I’m Mark Chambers, a bilingual SEO and GEO consultant. I build and audit English–Italian websites, and broken hreflang is in my top three findings on almost every exporter’s site. This is the plain-English version.
What does hreflang actually do?
It doesn’t make a page rank higher. It makes Google show the right version of a page that already ranks. Think of it as a signpost between twins, not a booster.
What are the rules?
- Use valid codes. Language first (ISO 639-1), country optional (ISO 3166-1). So
en-GB,en-US,it-ITor justit. There is noen-UK. - Link both ways. If the English page points to the Italian page, the Italian page must point back. One-way tags are ignored.
- Include the page itself. Each page lists its own version as well as its twins.
- Add x-default. The fallback for everyone else, usually your English or language-choice page.
- Keep canonicals on themselves. The Italian page’s canonical points to the Italian page, never to the English one.
What does correct hreflang look like?
<link rel="alternate" hreflang="en-GB" href="https://example.com/en/beds/" />
<link rel="alternate" hreflang="it-IT" href="https://example.com/it/letti/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/en/beds/" />The same three lines go in the head of both pages. You can also declare hreflang in your XML sitemap, which is tidier on large shops.
Bilingual site?
I’ll check your hreflang and tell you in plain English what’s broken.
Check my site →What are the five mistakes I fix most often?
- Pointing every Italian page at the English homepage. Twins must be page-to-page.
- Missing return links after a plugin update or a page rename.
- Translated URLs that redirect, so hreflang points at a redirect, not a live page.
- Machine-translated twins. Hreflang works, but the page doesn’t convert. Signposting a weak page just sends buyers to it faster. See why “just translate it” fails.
- Auto-redirecting visitors by IP. It can stop Google seeing your other versions at all. Offer a language switch instead.
Subfolders, subdomains or separate domains?
For most SMEs I recommend subfolders, /en/ and /it/, on one domain. Authority builds in one place and it’s easiest to maintain. Separate domains like .co.uk and .it make sense when the businesses, stock or teams are genuinely separate, as with Belsogno Beds’ move from belsognobeds.it to belsognobeds.co.uk.
Does hreflang help with AI search?
Indirectly. AI assistants draw on what search engines index and on clear, consistent pages. A clean language structure makes it easier for both to match your English page to English prompts and your Italian page to Italian ones. The wider picture is in GEO explained, and the full site checklist is in the cross-border website checklist.
Frequently asked questions
Is the html lang attribute enough?
No. Set it correctly, but Google relies on hreflang to connect language versions. Use both.
Do I need en-GB and en-US versions?
Only if the pages differ meaningfully, such as prices, spelling, delivery or sizes. Otherwise a single en version is cleaner.
How do I check my hreflang?
Crawl the site with an SEO crawler that reports hreflang errors, and check which page ranks in each country in Google Search Console’s performance report, filtered by country.
Talk to Mark
Is the wrong language version ranking?
Send me your website and your target countries. I’ll check the language set-up and tell you what to fix, in order of impact.