Un proprietario di un negozio Shopify implementa redirect di geolocalizzazione per i clienti internazionali. Le conversioni aumentano nelle prime due settimane. Poi il traffico organico inizia a diminuire. Entro il terzo mese, hanno perso il 23% della loro visibilità di ricerca e non riescono a capire perché. I redirect che erano supposti aiutare i visitatori internazionali hanno silenziosamente bloccato Google dal crawlare metà del loro sito.
Questo non è un caso raro. È uno degli errori SEO più comuni nell’ecommerce internazionale, e accade perché la geolocalizzazione e il crawling dei motori di ricerca operano su assunzioni fondamentalmente diverse. I tuoi visitatori sono umani con posizioni. Googlebot è un crawler senza posizione—e se lo tratti come un visitatore, rompi il tuo stesso ranking.
- Google avverte esplicitamente contro il reindirizzamento automatico basato sulla posizione percepita dell'utente---impedisce ai crawler di indicizzare tutte le versioni del tuo sito
- Googlebot effettua crawl principalmente da indirizzi IP statunitensi e non segue i redirect geolocalizzati come farebbe un visitatore umano
- I tag hreflang dicono a Google delle tue pagine regionali senza fare affidamento su redirect---sono essenziali per qualsiasi negozio multi-regione
- I loop di redirect tra versioni regionali sono il modo più veloce per far eliminare le pagine dall'indice di Google
- Shopify Markets gestisce hreflang automaticamente, ma i redirect JavaScript personalizzati possono sovrascrivere e rompere questo
Perché Google penalizza i redirect geo
La documentazione di Google sul targeting internazionale è insolitamente diretta su questo argomento: “Evita il reindirizzamento automatico basato sulla lingua percepita dell’utente. Questi reindirizzamenti potrebbero impedire agli utenti (e ai motori di ricerca) di visualizzare tutte le versioni del tuo sito.”
La ragione è meccanica. Googlebot effettua crawl principalmente da data center negli Stati Uniti. Quando il tuo sistema di geolocalizzazione rileva un indirizzo IP statunitense e reindirizza alla versione /us/ del tuo negozio, Googlebot vede solo la versione statunitense. Le tue versioni /uk/, /de/, /fr/ e /au/ non vengono mai crawlate da quel punto di ingresso. Se quelle pagine sono raggiungibili solo attraverso geo-redirect e non attraverso link interni o sitemap, Google potrebbe non scoprirle mai.
Il risultato è che le tue pagine statunitensi accumulano tutti i segnali di ranking—backlink, dati di engagement, cronologia di crawl—mentre le tue pagine regionali rimangono in un vuoto di crawl. Quando qualcuno in Germania cerca un prodotto che vendi, Google potrebbe mostrargli la pagina statunitense (se classifica) o nulla (se la pagina regionale era supposta classificarsi ma non è stata mai indicizzata).
Questo non è tecnicamente una “penalità” nel senso di un’azione manuale dal team anti-spam di Google. È peggio: è un errore di indicizzazione che produce gli stessi sintomi—traffico perso, pagine mancanti, cali di ranking—ma senza alcuna notifica in Search Console. Non ricevi un avviso. Le tue pagine semplicemente non compaiono.
Come Googlebot gestisce la lingua e la posizione
Capire cosa fa veramente Googlebot quando incontra il tuo negozio chiarisce perché certe implementazioni falliscono.
Googlebot non ha una posizione geografica. Effettua crawl da indirizzi IP basati negli Stati Uniti e non simula di essere in paesi diversi. Quando richiede una pagina, invia header HTTP standard, incluso un header Accept-Language che è tipicamente impostato a en-US o en.
Googlebot non esegue tutto il JavaScript. Sebbene il motore di rendering di Google possa eseguire JavaScript, lo fa secondo una pianificazione ritardata e potrebbe non attivare la logica di reindirizzamento lato client nello stesso modo di un browser. Un redirect di geolocalizzazione basato su JavaScript potrebbe attivarsi per visitatori umani ma non per Googlebot, creando una divisione dove gli umani vedono una versione e Google indicizza un’altra.
Googlebot segue i redirect, ma non infinitamente. Se la tua logica di geolocalizzazione crea una catena di redirect (la homepage reindirizza a /us/, /us/ reindirizza di nuovo alla homepage perché l’Accept-Language del crawler dice inglese), Google potrebbe rinunciare e eliminare la pagina dal suo indice completamente. I loop di redirect sono uno dei problemi SEO tecnici più comuni segnalati in Google Search Console per siti internazionali.
Googlebot utilizza i tag hreflang per scoprire versioni regionali. Questo è il meccanismo previsto per dire a Google delle tue pagine regionali. Invece di reindirizzare il crawler alla versione giusta, dici a Google che esistono versioni alternate e gli permetti di effettuare crawl di ognuna indipendentemente.
Hreflang: il modo giusto per gestire le pagine regionali
I tag hreflang sono annotazioni HTML che dicono ai motori di ricerca “questa pagina ha versioni alternate in altre lingue o per altre regioni.” Vanno nel <head> di ogni pagina o nella sitemap XML.
Una pagina di prodotto sul tuo negozio statunitense includerebbe:
<link rel="alternate" hreflang="en-us" href="https://store.com/products/widget" />
<link rel="alternate" hreflang="en-gb" href="https://store.com/uk/products/widget" />
<link rel="alternate" hreflang="de" href="https://store.com/de/products/widget" />
<link rel="alternate" hreflang="x-default" href="https://store.com/products/widget" />
Il tag x-default dice a Google quale versione mostrare quando non esiste una corrispondenza regionale specifica. Questo è tipicamente il tuo negozio principale/predefinito.
Cosa ottiene hreflang che i redirect non possono:
- Google effettua crawl e indicizza ogni versione regionale indipendentemente
- Ogni versione accumula i suoi propri segnali di ranking
- Google fornisce la versione regionale appropriata nei risultati di ricerca in base alla posizione e alle impostazioni linguistiche del ricercatore
- Nessun crawler viene bloccato dall’accesso a nessuna versione
Shopify Markets genera tag hreflang automaticamente quando configurate i mercati con sottodirectory o sottodomini. Questa è una delle ragioni più forti per usare l’internazionalizzazione nativa di Shopify piuttosto che costruire logica di redirect personalizzata. L’implementazione di hreflang è corretta di fabbrica e si aggiorna automaticamente mentre aggiungete prodotti o mercati.
L’avviso critico: se sovrapponete redirect JavaScript personalizzati a Shopify Markets, i redirect possono attivarsi prima che Google legga i tag hreflang. Il crawler viene reindirizzato lontano dalla pagina prima di analizzare il <head>, quindi le annotazioni hreflang non vengono mai elaborate. Questo è il modo più comune in cui i negozi accidentalmente rompono una configurazione hreflang altrimenti corretta.
Errori comuni e come risolverli
Reindirizzare i crawler insieme ai visitatori
L’errore: La tua logica di geolocalizzazione non distingue tra visitatori umani e crawler dei motori di ricerca. Ogni richiesta da un IP statunitense va a /us/, incluso Googlebot.
La soluzione: Controlla la stringa dello user agent prima di applicare i geo-redirect. Googlebot si identifica nell’header User-Agent. Se la richiesta proviene da un crawler noto, servire la pagina senza reindirizzare. Questo non è cloaking—Google lo raccomanda esplicitamente nelle sue linee guida di targeting internazionale.
In pratica, mantenere un elenco di user agent di crawler noti (Googlebot, Bingbot, ecc.) e bypassare la logica di geolocalizzazione per quelle richieste. Su Shopify, questo è più facile da implementare al livello CDN/edge (Cloudflare Workers) piuttosto che in Liquid o JavaScript.
Usare redirect 302 invece di 301
L’errore: I tuoi geo-redirect usano codici di stato 302 (temporaneo), che dicono a Google “questo redirect è temporaneo, continua a indicizzare l’URL originale.” Google potrebbe indicizzare entrambe le versioni, dividendo i segnali di ranking tra loro.
La soluzione: Se il redirect è permanente (un visitatore dalla Germania dovrebbe sempre vedere la versione /de/), usare un redirect 301. Se il redirect è condizionale e potrebbe cambiare (il visitatore potrebbe cambiare regione), usare un 302 ma combinarlo con tag hreflang appropriati in modo che Google non faccia affidamento sul redirect per la scoperta.
Nella maggior parte dei casi, i geo-redirect dovrebbero essere 302 perché sono condizionali sulla posizione del visitatore, non permanenti. Ma questo significa che hai assolutamente bisogno di tag hreflang per gestire il lato dell’indicizzazione. Fare affidamento su redirect 302 per Google per scoprire le tue pagine regionali non funzionerà.
Hreflang mancante sulle pagine regionali
L’errore: Implementi hreflang nel tuo negozio principale ma dimentichi di aggiungere tag hreflang reciproci sulle versioni regionali. Hreflang deve essere bidirezionale—se la pagina A dice “la mia versione tedesca è la pagina B,” la pagina B deve anche dire “la mia versione inglese è la pagina A.”
La soluzione: Controllare ogni versione regionale di ogni pagina per confermare hreflang bidirezionale. In Shopify Markets questo è automatico, ma se usi temi personalizzati o configurazioni headless, i tag reciproci mancanti sono comuni. Il rapporto International Targeting di Google Search Console segnala gli errori hreflang—controllalo mensilmente.
Redirect JavaScript che si attivano prima di hreflang lato server
L’errore: Il tuo tema o un’app di terze parti include uno snippet JavaScript che rileva la posizione e reindirizza il visitatore prima che la pagina si renderizzi completamente. Googlebot potrebbe o potrebbe non eseguire questo JavaScript, creando incoerenza tra quello che Google indicizza e quello che i visitatori vedono.
La soluzione: Rimuovere completamente il JavaScript di geo-redirect lato client. Gestire la geolocalizzazione a livello server o edge (Cloudflare Workers, Shopify Markets, o le funzioni edge del tuo provider di hosting). Il rilevamento lato server avviene prima che l’HTML sia inviato, quindi i tag hreflang e il contenuto della pagina rimangono coerenti indipendentemente dal fatto che la richiesta provenga da un crawler o da un visitatore.
Controllo della salute SEOApri Google Search Console, naviga al rapporto International Targeting e controlla gli errori di hreflang. Poi cerca su Google "site:tuonegozio.com" e confronta le pagine indicizzate con la tua struttura regionale prevista. Se le pagine regionali mancano dall'indice, la tua configurazione di geolocalizzazione probabilmente sta interferendo con il crawling.
Mantenere i negozi regionali crawlabili
Oltre a hreflang e alla gestione dei redirect, alcune pratiche strutturali garantiscono che Google possa scoprire e indicizzare tutto il tuo contenuto regionale.
Link interni tra regioni. La tua navigazione principale, footer, o pagina sitemap dovrebbe collegare a tutte le versioni regionali del tuo negozio. Questi link danno a Googlebot percorsi diretti al contenuto regionale senza fare affidamento sul rilevamento geografico.
Sitemap XML per regione. Inviare sitemap separate per ogni negozio regionale in Google Search Console. Ogni sitemap dovrebbe elencare tutte le pagine di quella regione e includere annotazioni hreflang. Shopify genera sitemap automaticamente, ma verifica che tutti i mercati siano rappresentati.
Tag canonici. Ogni pagina regionale dovrebbe avere un tag canonico auto-referenziale che punta a se stessa, non alla versione “principale”. Un errore comune è impostare il canonico di ogni pagina regionale alla versione statunitense, che dice a Google di ignorare completamente le pagine regionali.
L’interazione tra geolocalizzazione e SEO si riduce a un principio semplice: aiuta Google a scoprire le tue pagine regionali attraverso metadati e link, non attraverso redirect. I redirect sono per gli umani. I metadati sono per i crawler. Quando usi Navi+ o strumenti simili per costruire una navigazione che includa il cambio regionale, i link interni che questi menu generano servono anche come percorsi di crawl—un’altra ragione per cui il livello di navigazione importa per l’SEO internazionale al di là della semplice esperienza del visitatore.
Questo articolo è parte della guida più ampia su Rilevamento automatico della posizione del visitatore: quando reindirizzare e quando chiedere.