Google Explains Googlebot Byte Limits And Crawling Architecture

Googlebot: limiti di byte e l’architettura di scansione spiegati

Capire come Googlebot legge una pagina e quanti byte e’ disposto a scaricare cambia il modo in cui costruisci i tuoi siti. Il limite dei 15MB e’ diventato famoso, ma e’ solo la punta dell’iceberg: l’architettura di scansione include limiti per tipo di file, gestione dei redirect, comportamento sui PDF e regole specifiche per immagini e video. Questa guida mette in fila tutto cio’ che serve a un SEO o a uno sviluppatore web per ottimizzare il budget di crawling.

Il limite famoso: 15MB per file HTML

Google nella documentazione ufficiale conferma da anni un limite di 15MB sul singolo file HTML che Googlebot recupera. Oltre quella soglia, il bot tronca il download e indicizza solo cio’ che ha gia’ scaricato. Per il 99% dei siti questo limite non e’ un problema: le pagine HTML pulite pesano tra 50KB e 500KB. Diventa un problema su siti con codice gonfio, dump di base64 inline o pagine generate male da page builder.

La conferma di Gary Illyes nel 2024 e’ chiara: il limite non si applica a tutto il sito, ma alla singola risorsa HTML. CSS, JavaScript e immagini hanno altre regole.

Limiti per tipo di file: la tabella che conta

  • HTML: limite morbido a 15MB. Oltre, troncamento del download.
  • CSS e JavaScript: nessun limite dichiarato ma Googlebot puo’ decidere di non scaricare risorse troppo pesanti se compromettono il render budget.
  • Immagini: nessun cap fisso ma immagini sopra i 5-10MB vengono spesso scartate per indicizzazione Google Images.
  • PDF: limite reale intorno ai 10-15MB per il contenuto testuale estraibile. PDF piu’ grandi vengono indicizzati solo parzialmente.
  • Video: Googlebot non scarica i video, legge solo i metadati e la trascrizione tramite VideoObject schema.
  • Robots.txt: limite di 500KB. Oltre, viene troncato.
  • Sitemap XML: 50MB non compressi e massimo 50.000 URL per sitemap. Per siti grandi si usano sitemap indices.

L’architettura di scansione: come Googlebot decide cosa scaricare

Googlebot non agisce in modo lineare. Tre componenti interagiscono: il crawl scheduler decide quali URL scansionare e con quale priorita’, il fetcher esegue le richieste HTTP rispettando il crawl budget e il render service esegue il JavaScript se necessario. Il rendering e’ una fase separata e costosa: per molti siti Google scansiona prima l’HTML, poi aggiunge il rendering in una coda differita.

Il crawl budget per un sito dipende da due variabili: capacita’ del server (se risponde lento, Google riduce le richieste) e domanda di crawl (siti aggiornati spesso ricevono piu’ visite). Un sito con 500 URL e ottimo uptime non ha problemi di budget. Un e-commerce con 200.000 URL e tempi di risposta sopra i 2 secondi rischia che nuove pagine vengano scoperte in giorni anziche’ in ore.

Casi limite che vediamo spesso in audit

I problemi reali che troviamo in audit per le PMI italiane sono quasi sempre questi cinque:

  1. Pagine prodotto WooCommerce sopra i 3MB perche’ caricano 40 immagini full HD in pre-render.
  2. PDF cataloghi sopra i 15MB con tutto il contenuto in immagini scansionate (non testo). Googlebot non riesce a indicizzarli.
  3. Robots.txt generati da plugin con 800KB di esclusioni: vengono troncati e quindi non rispettati interamente.
  4. Sitemap troppo grandi (oltre i 50.000 URL) generate da WP automaticamente senza sitemap index.
  5. JavaScript di terze parti (tag manager, chat widget, banner cookie) che bloccano il render e tagliano l’indicizzazione del contenuto reale.

Cosa fare per ottimizzare il crawl budget

Le azioni concrete che spostano davvero l’ago sono poche, ma vanno fatte tutte:

  • Pulizia HTML: rimuovere inline base64, ridurre CSS critico, eliminare commenti e codice morto.
  • Lazy load corretto: usare loading="lazy" per immagini sotto la fold, ma evitare lazy load per i contenuti critici.
  • Sitemap modulari: dividere per tipo di contenuto (post, prodotti, categorie) e usare un sitemap index.
  • PDF di qualita’: se devi indicizzare un catalogo, esportalo come PDF testuale, non come scansione di immagini. Dimensione massima 10MB.
  • Robots.txt minimale: 100-200 righe sono piu’ che sufficienti per la maggior parte dei siti. Se serve di piu’, stai sbagliando approccio.
  • Monitoraggio dei log: leggere i log del server una volta al mese ti mostra quali URL Googlebot scansiona davvero e quali ignora. E’ il metodo piu’ onesto per capire il tuo crawl budget reale.

In pratica per la tua agenzia o PMI

  • Audit veloce mensile: scarica i log del server, filtra User-Agent Googlebot, conta richieste e dimensioni medie. Se la media supera 1MB per richiesta HTML, hai un problema.
  • Test PageSpeed Insights sulle 10 pagine piu’ importanti: se il peso totale e’ sopra i 2MB, c’e’ lavoro da fare.
  • Sitemap check: apri sitemap.xml e verifica che nessun file superi 50MB o 50k URL. Se si’, spezza in piu’ file con un sitemap index.
  • PDF: controlla tutti i PDF del sito con un crawler tipo Screaming Frog. Quelli sopra 10MB vanno rifatti.
  • Robots.txt: confronta la dimensione con 500KB. Se sei vicino al limite, semplifica.

I limiti di Googlebot non sono una curiosita’ tecnica: sono i confini reali entro cui il tuo sito riesce a essere visto. Conoscere l’architettura di scansione ti permette di costruire siti che il bot legge interamente, senza troncamenti, senza pagine ignorate. E’ la differenza tra essere indicizzati e essere indicizzati bene.