Meta robots e X-Robots-Tag: guida completa alle direttive

Quando hai bisogno di un controllo a livello di pagina o di risorsa su come i motori di ricerca trattano i tuoi contenuti, due meccanismi sono al centro della SEO moderna: il meta tag robots (un elemento HTML) e l'X-Robots-Tag (un header di risposta HTTP). Insieme ti permettono di indicare ai crawler se indicizzare una pagina, seguire i suoi link, mostrare una copia in cache, visualizzare uno snippet o persino mostrare un'anteprima di immagine — il tutto senza toccare il robots.txt. Questo articolo è un approfondimento tecnico su ogni direttiva, come funziona il targeting per bot, cosa succede quando le regole sono in conflitto e gli errori che mettono in difficoltà anche i team più esperti.

Meta robots tag vs X-Robots-Tag: cosa è cosa

Il meta tag robots

Posizionato all'interno dell'<head> di un documento HTML, il meta tag robots è il modo più familiare per impartire direttive di indicizzazione:

<meta name="robots" content="noindex, nofollow">

L'attributo name identifica il target (tutti i bot quando impostato su robots, o un crawler specifico come googlebot). L'attributo content contiene un elenco di direttive separato da virgole. Poiché risiede nell'HTML, funziona solo per documenti che browser e crawler analizzano effettivamente come pagine web.

L'header HTTP X-Robots-Tag

L'X-Robots-Tag ottiene lo stesso risultato ma a livello HTTP:

X-Robots-Tag: noindex, nofollow

Essendo un header di risposta, funziona su qualsiasi tipo di risorsa — PDF, immagini, file video, feed JSON, sitemap XML — non solo pagine HTML. Questo lo rende indispensabile per controllare le risorse non HTML che i motori di ricerca potrebbero altrimenti indicizzare.

Puoi anche puntare un bot specifico anteponendo le direttive:

X-Robots-Tag: googlebot: noindex

Riferimento completo delle direttive

noindex

Dice al crawler di non aggiungere la pagina all'indice di ricerca. Se la pagina è già indicizzata, verrà rimossa dopo la prossima scansione. Questa è la direttiva più importante per tenere fuori dai risultati di ricerca pagine private, di staging o di basso valore. Nota: il crawler deve comunque poter accedere alla pagina per leggere la direttiva. Bloccare l'URL nel robots.txt impedisce al bot di vedere il tag noindex, quindi la pagina potrebbe restare indicizzata in base a segnali esterni.

nofollow

Istruisce il crawler a non seguire alcun link in uscita dalla pagina ai fini del ranking o della scoperta. Questo è diverso dall'attributo rel="nofollow" sui singoli elementi <a>, che riguarda un singolo link. Il nofollow a livello meta si applica a tutti i link della pagina. Usalo con parsimonia — un nofollow indiscriminato può interrompere il flusso di link equity interno e impedire la scoperta di pagine importanti.

noarchive

Impedisce ai motori di ricerca di mostrare una copia in cache della pagina nei risultati. La pagina può comunque essere indicizzata e apparire nella ricerca, ma gli utenti non vedranno un link "Copia cache". Utile per pagine con contenuti sensibili al tempo o informazioni sui prezzi che non dovrebbero essere visualizzate in forma obsoleta.

nosnippet

Impedisce al motore di ricerca di mostrare qualsiasi snippet di testo o anteprima video nella pagina dei risultati. La pagina può comunque posizionarsi e apparire, ma senza una descrizione sotto il titolo. È uno strumento drastico — la maggior parte dei siti beneficia degli snippet, quindi applicalo solo quando requisiti legali o di privacy lo richiedono.

max-snippet:[numero]

Controlla la lunghezza massima in caratteri dello snippet di testo mostrato nei risultati. Ad esempio, max-snippet:50 limita lo snippet a 50 caratteri. Impostarlo a 0 equivale a nosnippet. Impostarlo a -1 significa nessun limite — Google può usare tanto testo quanto ritiene utile. Questo ti permette di regolare la lunghezza dello snippet senza rimuoverli del tutto.

