← Torna al blog

Hreflang Checker: come trovare e correggere gli errori

Hreflang Checker: come trovare e correggere gli errori

Un hreflang checker passa in rassegna le versioni linguistiche di una pagina e verifica che ogni annotazione hreflang usi un codice valido, punti a un URL vivo e indicizzabile e sia confermata da un link di ritorno sulla pagina di destinazione. Quando queste condizioni saltano, Google ignora le annotazioni rotte e torna a indovinare quale versione mostrare, così chi cerca dalla Francia può finire sulla pagina inglese anche se quella francese esiste.

Gli errori di hreflang non producono nulla che un visitatore possa notare. Le pagine si caricano, il layout è a posto e l'unico sintomo è l'URL sbagliato nei risultati di ricerca di un paese, che di solito qualcuno in quel mercato scopre mesi dopo.

I tre posti in cui può stare hreflang

Google accetta hreflang in una qualsiasi di tre forme, e un checker deve leggere quella che il sito usa:

<link rel="alternate" hreflang="fr-fr" href="https://example.com/fr/" />

nell'<head> HTML; in un header HTTP Link, l'unica opzione per PDF e altri file non HTML; oppure come voci <xhtml:link rel="alternate" hreflang="fr-fr" href="..." /> dentro la sitemap XML. I grandi siti multi-mercato scelgono spesso la sitemap perché mantiene leggero l'<head> delle pagine. Mescolare i metodi è consentito, ma rende più probabili le contraddizioni, perché a quel punto due sistemi descrivono lo stesso cluster.

Ogni versione deve elencare tutte le altre e anche se stessa. In pratica l'autoriferimento non è facoltativo: senza, Google fa più fatica a confermare l'insieme.

Cosa verifica un hreflang checker

Controllo Corretto Esempio sbagliato
Codice lingua ISO 639-1, es. fr, de fr-FR va bene, french no
Codice regione ISO 3166-1 alpha-2 dopo la lingua, es. en-gb en-uk (il codice del Regno Unito è gb)
Solo regione Non ammesso hreflang="gb"
Link di ritorno B elenca A ogni volta che A elenca B La pagina italiana punta a quella spagnola, la spagnola non ricambia
Stato della destinazione 200, indicizzabile La destinazione fa redirect, risponde 404 o ha noindex
Canonical Il canonical di ogni versione indica se stessa Tutte le versioni canonicalizzate sulla pagina inglese
Fallback x-default per i visitatori non coperti Nessun x-default, quindi sceglie Google

La riga del canonical merita attenzione a parte. Se tutte le versioni linguistiche hanno un canonical che punta all'URL inglese, Google riceve l'informazione che le altre sono duplicati, e hreflang non può scavalcarla. La nostra guida al canonical tag checker spiega come si presentano questi conflitti. Succede qualcosa di simile quando una versione si ritrova un noindex, ed è per questo che intercettare un noindex prima che arrivi in produzione conta tanto sui siti multilingua.

Search Console qui non aiuta più molto. Google ha dismesso il report Targeting internazionale, che elencava gli errori hreflang, quindi la verifica ora spetta ai crawler e ai tuoi controlli.

Controllare un cluster a mano

Per un singolo gruppo di pagine:

  1. Apri il sorgente di una versione e copia tutte le righe hreflang.
  2. Apri ogni URL di destinazione e verifica lo status code, che non ci sia noindex e che il canonical punti a se stesso.
  3. In ogni destinazione controlla che l'elenco delle alternative coincida con quello di partenza, autoriferimento compreso.
  4. Verifica che esista un x-default e che punti a qualcosa di sensato, come un selettore di lingua o il mercato principale.

Con cinque lingue sono venticinque coppie da verificare per un solo tipo di pagina. Una volta si fa. Con deploy regolari su un portafoglio di clienti non regge.

Perché i siti multi-mercato si disallineano

Mercati diversi sono spesso gestiti da persone diverse con tempi diversi. Un prodotto viene tolto dallo store tedesco mentre gli altri store continuano a citarne l'URL. Durante una ristrutturazione va online un redirect su un solo mercato. Un team di traduzione pubblica una pagina nuova senza aggiungerla alle altre versioni. Il QA normale verifica che la pagina si carichi, e nessuno riapre le alternative.

Dove aiuta Deltio e dove serve ancora un crawler

Deltio non sostituisce un crawler nella verifica di ogni coppia reciproca. Quello che fa è sorvegliare ogni giorno i segnali che nella pratica rompono i cluster. Confronta ogni controllo con il precedente per canonical, noindex, robots.txt, title e URL della sitemap, e manda un alert sul canale Slack e via email di quel sito quando qualcosa cambia. Un canonical riscritto sui template spagnoli, o un blocco di URL italiani che esce dalla sitemap, emerge il giorno dopo invece che alla revisione trimestrale. Per controllare subito dopo un rilascio ci sono le scansioni manuali.

Si affianca al resto del tuo monitoraggio SEO. Un crawl hreflang completo dopo i cambiamenti importanti, più il rilevamento giornaliero delle modifiche nel frattempo, copre entrambi i fronti. Puoi provare Deltio per 14 giorni su un sito multilingua di un cliente.

Domande frequenti

I codici hreflang distinguono tra maiuscole e minuscole?
No. Google tratta en-GB ed en-gb allo stesso modo. La convenzione vuole la lingua in minuscolo e la regione in maiuscolo, ma conta più la coerenza delle maiuscole. Quello che rompe davvero il tag è un codice sbagliato, come uk al posto di gb, o una regione senza lingua.
Mi serve hreflang se il sito ha una sola lingua ma più paesi?
Può essere utile. Pagine come en-us, en-gb ed en-au con contenuti quasi identici vengono facilmente trattate da Google come duplicati, e hreflang gli indica quale versione mostrare in ogni paese. Se il contenuto è davvero identico e prezzi o valute non cambiano, una sola versione può bastare.
Bing usa hreflang?
Storicamente Bing si è basato più sul meta tag content-language e sull'attributo lang dell'html che su hreflang. Impostare un attributo lang corretto su ogni versione costa poco e copre entrambi i motori.
Posso mettere hreflang sia nell'HTML sia nella sitemap?
Sì, ma non è necessario e crea due fonti da tenere allineate. Se non concordano, il conflitto rende le annotazioni meno affidabili. Dove puoi, scegli un solo metodo per sito.
Quanto costa Deltio?
Starter costa 29 € al mese per un massimo di 50 siti e 5.000 URL, oppure 24 € al mese con fatturazione annuale. Professional (fino a 200 siti) costa 59 € al mese ed Enterprise (fino a 500 siti) 139 € al mese, entrambi scontati con il piano annuale (49 € e 116 € al mese). Ogni piano ha una prova gratuita di 14 giorni.