Che cos'è Googlebot? Come esegue la scansione, il rendering e l'indicizzazione del tuo sito

Vadim Kravcenko
Vadim Kravcenko
· Updated · 14 min read

In sintesi. Googlebot è il nome ombrello dei crawler che Google utilizza per scoprire, renderizzare e indicizzare i contenuti web. Non è un solo bot: è una famiglia. Il membro più importante è Googlebot Smartphone, che scansiona la versione mobile del tuo sito usando un Chromium headless aggiornato all’ultima release stabile di Chrome. Crawling, renderizzazione e indicizzazione sono tre fasi separate che possono avvenire a ore o giorni di distanza. La maggior parte dei problemi “Googlebot non vede la mia pagina” nasce da JavaScript che fallisce silenziosamente nella fase di render, non nel crawl. Il resto di questa guida analizza la famiglia di bot, la pipeline in tre fasi, come verificare una richiesta Googlebot autentica, le domande più comuni su robots.txt e crawl budget e come Googlebot si confronta oggi con Bingbot, GPTBot, PerplexityBot e ClaudeBot.

Che cos’è davvero Googlebot (in parole semplici)

Googlebot è il programma che Google usa per recuperare le pagine web così da poterle aggiungere all’indice di Google. Quando pubblichi un nuovo post e alla fine appare nei risultati di ricerca, il percorso inizia con Googlebot che richiede l’URL, scarica l’HTML, esegue il JavaScript e inoltra il risultato al sistema di indicizzazione di Google. Senza Googlebot, per la Ricerca Google le tue pagine non esistono.

Due precisazioni da fare subito. Primo, “Googlebot” viene talvolta usato in modo generico per indicare “qualsiasi crawler Google”. In senso stretto, Googlebot è il crawler che recupera le pagine per l’indice principale della Ricerca Google. Esistono altri crawler Google (AdsBot per i controlli delle landing page, Storebot per Shopping, Google-Extended per l’opt-out del training IA) ma sono bot diversi con scopi e regole differenti. Sii preciso su quale intendi quando fai debug.

Secondo, Googlebot non è uno scraper. Uno scraper prende tutto quello che può dalla tua pagina senza permesso e usa i dati come vuole. Googlebot legge il tuo robots.txt prima di ogni crawl, rispetta i meta tag noindex, si autoregola se il server rallenta e si identifica negli header così da poter verificare la provenienza. Se vedi nei log un presunto “Googlebot” che martella il server senza tregua, quasi certamente non è il vero Googlebot ma qualcuno che ne imita lo user-agent.

Googlebot è in realtà una famiglia di crawler

Il bot di cui devi occuparti più spesso è Googlebot Smartphone, che dalla fine del mobile-first indexing (metà 2023) scansiona di default la versione mobile del tuo sito. Le scansioni desktop avvengono ancora, ma ora sono secondarie. Ecco l’albero genealogico con le stringhe user-agent ufficiali:

Crawler User-agent string (excerpt) Funzione
Googlebot SmartphoneMozilla/5.0 (Linux; Android 6.0.1; Nexus 5X...) ... Chrome/W.X.Y.Z Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)Crawler principale per la versione mobile del tuo sito. Responsabile della maggior parte dell’indicizzazione.
Googlebot DesktopMozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Googlebot/2.1; +http://www.google.com/bot.html) Chrome/W.X.Y.Z Safari/537.36Scansiona le varianti desktop. Quota minore del traffico di crawl dopo il mobile-first.
Googlebot ImageGooglebot-Image/1.0Recupera le immagini per Google Images. Bot diverso, regole diverse.
Googlebot VideoGooglebot-Video/1.0Recupera i file video per Google Video.
Googlebot NewsNo UA distinto — usa varie stringhe GooglebotScansiona per Google News. L’identificazione richiede il controllo dell’IP, non dello UA.
Google-InspectionToolMozilla/5.0 (compatible; Google-InspectionTool/1.0;)Si attiva quando utilizzi lo strumento di ispezione URL in Search Console. Salta parte della cache.

Il segnaposto W.X.Y.Z negli user-agent Smartphone e Desktop non è letterale. Google inserisce al volo la reale versione di Chromium, che avanza seguendo la release stabile più recente di Chrome. Al momento della stesura, il renderer di Googlebot è a poche settimane dalla versione che Chrome distribuisce al pubblico. Se il tuo sito richiede una feature JS che necessita di Chrome 130+, probabilmente Googlebot la supporta. Se richiede qualcosa non ancora rilasciato, Googlebot no. È questo il dettaglio che molti dibattiti “il mio JS è troppo moderno per Googlebot?” ignorano: il renderer del bot è attuale, non bloccato a Chrome 41 come anni fa.

La pipeline a tre fasi: Crawl, Render, Index