max-image-preview:[impostazione]

Definisce la dimensione massima delle anteprime di immagine mostrate nei risultati di ricerca. Valori accettati:

  • none — nessuna anteprima di immagine.
  • standard — un'immagine di anteprima di dimensione predefinita.
  • large — un'anteprima più grande, che può aumentare la visibilità in Discover e nelle funzionalità SERP ricche di immagini.

Impostare max-image-preview:large è spesso consigliato se vuoi che le tue pagine siano idonee per Google Discover e i risultati visivi ricchi.

max-video-preview:[numero]

Imposta la durata massima in secondi per un'anteprima video. Un valore di 0 disabilita le anteprime video. Un valore di -1 consente una durata di anteprima illimitata. Questo è rilevante per le pagine che incorporano contenuti video e vogliono controllare quanto ne mostrano i motori di ricerca.

unavailable_after:[data]

Dice al motore di ricerca di smettere di mostrare la pagina dopo una data e ora specifiche. Il formato segue RFC 850 o ISO 8601. Dopo la data specificata, la pagina viene trattata come se avesse una direttiva noindex. Perfetto per pagine di eventi, promozioni a tempo limitato o annunci di lavoro che dovrebbero scomparire automaticamente dai risultati quando scadono.

<meta name="robots" content="unavailable_after: 2026-06-30T23:59:59+00:00">

notranslate

Dice a Google di non offrire una traduzione della pagina nei risultati di ricerca. La pagina originale appare comunque, ma gli utenti che navigano in una lingua diversa non vedranno un link "Traduci questa pagina".

noimageindex

Richiede che le immagini nella pagina non vengano indicizzate. Nota che se l'immagine è referenziata da un'altra pagina senza questa direttiva, potrebbe comunque essere indicizzata. Questa direttiva non è universalmente supportata da tutti i motori di ricerca.

Targeting per bot

Entrambi i meccanismi supportano il targeting di crawler specifici. Nel meta tag, sostituisci robots con il nome del bot:

<meta name="googlebot" content="noindex">
<meta name="bingbot" content="noarchive">

Puoi includere più meta tag, ognuno rivolto a un bot diverso. Le direttive in un tag specifico per bot sovrascrivono il tag generico robots per quel bot. Ad esempio:

<meta name="robots" content="noindex">
<meta name="googlebot" content="index">

In questo caso, Googlebot vede index (dal suo tag specifico) e ignora il noindex generico. Tutti gli altri bot seguono la regola generica e non indicizzano. Questo è potente per scenari in cui vuoi contenuti in un motore di ricerca ma non in altri.

Con l'header X-Robots-Tag, il targeting per bot usa un prefisso:

X-Robots-Tag: googlebot: nosnippet
X-Robots-Tag: bingbot: noarchive

Più header X-Robots-Tag possono apparire nella stessa risposta HTTP, ognuno con il proprio prefisso bot e direttive.

Regole di priorità quando le direttive sono in conflitto

Capire come i motori di ricerca risolvono i segnali in conflitto è fondamentale. Le regole generali sono:

  1. La direttiva più restrittiva prevale. Se un meta tag robots dice index e l'header X-Robots-Tag dice noindex, la pagina non verrà indicizzata. I motori di ricerca combinano tutte le direttive applicabili e applicano l'interpretazione più restrittiva.
  2. Le direttive specifiche per bot sovrascrivono quelle generiche per quel bot. Un tag <meta name="googlebot"> ha la precedenza su <meta name="robots"> per Googlebot specificamente.
  3. Il blocco di robots.txt impedisce la lettura delle direttive. Se robots.txt blocca un URL, il crawler non recupera mai la pagina, non legge mai il meta tag o l'header, e quindi non elabora mai la direttiva. Una pagina bloccata con un tag noindex potrebbe restare indicizzata perché il bot non ha mai visto l'istruzione.
  4. Entrambe le fonti vengono combinate. Meta robots e X-Robots-Tag non si escludono a vicenda — sono additivi. Un crawler legge entrambi e unisce tutte le direttive applicabili in un unico set di istruzioni.

