Hai un e-commerce che vende all’estero? Presta attenzione al tag hreflang: questo attributo HTML è il vigile urbano del tuo traffico internazionale e indirizza ogni utente alla versione linguisticamente corretta del tuo sito.
In questo appuntamento della SEO Tech Academy, Raffaele Visintin – Head of SEO di Fattoretto Agency mostra come utilizzare Screaming Frog per analizzare il tag hreflang e individuare gli errori che impattano su come Google posiziona le tue pagine a livello globale.
Se non vuoi perderti i prossimi video, iscriviti al canale YouTube oppure alla newsletter dedicata per riceverli direttamente nella tua casella di posta, ogni lunedì alle ore 12!
Che cos’è l’hreflang?
Il tag hreflang serve a segnalare a Google la lingua e la regione target di una determinata pagina, utile soprattutto quando abbiamo contenuti simili o duplicati per mercati diversi.
Se mal implementato… è un disastro. Perché? Google potrebbe mostrare la pagina sbagliata al pubblico sbagliato.
Per questo qui sotto troverai i principali errori che possiamo intercettare con Screaming Frog. Se ti interessa approfondire il tema dell’internazionalizzazione, inoltre, ti invitiamo a leggere il nostro articolo dedicato alla SEO internazionale.
Iniziamo con il definire l’hreflang a livello di codice. Nell’esempio qui sotto abbiamo 3 versioni:
- inglese (en)
- tedesca (de)
- italiana (it)
In più troviamo una riga di codice “x-default”, ovvero la versione linguistica che andiamo a servire agli utenti che non parlano inglese, tedesco o italiano.

Cosa succede se una lingua è presente in più Paesi?
L’inglese, per esempio, è parlato in Regno Unito, Stati Uniti o Australia. In questo caso non ci basta identificare solo la lingua, ma anche il Paese.
Con “en-gb” identifichiamo le persone che parlano inglese in Gran Bretagna.

Mentre con “en-us” identifichiamo le persone che parlano inglese negli Stati Uniti.

Dove implementare l’hreflang
Abbiamo 3 soluzioni principali.
1) Tag HTML all’interno del tag <head>
2) Header HTTP: utile per fornire a Google diverse versioni linguistiche dei PDF
3) Sitemap
Analizzare l’hreflang con Screaming Frog
Avviare la scansione
1) Crea la configurazione essenziale per analizzare il tag hreflang
Configuration > Crawl Config > Abilita Crawl e Store su Hreflang
2) Avvia la scansione e guarda i risultati nella tab Hreflang o nella Overview a destra
Una volta completata la scansione, Screaming Frog potrebbe identificare dei “warning”. Per avere i dati anche di questi elementi è necessario andare nella Crawl Analysis e flaggare il campo Hreflang.
Gestire i filtri
1) Contains hreflang
Identifica tutte le risorse che nel codice html presentano il tag hreflang.
2) Self referencing
Ti consente di identificare se ci sono delle versioni linguistiche per la pagina base (es. https://dominio.com/en/product-A) + l’auto referenza, come nell’esempio qui sotto:
<link rel=”alternate” hreflang=”en” href=”https://dominio.com/en/product-A” />
<link rel=”alternate” hreflang=”de” href=”https://dominio.com/de/produkt-A” />
<link rel=”alternate” hreflang=”it” href=”https://dominio.com/it/prodotto-A” />
<link rel=”alternate” hreflang=”x-default” href=”https://dominio.com/en/product-A” />
3) Incorrect language & region
Segnala errori e ti consente di identificare se la pagina ha una codifica corretta.
Nell’esempio qui sotto c’è un errore perché si voleva impostare il riferimento alla lingua inglese per il mercato UK, ma la codifica corretta è “en-gb”, non “en-uk”.
<link rel=”alternate” hreflang=“en-uk” href=”https://www.screamingfrog.co.uk/technical-seo/” />
4) Non-200 hreflang URLs
Se la versione a te cara non risponde con uno status code 200, ma per esempio con un 301, 302 o 400, l’hreflang manderebbe in conflitto la valutazione di Google durante le scansioni.
5) Unlinked hreflang
Questo filtro indica che l’unico link trovato per quella singola pagina nell’analisi è stato trovato tramite il tag hreflang. Vuol dire che in tutto il resto del sito non c’è collegamento a quella pagina, presumibilmente c’è un problema di internal linking a cui mettere mano.
6) Missing return link
SITO:
https://www.screamingfrog.co.uk/technical-seo/ (che corrisponde alla versione “en-gb” per l’inghilterra).
HREFLANG (dove ho anche una versione per la parte americana):
<link rel=”alternate” hreflang=”en-gb” href=”https://www.screamingfrog.co.uk/technical-seo/” />
<link rel=”alternate” hreflang=”en-us” href=”https://www.screamingfrog.com/us/technical-seo/” />
MA LA VERSIONE USA => https://www.screamingfrog.com/us/technical-seo/ INCLUDE SOLO:
<link rel=”alternate” hreflang=”en-us” href=”https://www.screamingfrog.com/us/technical-seo/” />
MANCA IL LINK DI RITORNO ALLA VERSIONE “en-gb”.
7) Non using canonical
Questo tipo di errore segnala se per esempio un auto referenza viene erroneamente canonicalizzata a una pagina esterna.
In questo caso si crea confusione nello spider perché gli diciamo che la pagina principale canonicalizzata è diversa da quella principale a livello linguistico.
Esempio:
SITO:
https://www.screamingfrog.co.uk/technical-seo/
HREFLANG:
<link rel=”alternate” hreflang=”en-gb” href=”https://www.screamingfrog.com/technical-seo/” />
PAGINA CANONICALIZZATA:
<link rel=”canonical” href=”https://www.screamingfrog.com/technical-seo-consultancy/” />
8) Not canonical return link
L’errore del punto 7 può verificarsi anche nel caso in cui la versione linguistica “esterna” (es. versione “fr-fr” di un sito “en-gb”) si presenta come canonicalizzata.
9) Multiple entries
Identifica che il tag hreflang viene inserito erroneamente più volte nel codice html.
10) Missing x-default
Identifica la mancanza del codice “x-default”, ovvero la versione linguistica che andiamo a servire agli utenti che non parlano le lingue indicate.
11) Missing
Manca completamente il tag hreflang nel codice html.
12) Outside <head>
Il tag hreflang fuori dal tag <head> è un grave errore perché potrebbe non essere considerato da Google.
Ti è piaciuta questa guida?
Se non vuoi perderti i prossimi contenuti, iscriviti al canale YouTube oppure compila il form qui sotto per riceverli direttamente nella tua casella di posta!