Il lavoro di Googlebot si divide in tre fasi distinte. Non avvengono in simultanea e un ritardo o un errore in una qualunque di esse può tenere la tua pagina fuori dai risultati di ricerca. La documentazione di Google lo riassume chiaramente: "Google elabora le web app JavaScript in tre fasi principali: 1. Crawling 2. Rendering 3. Indexing." Capire i confini di queste fasi è ciò che distingue gli SEO capaci di fare debug da chi va a tentoni.

Fase 1: Crawling

Googlebot prende un URL dalla sua coda, invia una richiesta HTTP e riceve la risposta HTML grezza. Finisce qui. Non viene eseguito JavaScript, né analizzato contenuto renderizzato. Il crawler legge lo status code, gli header (caching, X-Robots-Tag, redirect) e il corpo HTML. Gli URL da scansionare arrivano da sitemap XML, link interni di pagine già indicizzate, link esterni e invii diretti tramite lo strumento di ispezione URL.

Se l’HTML grezzo contiene tutto ciò che va indicizzato (SSR classico), Googlebot può procedere. Se invece è quasi vuoto e il contenuto viene iniettato da JavaScript, la pagina passa alla fase di render. È qui che Googlebot legge anche robots.txt: se un URL è disallow, non lo recupera nemmeno.

Fase 2: Rendering

Se una pagina necessita di JavaScript per mostrare il contenuto, Googlebot passa l’URL al Web Rendering Service (WRS). Il WRS è un Chromium headless che carica la pagina, esegue gli script e produce l’HTML renderizzato finale. Come dice Google: "Una volta che le risorse di Google lo permettono, un headless Chromium renderizza la pagina ed esegue il JavaScript."

La frase “una volta che le risorse di Google lo permettono” pesa molto. Il rendering è costoso, quindi Google lo mette in coda. Le pagine possono restare in coda per secondi, ore o, nei casi peggiori, giorni. La guida ufficiale è volutamente vaga: "La pagina può rimanere in questa coda per alcuni secondi, ma può volerci più tempo."

Questo ritardo è il problema pratico principale dei siti renderizzati via JS. Il post può essere scansionato in pochi minuti, ma non renderizzato per 24 ore; il contenuto quindi non appare nei risultati fino al giorno dopo. Le pagine SSR saltano del tutto la coda.

Fase 3: Indexing

Una volta ottenuto l’HTML finale (dal crawl o dal WRS), il sistema di indicizzazione analizza il documento, estrae il testo, classifica il contenuto, valuta i segnali di ranking e memorizza il tutto nell’indice di Google. Da questo momento la pagina può comparire nei risultati. Anche l’indicizzazione richiede tempo (minuti o ore), ma il lavoro di Googlebot per quell’URL è concluso.

Cosa rompe il rendering JavaScript (e come intercettarlo)

La maggior parte dei problemi “Googlebot non vede il mio contenuto” riguarda il render, non il crawl. Il crawl quasi sempre riesce; la pagina semplicemente non viene renderizzata come previsto. Ecco i sei errori più frequenti che vedo sui clienti SEOJuice, in ordine decrescente di frequenza:

1. Contenuto che richiede un’interazione utente per caricarsi
Se l’unico modo per mostrare una sezione è cliccare “Mostra altro”, Googlebot non la vedrà. Il WRS esegue JS ma non clicca né scrolla. Qualsiasi contenuto importante deve essere nel DOM al load, anche se nascosto via CSS. È l’errore più comune, spesso nei componenti che montano in lazy tab, accordion e feed “carica altri”.
2. Lazy loading senza segnali corretti
Immagini e blocchi lazy devono usare loading="lazy" nativo o Intersection Observer compatibile con WRS. Librerie che attendono eventi di scroll falliscono perché non c’è scroll. Usa loading="lazy" per le immagini; per i componenti, renderizza server-side o adotta un framework con SSR/hydration.
3. Errori JavaScript durante l’esecuzione
Se uno script in alto lancia un’eccezione non gestita, gli script successivi possono non partire lasciando la pagina vuota. Il WRS vede solo ciò che è stato renderizzato prima dell’eccezione. Usa “Visualizza pagina testata” nello strumento di ispezione URL per verificare HTML renderizzato e screenshot.
4. Regole WAF e protezioni anti-bot
CAPTCHA, Cloudflare Bot Fight Mode aggressivo e blocchi geografici possono restituire 403 o challenge agli IP di Googlebot. Whitelista gli intervalli IP Google (file googlebot.json sul sito Google Developers) prima di attivare “block bots”. Verifica con lo strumento di ispezione URL dopo ogni modifica WAF.
5. Risorse bloccate in robots.txt
Se robots.txt blocca /static/ o /assets/, il WRS non può recuperare JS e CSS e la pagina si renderizza senza stili o con JS rotto. Consenti a Googlebot di scansionare i percorsi degli asset statici.
6. Contenuto dietro autenticazione o cookie
Googlebot non effettua login, non mantiene cookie né sessione. Qualsiasi cosa dietro un login non verrà indicizzata. Usa la Indexing API o dati strutturati per i contenuti a pagamento e dichiara chiaramente cosa è protetto.