Errori comuni e come evitarli

Bloccare il crawling e aspettarsi che noindex funzioni

Questo è l'errore più frequente. Una pagina è bloccata nel robots.txt e ha anche <meta name="robots" content="noindex">. Poiché il bot non può recuperare la pagina, non vede mai la direttiva noindex. La pagina potrebbe restare nell'indice indefinitamente in base ai link in entrata e all'anchor text. Soluzione: se vuoi deindicizzare una pagina, consenti il crawling in modo che il bot possa leggere il tag noindex.

Applicare noindex a pagine paginate o filtrate con disattenzione

Marcare le pagine di listing paginate come noindex può orfanizzare i prodotti o gli articoli collegati da quelle pagine più profonde. I motori di ricerca potrebbero smettere di seguire i link interni perché le pagine che li portano sono escluse dall'indice. Soluzione: mantieni le pagine paginate indicizzabili, usa rel="canonical" puntando al listing principale o usa noindex, follow per permettere la scoperta dei link impedendo il gonfiamento dell'indice.

Usare nofollow sui link interni per il "PageRank sculpting"

Anni fa, i SEO usavano il nofollow interno per incanalare il link equity. Google ha dichiarato che l'equity viene comunque consumato — semplicemente evapora anziché essere ridistribuito. Soluzione: usa un'architettura del sito adeguata e controlli di crawling appropriati.

Dimenticare X-Robots-Tag sulle risorse non HTML

PDF, immagini e altri file multimediali non possono portare un meta tag. Se non devono essere indicizzati, l'unica opzione è l'header X-Robots-Tag. Molti team dimenticano di configurare il web server o il CDN per aggiungere questo header per i tipi di contenuto non HTML. Soluzione: aggiungi regole a livello server (in Apache, Nginx o nel tuo CDN) per iniettare header X-Robots-Tag sui tipi di file che ne hanno bisogno.

Lasciare ambienti di staging o sviluppo senza noindex

I siti di staging accidentalmente pubblici e privi di una direttiva noindex possono essere indicizzati, creando problemi di contenuto duplicato con il sito di produzione. Soluzione: proteggi sempre gli ambienti di staging con l'autenticazione o, come minimo, con un meta tag noindex e un header X-Robots-Tag a livello di sito.

Ignorare la direttiva unavailable_after per contenuti temporanei

Le pagine di eventi e le promozioni limitate che restano nei risultati di ricerca mesi dopo la scadenza creano un'esperienza utente scadente. Soluzione: usa unavailable_after con la data di scadenza in modo che la pagina venga automaticamente deindicizzata quando il contenuto diventa irrilevante.

Come verificare le tue direttive con Spider.es

Spider.es scansiona il tuo sito come fanno i bot dei motori di ricerca, leggendo sia i meta tag robots che gli header X-Robots-Tag per ogni URL. Il report di audit segnala:

  • Pagine con direttive in conflitto (es. noindex nell'header ma index nel meta tag).
  • Pagine bloccate dal robots.txt che portano anche direttive di indicizzazione che il bot non vedrà mai.
  • Risorse non HTML prive di un header X-Robots-Tag quando potrebbe essere necessario.
  • Date unavailable_after scadute che avrebbero dovuto attivare la deindicizzazione.

Eseguire un crawl regolare e rivedere questi segnali assicura che i tuoi controlli di indicizzazione funzionino come previsto — e non falliscano silenziosamente.

Considerazioni finali

I meta tag robots e gli header X-Robots-Tag sono gli strumenti di precisione del controllo del crawling. Mentre il robots.txt è un cancello ampio, queste direttive ti permettono di regolare finemente cosa viene indicizzato, come appare nei risultati e quando scade. Padroneggia il set di direttive, comprendi le regole di priorità, evita le insidie comuni e verifica regolarmente. La tua presenza nei risultati di ricerca ne dipende.

Torna al blog