File Robots.txt cos’è e come ottimizzarlo
I motori di ricerca come Google, Bing e altri inviano crawler (spider) a scansionare i contenuti delle pagine, creando indici e posizionamenti in SERP. A volte, però, potremmo non voler far indicizzare certe risorse o aree specifiche del sito. Ecco dove entra in gioco robots.txt: un semplice file di testo capace di “dialogare” con gli spider, indicando quali sezioni del tuo dominio possono essere visitate e quali no.
Tutti i siti hanno bisogno di un robots.txt?
Quasi sempre. Se un sito è piccolo, ben organizzato, e non ha sezioni “riservate,” la presenza di un robots.txt potrebbe non essere strettamente necessaria. Tuttavia, per molti casi — siti estesi, aree private, pagine duplicate — definire regole nel file robots.txt semplifica la vita ai crawler, migliorando la gestione del crawl budget e la pulizia dell’indice.
Che Cos’è il File Robots.txt e Come Funziona
Il file robots.txt è un documento di testo posizionato nella root del tuo dominio (es. https://esempio.it/robots.txt), che specifica, riga dopo riga, istruzioni per i crawler. Generalmente consiste in due comandi fondamentali: User-agent: (per indicare a quale bot ti riferisci) e Disallow: (per indicare quali percorsi bloccare).
Esempio base:
User-agent: *
Disallow: /admin/
Disallow: /cartella-privata/
Qui stai dicendo a tutti i motori di ricerca (*) di non scansionare le cartelle “/admin/” e “/cartella-privata/”. Ci sono però aspetti e sintassi più sofisticati, come pattern con wildcard (*) per bloccare determinate estensioni, e regole di “Allow” se vuoi sbloccare un sotto-percorso particolare.
Limiti del robots.txt
È bene sapere che non è un metodo infallibile per nascondere pagine “segrete.” Un crawler può ignorare le regole, o un utente può condividere direttamente l’URL in SERP. Per rimuovere del tutto una pagina dall’indice, meglio usare meta directives (noindex) o protezioni con password. Robots.txt serve soprattutto a gestire lo scanning, non la sicurezza.
In questo articolo
- Perché il robots.txt è Importante per la SEO
- Creazione e Posizionamento del File robots.txt
- Principali Direttive e Sintassi
- Quando Usare robots.txt e Quando Preferire i Meta Directives
- Errori Comuni e Best Practice di Utilizzo
- Robots.txt e Crawl Budget: Come Interagiscono
- Esempi Pratici: Applicazioni su Diversi Tipi di Sito
- Suggerimenti
Perché il robots.txt è Importante per la SEO
Bloccare Pagine Inutili
Molti siti generano sezioni duplicate (pagine di ricerca interne, archivi di tag, cartelle staging) che non interessano indicizzare. Usando robots.txt si evita di sprecare risorse di crawling e di sporcare l’indice con contenuti non rilevanti.
Migliorare il Crawl Budget
Se un sito è molto esteso, con migliaia di pagine, i motori di ricerca potrebbero avere difficoltà a scansionare tutto. Bloccando le parti superflue, si concentra la scansione su quelle più importanti, beneficiando anche in termini di velocità di indicizzazione e ranking.
Prevenire Duplicati
In congiunzione con i meta robot, il robots.txt aiuta a evitare che Google indicizzi versioni duplicate di pagine (come /print/ o ?sessionid=). Attenzione però a non usare robots.txt per bloccare pagine che vuoi rimuovere dalla SERP: in quel caso, Google potrebbe comunque indicizzare l’URL se lo trova da link esterni (mostrandolo, ma senza contenuti).
Creazione e Posizionamento del File robots.txt
Dove Metterlo
Per convenzione, robots.txt va nella cartella root del tuo dominio, quindi raggiungibile via https://www.tuodominio.it/robots.txt. Se è in un’altra posizione, i crawler non lo cercheranno in modo automatico.
Nome e Formato
- Nome file: “robots.txt” tutto minuscolo, case-sensitive.
- Codifica: testo semplice, ASCII o UTF-8.
- Struttura: tipicamente in ogni sezione si definisce un User-agent: (bot destinatario) e a seguire le regole Disallow: o Allow:
Esempio:
User-agent: Googlebot
Disallow: /cartella-test/
Allow: /cartella-test/immagini/
User-agent: *
Disallow: /privato/
Principali Direttive e Sintassi
- User-agent: Specifica a quale crawler stai parlando (es. User-agent: Googlebot per Google, User-agent: Bingbot per Bing). Se metti User-agent: *, vale per tutti.
- Disallow: Elenca i percorsi (directory o file) da non scansionare.
- Allow: (opzionale) in alcuni casi si usa per sbloccare un sotto-percorso all’interno di un percorso disallow generale.
- Sitemap: (non sempre usato) Indicare la locazione della tua sitemap.xml, es. Sitemap: https://tuodominio.it/sitemap.xml
Esempio
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://tuodominio.it/sitemap.xml
In questo caso, blocchi l’accesso a tutta la cartella /wp-admin/ per ogni bot, ma consenti la chiamata a admin-ajax.php
Quando Usare robots.txt e Quando Preferire i Meta Robot
Se blocchi una pagina con robots.txt, Google non può accedere al contenuto, ma potrebbe ugualmente mostrarne l’URL nei risultati di ricerca, se ci sono link esterni che la puntano. Comparirà forse un titolo e un snippet limitato. Per escludere totalmente la pagina dalla SERP, meglio usare noindex in un meta tag o uno status code (ad es. 410 se vuoi eliminarla in modo permanente) — e consentire il crawling della pagina in modo che Google legga effettivamente il noindex.
Situazioni Ideali per robots.txt
- File multimediali (PDF, immagini) che non vuoi far apparire in SERP. I meta directive non funzionano bene sui PDF, per esempio.
- Directory di test, staging, o cartelle con script riservati.
- Paghe interne come risultati di ricerca interni, parametri UTM, sessioni.
Scegliere noindex
Per la maggior parte dei casi in cui vuoi rimuovere una pagina dai risultati, l’approccio migliore rimane il meta directive noindex. Google potrà visitare la pagina, leggere il noindex, e di conseguenza escluderla dalla SERP in modo completo.
Errori Comuni e Best Practice di Utilizzo
Errori Comuni
- Bloccare l’intero sito accidentalmente con User-agent: * Disallow: / (o Disallow: /) causando la deindicizzazione completa.
- Bloccare risorse JS/CSS fondamentali al rendering: Google non vede il layout corretto e potrebbe valutarlo male.
- Dimenticare che una volta “disallow,” Google non può leggere meta tag noindex, e quindi la pagina potrebbe apparire in SERP come URL orfano.
Best Practice
- Mantieni il file corto e chiaro: Limitati a regole precise.
- Test con la Search Console (funzione “robots.txt Tester”) o con strumenti equivalenti.
- Non bloccare /wp-content/themes/ o /assets/ se da lì carichi CSS e script importanti per il layout (Google vuol vederli per valutare la user experience).
- Attenzione alle wildcard: Disallow: /image* blocca qualsiasi URL che inizia con “/image,” potresti involontariamente bloccare anche pagine che contengono “/images2024.”
Robots.txt e Crawl Budget: Come Interagiscono
Ottimizzare il Crawl Budget
Se hai un sito con migliaia di pagine, bloccare sezioni irrilevanti in robots.txt (es. pagine di test, parametri di sessione, duplicati) consente a Google di non “sprecare” crawl su risorse inutili, concentrandosi su ciò che conta davvero per l’indicizzazione.
Attenzione: Questo non aumenta magicamente il tuo budget, ma evita di spenderlo su directory e contenuti superflui.
Evitare di Bloccare Risorse Chiave
Se blocchi un file CSS cruciale, Google potrebbe non rendere correttamente la pagina, peggiorando la valutazione della user experience. Meglio quindi “lasciare libera” la cartella con CSS e JS principali.
Esempi Pratici: Applicazioni su Diversi Tipi di Sito
WordPress Blog
Spesso si vedono regole come:
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-includes/
Disallow: /tag/
Disallow: /comments/
S’intende bloccare cartelle dell’admin (tranne l’ajax) e alcuni archivi duplicati (tag, comment feed). Attenzione a non bloccare /wp-content/uploads/, se lì risiedono immagini essenziali.
E-commerce
Se si hanno filtri parametrici (es. ?brand= o ?color=), potresti bloccarli con:
User-agent: *
Disallow: /*?brand=
Disallow: /*?color=
Così eviti duplicazioni massive. Mantenere però la cartella “/css/” e “/js/” accessibili, per non penalizzare la resa della pagina.
Siti di Test o Staging
Magari hai un subdominio staging.miosito.it; potresti bloccarlo integralmente:
User-agent: *
Disallow: /
Così i motori non indicizzeranno la versione di prova.
Nel caso di staging con password, robots.txt è un di più; la protezione in .htaccess rimane più sicura perché impedisce l’accesso a chiunque non abbia le credenziali.
Suggerimenti
Il robots.txt è uno strumento semplice ma molto potente. Ti permette di:
- Bloccare intere sezioni del sito ai motori di ricerca.
- Gestire la scansione se hai un sito ampio e temi uno spreco di risorse (crawl budget).
- Evitare l’indicizzazione di contenuti duplicati o non rilevanti (come test, aree riservate, pagine di ricerca interna).
Però èimportante non abusarne e comprendere i suoi limiti: un URL bloccato può comunque apparire in SERP se linkato altrove, e bloccare per errore cartelle vitali (CSS, JS, immagini cruciali) rischia di rovinare l’aspetto del sito e penalizzare la SEO.
Progetti diversi, priorità diverse.
Qui trovi le verticali su cui lavoro.
Chi sono io?
Ciao! Mi chiamo Eleonora Boretti e lavoro come consulente SEO freelance dal 2018.
Collaboro con agenzie e clienti diretti per migliorare la visibilità online di molti progetti e ottenere risultati concreti.
Amo vedere i progetti crescere e scalare nel tempo, con strategie SEO su misura.
Sono basata a Firenze, ma lavoro come consulente SEO in tutta Italia, anche da remoto.
Se vuoi conoscermi meglio, scopri la mia storia nella pagina dedicata come consulente SEO Firenze.