Come verificare che una richiesta provenga davvero da Googlebot

La stringa user-agent di Googlebot è facile da imitare. Chiunque può inviare una richiesta che dichiara di essere Googlebot. Le vere richieste arrivano da IP di proprietà Google pubblicati, e l’unico modo affidabile per verificarle è fare un reverse DNS seguito da un forward. In pratica:

  1. Prendi l’IP dal log di accesso.
  2. Esegui un reverse DNS. L’hostname deve terminare con .googlebot.com o .google.com.
  3. Esegui un forward DNS su quell’hostname. Deve risolvere allo stesso IP.
  4. Se entrambi i passaggi riescono è Googlebot. Altrimenti è spoof.

Da terminale: host 66.249.66.1 poi host crawl-66-249-66-1.googlebot.com. Se gestisci un sito ad alto traffico, automatizza il controllo nei log: scoprirai che molti “picchi di crawl Googlebot” sono scraper che imitano lo user-agent.

robots.txt e Crawl Budget: le domande tattiche più comuni

Quanto crawlerà Googlebot il mio sito?

Google lo chiama crawl budget. Sotto ~10.000 URL raramente è un vincolo: Googlebot scansiona tutto ciò che conta. Diventa critico solo su siti con milioni di URL, ricerca a faccette o duplicati che sprecano crawl. I due fattori chiave sono crawl rate (quanto il server regge senza errori) e crawl demand (popolarità e frequenza di aggiornamento dell’URL).

Dovrei bloccare Googlebot dagli URL di scarso valore?

Sì, se su un sito grande consumano crawl budget. Blocca ricerca a faccette, risultati di ricerca interna, pagine paginate oltre la 5, varianti con ID di sessione e endpoint admin. Usa robots.txt per bloccare il crawl e noindex per bloccare l’indicizzazione: fanno cose diverse.

Come velocizzo l’indicizzazione di una nuova pagina?

Inviandola nello strumento di ispezione URL in Search Console. Attiva un crawl fuori banda (Google-InspectionTool) più rapido della coda standard. Collega la nuova pagina da una pagina autorevole già indicizzata per farla trovare anche nel prossimo crawl regolare.

Perché Googlebot scansiona il mio ambiente di sviluppo?

Perché un URL di staging/dev è trapelato online (link accidentale, risultato di ricerca, issue tracker aperto) e Googlebot segue i link. Blocca l’intero dominio di staging con Disallow: / in robots.txt e, se serve, aggiungi autenticazione basic.

Debugging dei problemi “Googlebot non può vedere questa pagina”

Il debug sistematico prevede quattro controlli in sequenza finché uno non chiarisce il problema.

Controllo 1: Ispezione URL in Search Console. Incolla l’URL. Lo strumento indica se Google lo ha scansionato/indicizzato, quando e mostra “Visualizza pagina testata”. Se l’HTML renderizzato manca di contenuto, il problema è nel render. Se lo status non è 200, è nel crawl. Risolve il 70% dei casi.

Controllo 2: curl con lo user-agent Googlebot. curl -A "Mozilla/5.0 ... Googlebot/2.1 ..." https://iltuosito.com/percorso. Se il server restituisce output diverso a Googlebot rispetto a un browser, lo vedi qui. Cloaking intenzionale o accidentale è una causa comune di problemi di indicizzazione.

Controllo 3: audit di robots.txt e meta tag. Visita /robots.txt. Verifica che l’URL non sia bloccato. Poi cerca noindex nel sorgente. Spesso il colpevole è un noindex rimasto da staging.

Controllo 4: analisi log server. Filtra i log per richieste Googlebot verificate negli ultimi 30 giorni. Se l’URL non appare mai, Googlebot non lo conosce: aggiungilo a sitemap e linkalo. Se appare ma restituisce 4xx/5xx, risolvi l’errore. SEOJuice automatizza questa analisi e avvisa se un URL chiave sparisce dal traffico Googlebot reale.

Googlebot vs Bingbot vs i crawler IA

Googlebot non è più l’unico crawler che conta. Ecco il confronto principale al 2026:

Crawler Operator Esegue JS? Utilizzo
GooglebotGoogleSì (Chromium recente)Indice Ricerca Google
BingbotMicrosoftSì (Edge / Chromium)Indice Bing, grounding Copilot
GPTBotOpenAILimitato / no SPADati training ChatGPT
OAI-SearchBotOpenAILimitatoRecupero ricerca ChatGPT
PerplexityBotPerplexityLimitatoMotore risposte Perplexity
ClaudeBotAnthropicLimitatoTraining e retrieval Claude
Google-ExtendedGoogleN/D (solo segnale)Flag opt-out training Gemini

Due implicazioni pratiche. Primo: i crawler IA hanno render JS più deboli di Googlebot. Se il contenuto dipende dal client-side, potresti posizionarti bene in Google ma essere invisibile a ChatGPT, Perplexity e Claude: vedranno una pagina vuota. La soluzione è la stessa di Googlebot: SSR o prerender. Il nostro AI Visibility Checker gratuito verifica in meno di un minuto se i maggiori motori IA vedono il tuo sito. Secondo: ogni crawler IA ha direttive robots.txt proprie. User-agent: GPTBot blocca il training di OpenAI, User-agent: Google-Extended blocca quello di Gemini, mentre User-agent: Googlebot resta separato. Vuoi comparire in Ricerca Google ma non nel training IA? Imposta regole distinte.

Domande frequenti

Cos’è Googlebot?

Googlebot è il crawler che Google usa per scoprire e scaricare pagine web da indicizzare e mostrare nei risultati. È una famiglia di crawler (Smartphone, Desktop, Image, Video, News) con stringhe UA e scopi diversi, ma di solito “Googlebot” indica Googlebot Smartphone, il crawler primario dal 2023 dopo il mobile-first indexing.

Googlebot esegue JavaScript?

Sì. Il Web Rendering Service (WRS) è un Chromium headless che esegue JS sulle pagine che lo richiedono. La versione di Chromium segue le release stabili, quindi le feature moderne funzionano in genere. Il problema è la coda di render: anche con JS corretto, il render può avvenire secondi, ore o giorni dopo il crawl. Le pagine SSR saltano la coda.

Come verifico una richiesta Googlebot?

Esegui un reverse DNS sull’IP: l’hostname deve terminare con .googlebot.com o .google.com. Poi un forward DNS su quell’hostname: deve tornare allo stesso IP. Se uno step fallisce, è spoof. Lo user-agent non basta: chiunque può falsificarlo.

Posso bloccare Googlebot?

Sì. Aggiungi in robots.txt User-agent: Googlebot seguito da Disallow: /. Blocchi il crawl, quindi la pagina non verrà indicizzata né mostrata. Per maggiore granularità, usa meta noindex sulle singole pagine o blocca percorsi specifici; ma non bloccare CSS/JS necessari al render.

Googlebot è lo stesso di GPTBot o PerplexityBot?

No. Sono crawler separati gestiti da aziende diverse e con scopi diversi. Googlebot indicizza per la Ricerca Google, GPTBot raccoglie dati per ChatGPT, PerplexityBot per il motore Perplexity. Ognuno ha UA e regole robots.txt proprie. Puoi consentire Googlebot e bloccare GPTBot, o viceversa.

Perché Googlebot non ha ancora indicizzato la mia nuova pagina?

Cause comuni: la pagina non è linkata da URL indicizzati, restituisce status ≠ 200, ha noindex, è bloccata da robots.txt o dipende da JS che il WRS non ha ancora renderizzato. Usa lo strumento di ispezione URL per diagnosticare; “Visualizza pagina testata” mostra cosa ha visto Googlebot. Le nuove pagine vengono di solito indicizzate in poche ore/giorni, più lentamente se il sito ha bassa frequenza di crawl.

Googlebot può leggere contenuti in iframe?

Sì, ma li associa all’URL dell’iframe, non alla pagina che lo incorpora. Se il contenuto principale è in un iframe, dividi il segnale di indicizzazione tra due URL e indebolisci entrambi. Evitalo per contenuti da associare alla pagina madre.

In sintesi su Googlebot

Ricorda tre cose. Primo: è una famiglia di crawler, e Googlebot Smartphone è quello che conta dopo il mobile-first indexing. Secondo: la pipeline è crawl, render, index; la maggior parte dei problemi è nel render, motivo per cui “Visualizza pagina testata” è lo strumento di debug più utile di Google. Terzo: i crawler IA (GPTBot, PerplexityBot, ClaudeBot) hanno render JS più deboli; ottimizzare per Googlebot rende il contenuto visibile anche in IA search, ma non sempre viceversa. La soluzione a “i motori IA non mi citano” coincide spesso con “Googlebot non vede il mio contenuto”: SSR, contenuto critico nell’HTML iniziale, niente JS che fallisce silenziosamente.

Correlati: SEO per Single Page ApplicationAnswer Engine Optimization (AEO)Strumento gratuito di SEO AuditAI Visibility Checker gratuito

SEOJuice
Stay visible everywhere
Get discovered across Google and AI platforms with research-based optimizations.
Works with any CMS
Automated Internal Links
On-Page SEO Optimizations
Get Started Free

no credit card required