Sitemap XML
Cos'è una sitemap XML, la sua anatomia, i tag ignorati (priority/changefreq), lastmod accurato, i limiti di 50 000/50MB, hreflang nelle sitemap e come inviarne una.
Lingue
1 segnale di evidenza in questa pagina
- Strumento live correlatoGoogle Index Checker
Una sitemap XML è un file UTF-8 che elenca gli URL canonici e indicizzabili che vuoi che i motori di ricerca conoscano — ciascuno in un blocco <url> con un <loc> obbligatorio e un <lastmod> opzionale. Aiuta i motori a scoprire gli URL ma non garantisce l'indicizzazione; il suo vero valore è la diagnostica inviati-vs-indicizzati in Search Console. Google ignora <priority> e <changefreq>, e usa <lastmod> solo quando è verificabilmente accurato (aggiornamenti significativi, non un generico 'oggi'). Una sitemap ha un limite di 50 000 URL o 50MB non compressi — oltre si dividono i file e si fa riferimento a essi da un indice di sitemap. Includi solo URL canonici, indicizzabili e con stato 200; escludere un URL dalla sitemap non equivale a noindexarlo. Le sitemap sono anche il posto più semplice per gestire hreflang su larga scala. Fai riferimento ad essa in robots.txt e inviala in Search Console e Bing Webmaster Tools.
Evidence for this claim The XML sitemap protocol lists canonical URL locations and optional metadata, with limits of 50,000 URLs and 50 MB uncompressed per sitemap. Scope: Sitemaps protocol and current Google-supported limits. Confidence: high · Verified: Sitemaps XML format Evidence for this claim Google treats sitemaps as discovery hints rather than guarantees and supports submission through Search Console or robots.txt references. Scope: Current Google sitemap behavior and submission methods. Confidence: high · Verified: Google Search Central: Build and submit a sitemapTL;DR — Una sitemap XML è un file che elenca le pagine del tuo sito che vuoi che i motori di ricerca trovino. Ogni pagina ha una voce: il suo URL completo e, opzionalmente, la data dell’ultima modifica significativa. Aiuta i motori a scoprire le tue pagine — non li obbliga a indicizzarle o classificarle. La inserisci in un URL come
/sitemap.xml, la colleghi dal tuorobots.txte la invii in Google Search Console e Bing Webmaster Tools.
Cos’è una sitemap XML
Una sitemap XML è un elenco dei tuoi URL, scritto in un formato strutturato semplice, che consegni direttamente ai motori di ricerca. Invece di farli scoprire ogni pagina seguendo i link, fornisci loro un inventario pulito delle pagine che ti interessano.
Google descrive una sitemap come “a file where you provide information about the pages, videos, and other files on your site.” (traduzione) «un file in cui fornisci informazioni sulle pagine, i video e altri file del tuo sito.» La parte “XML” significa solo che è scritta in un formato con tag che le macchine leggono facilmente. Ecco l’esempio valido più piccolo:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.example.com/foo.html</loc>
<lastmod>2026-06-04</lastmod>
</url>
</urlset>Leggendola dall’alto verso il basso: la prima riga dice “questo è XML, codificato come UTF-8.” Il
<urlset> racchiude l’intero elenco. Ogni <url> è una pagina. <loc> è l’indirizzo web completo della pagina. <lastmod> è la data dell’ultima modifica significativa —
ed è opzionale.
Cosa fa (e cosa non fa)
Una sitemap aiuta i motori a trovare le tue pagine più velocemente — soprattutto le nuove pagine, o le pagine che non sono ben collegate da altre parti del tuo sito. Questo è il lato positivo.
L’inganno che molti non notano: l’invio di una sitemap non garantisce l’indicizzazione. Google decide ancora se ogni pagina merita di essere mantenuta. Una sitemap è un modo per aiutare i motori di ricerca a trovare i tuoi contenuti, non un comando per indicizzarli. Il vero valore per me è ciò che puoi vedere dopo in Search Console — quante degli URL che hai inviato sono stati effettivamente indicizzati. Quel divario è un utile strumento diagnostico.
Cosa inserirci
Mantienila pulita. Una sitemap dovrebbe elencare solo le pagine che vuoi effettivamente indicizzare —
le tue pagine reali e canoniche che restituiscono una normale risposta 200. Lascia fuori
reindirizzamenti, URL duplicati e qualsiasi cosa impostata su noindex. Pensala come un
inventario ordinato del tuo set indicizzabile, niente di più.
Un punto importante di confusione: lasciare un URL fuori dalla tua sitemap non lo
rimuove da Google. Una sitemap pubblicizza le pagine; non le nasconde. Per
tenere effettivamente una pagina fuori dall’indice hai bisogno di un tag noindex — non di una voce
mancante nella sitemap.
Dove va e come inviarla
- Salvala in un URL sensato —
/sitemap.xmlè il default convenzionale. - Aggiungi una riga al tuo
robots.txtcosì i motori possono trovarla:Sitemap: https://www.example.com/sitemap.xml. - Inviala in Google Search Console (report Sitemaps) e Bing Webmaster Tools.
La maggior parte delle piattaforme moderne (WordPress, Shopify, Wix, Squarespace, Webflow) generano una sitemap per te automaticamente — di solito devi solo inviarla. Vuoi l’anatomia completa, i limiti, i tag che Google ignora e come funziona hreflang nelle sitemap? Passa alla scheda Avanzate.
Evidence for this claim The XML sitemap protocol lists canonical URL locations and optional metadata, with limits of 50,000 URLs and 50 MB uncompressed per sitemap. Scope: Sitemaps protocol and current Google-supported limits. Confidence: high · Verified: Sitemaps XML format Evidence for this claim Google treats sitemaps as discovery hints rather than guarantees and supports submission through Search Console or robots.txt references. Scope: Current Google sitemap behavior and submission methods. Confidence: high · Verified: Google Search Central: Build and submit a sitemapTL;DR — Una sitemap XML è un file UTF-8 di URL
<loc>canonici e indicizzabili, ciascuno con un<lastmod>opzionale. Aiuta la scoperta, non l’indicizzazione — il vantaggio è il segnale inviati-vs-indicizzati in Search Console. Google ignora<priority>e<changefreq>e usa<lastmod>solo quando è verificabilmente accurato (aggiornamenti significativi, mai un “oggi” generico). Un file ha un limite di 50 000 URL o 50MB non compressi — oltre, dividi e usa un indice di sitemap. Includi solo URL200, canonici e indicizzabili; escludere un URL non è la stessa cosa che non indicizzarlo. XML non è l’unico formato accettato (RSS/Atom/txt funzionano anche), e le sitemap sono il posto più facile per gestire hreflang su larga scala — anche se queste annotazioni diventano attive con un ritardo, non istantaneamente. Riferiscilo inrobots.txte invialo in Search Console + Bing Webmaster Tools.
Cos’è realmente una sitemap XML
Una sitemap XML è un file, scritto secondo il protocollo sitemaps.org 0.9, che elenca
le URL del tuo sito che vuoi far conoscere ai motori di ricerca. La definizione di Google: “Una
sitemap è un file in cui fornisci informazioni sulle pagine, i video e altri
file del tuo sito, e le relazioni tra di essi.” È un aiuto alla scoperta e un
diagnostico della copertura — esplicitamente non una garanzia: “Una sitemap aiuta i motori di
ricerca a scoprire le URL del tuo sito, ma non garantisce che tutti gli elementi nella
tua sitemap vengano indicizzati e scansionati.”
Questa impostazione è importante, perché è qui che molti sforzi vengono sprecati. La sitemap non è una leva di ranking e non è un comando di indicizzazione. Ecco un esempio minimo annotato:
<?xml version="1.0" encoding="UTF-8"?> <!-- XML declaration; UTF-8 -->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <!-- root + namespace -->
<url> <!-- one entry per page -->
<loc>https://www.example.com/foo.html</loc> <!-- required: absolute URL -->
<lastmod>2026-06-04</lastmod> <!-- optional: last significant change -->
</url>
</urlset>Anatomia
- La dichiarazione XML —
<?xml version="1.0" encoding="UTF-8"?>. Google è inequivocabile: “Il file sitemap deve essere codificato in UTF-8.” Se la codifica è errata, i caratteri speciali si rompono. <urlset>+ namespace — l’elemento radice, conxmlns="http://www.sitemaps.org/schemas/sitemap/0.9". Il namespace è ciò che dice al parser che si tratta di una sitemap; un namespace errato o mancante è un errore comune in Search Console.<url>— un blocco per pagina.<loc>— obbligatorio. “Usa URL assolute e complete nelle tue sitemap” — non percorsi relativi, e sotto i ~2 048 caratteri. Tutti i valori devono essere escapati come entità:&diventa&,'diventa',"diventa",>diventa>, e un minore letterale diventa<.<lastmod>— opzionale; la data in cui la pagina è cambiata significativamente (maggiori dettagli sulla regola di onestà sotto).
La verità sui tag ignorati
Questo è l’aspetto più obsoleto nella maggior parte dei tutorial sulle sitemap. Due tag
legacy — <priority> e <changefreq> — sono ignorati da Google. Gary
Illyes ha definito priority “essenzialmente un sacco di rumore,” e John Mueller ha detto
che priority e change frequency “non giocano più un ruolo così importante con le
sitemap.” Bing ha confermato lo stesso: changefreq e priority non influenzano più
la sua scansione o il ranking. Puoi lasciarli (non fanno danni) o rimuoverli
— semplicemente non fanno nulla.
<lastmod> è diverso — non metterlo insieme ai tag ignorati. Google
usa <lastmod>, ma solo quando si fida, e quella fiducia è più o meno
binaria: o Google crede alle tue date o no. La regola è che la data dovrebbe
riflettere un cambiamento significativo — “un aggiornamento al contenuto principale, ai dati
strutturati o ai link sulla pagina è generalmente considerato significativo, mentre
un aggiornamento alla data di copyright non lo è.” Il modo di fallire che vedo costantemente è
marcare ogni URL con la data di oggi a ogni build. Questo è controproducente:
Mueller l’ha definito “semplicemente pigro,” notando che è banale per i motori riconoscerlo
e rende solo più difficile per loro individuare pagine realmente aggiornate. Mentisci abbastanza
spesso e, secondo Google, “alla fine non ti crederemo più.” Bing si affida
ancora di più a <lastmod> come segnale di freschezza di quanto faccia Google
— quindi una data accurata ti aiuta su entrambi i motori, e una falsa ti danneggia su
entrambi.
Posizionamento, denominazione, codifica e compressione
- Posizionamento/nome. Non esiste un nome file obbligatorio, ma
/sitemap.xmlalla radice è la convenzione. Di default, una sitemap influisce solo sugli URL al di sotto del proprio percorso, quindi tienila abbastanza in alto da coprire tutto ciò che elenca. L’unica eccezione: puoi ospitare una sitemap per un sito diverso se hai verificato la proprietà di quel sito e il suorobots.txtpunta alla posizione effettiva della sitemap — Google chiama questo cross-submission, ed è il meccanismo dietro un sitemap index che aggrega sitemap ospitate altrove. - Codifica. UTF-8, sempre.
- Compressione. Puoi comprimere una sitemap con gzip (servirla come
.xml.gz), il che vale la pena su file di grandi dimensioni. Sfumatura importante: il limite di 50MB è misurato non compresso — gzip risparmia banda, non margine rispetto al limite di dimensione.
Limiti → dividi + sitemap index
Una singola sitemap è limitata a 50 000 URL o 50MB non compressi, a seconda di quale arriva prima. Google lo afferma direttamente: “All formats limit a single sitemap to 50MB (uncompressed) or 50,000 URLs.” Quando superi uno dei due limiti, dividi l’elenco in più file sitemap e fai riferimento a tutti da un sitemap index — una sitemap di sitemap. Questo è un argomento correlato a sé; la versione breve è che invii l’indice, e un indice può puntare a un massimo di 50 000 sitemap figlie, quindi non esaurirai mai la capacità.
Quali URL includere — e “escludere ≠ noindex”
Includi solo URL che sono indicizzabili, canonici e restituiscono 200. Ciò significa niente reindirizzamenti 3xx, niente duplicati non canonici, niente pagine noindex, niente URL bloccati da robots. Una sitemap pulita del tuo set indicizzabile esatto è ciò che rende significativo il confronto tra inviati e indicizzati in Search Console — se la inquini con spazzatura, hai buttato via la diagnostica.
Ora il punto meccanico che la gente sbaglia: escludere un URL dalla tua sitemap non lo deindicizza. La sitemap è un annuncio, non un cancello. Rimuovere la voce di un URL smette solo di pubblicizzare quella pagina; se Google già la conosce (tramite link, cronologia o un’altra fonte) rimane nell’indice. Gli unici meccanismi che rimuovono effettivamente una pagina sono una direttiva noindex (con crawling consentito così Google può vederla), un 404/410, o lo strumento di rimozione. Quindi “toglilo dalla sitemap” non è mai la risposta giusta a “come faccio a deindicizzare questo.”
Formati di file sitemap accettati
XML non è l’unico formato che Google accetta — vale la pena saperlo per non pensare di essere bloccati a scrivere XML a mano. Google chiama XML “the most versatile of the sitemap formats,” ma legge anche:
- Feed RSS 2,0 / Atom — utili perché molti CMS ne pubblicano già uno; contengono solo URL di pagine.
- mRSS — un feed RSS per media, usato per i video.
- Testo semplice (
.txt) — letteralmente un URL per riga, solo URL di pagine web, UTF-8.
XML è comunque il default giusto perché è l’unico formato che supporta le estensioni (metadati lastmod, annotazioni per immagini, video e hreflang). Gli altri sono solo URL.
hreflang nelle sitemap
Se gestisci un sito multilingue o multiregionale, la sitemap è di solito il posto più facile per gestire hreflang — mantieni l’intero cluster linguistico in un unico file invece di iniettare tag di ritorno in ogni template di pagina. (È uno dei tre posti validi in cui hreflang può vivere; <head> e le intestazioni HTTP sono gli altri.)
Come è implementato. Ogni <url> riceve figli xhtml:link rel="alternate", uno per versione lingua/regione, e dichiari il namespace xmlns:xhtml="http://www.w3.org/1999/xhtml" su <urlset>:
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>https://www.example.com/english/page.html</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://www.example.com/english/page.html"/>
<xhtml:link rel="alternate" hreflang="de" href="https://www.example.de/deutsch/page.html"/>
<xhtml:link rel="alternate" hreflang="x-default" href="https://www.example.com/english/page.html"/>
</url>
<!-- each alternate URL repeats the FULL set, including itself (return tags) -->
</urlset>La regola del tag di ritorno. Questa è la parte che mette nei guai. Ogni elemento <url>
deve elencare ogni versione alternativa della pagina — inclusa se stessa. Google: “Each
<url> element must have a child element <xhtml:link rel="alternate" hreflang="[supported_language-code]"> that lists every alternate version of the
page, including itself.” E deve essere bidirezionale: “If page X links to page
Y, page Y must link back to page X. If this is not the case for all pages that use
hreflang annotations, those annotations may be ignored or not interpreted
correctly.” Aggiungi una voce x-default per il fallback della lingua non corrispondente. Un singolo
tag di ritorno rotto o mancante può invalidare l’intero set.
Il limite conta solo gli URL <loc>. Un sollievo per i grandi siti internazionali: il
limite di 50 000 URL conta solo gli URL delle pagine <loc>, non le alternative
hreflang. Quindi una sitemap con 50 000 pagine, ciascuna con dieci alternative linguistiche,
rientra ancora — sono gli URL di posizione che contano, non gli URL alternativi.
Quando va effettivamente in produzione — giorni di budget, non minuti. Ecco l’aspettativa da impostare, ed è un meccanismo piuttosto che una frase citabile. Google analizza l’hreflang della tua sitemap quando ri-fetches la sitemap, ma le annotazioni prendono effetto solo quando tutti gli URL nel set sono stati (ri)scansionati e i tag di ritorno riconciliati tra loro. Ciò significa che c’è un ritardo reale tra la pubblicazione dell’hreflang e il rispetto delle alternative, e un URL lento da ri-scansionare o rotto nel set può bloccare il resto. Non aspettarti che si attivi nel momento in cui invii — pianifica che si stabilizzi nell’arco di giorni.
Riferiscilo e invialo
robots.txt— aggiungi una rigaSitemap:con l’URL assoluto completo. Questo consente anche ai motori di scoprirlo automaticamente.- Google Search Console — il report Sitemaps (o l’API Search Console) è il metodo di invio principale; è anche dove leggi la diagnostica inviato-vs-indicizzato.
- Bing Webmaster Tools — invia anche lì; Bing lo recupera rapidamente e lo ricontrolla regolarmente.
Una nota di automazione da come la penso: una sitemap dovrebbe essere generata automaticamente dalle pagine che hai effettivamente, così rimane aggiornata. Una sitemap costruita a mano marcisce nel momento in cui il tuo sito cambia. I fratelli di questa pagina — la panoramica delle sitemap, l’indice delle sitemap per i grandi siti, e le estensioni sitemap immagini e sitemap video — coprono il resto della famiglia, e l’argomento più ampio della scoperta collega le sitemap agli altri modi in cui i motori trovano i tuoi URL.
Riepilogo AI
Una sintesi della versione Advanced:
- Una sitemap XML è un file UTF-8 che elenca gli URL canonici e indicizzabili che vuoi far conoscere ai motori di ricerca — ogni
<url>ha un<loc>obbligatorio (URL assoluto) e un<lastmod>opzionale. La radice è<urlset>con il namespacesitemaps.org/0.9. - Aiuta la scoperta, non l’indicizzazione. Inviarla non garantisce che una pagina venga indicizzata; il vero vantaggio è il diagnostico inviate-vs-indicizzate in Search Console.
<priority>e<changefreq>vengono ignorati da Google (e Bing). Non mettere<lastmod>nello stesso gruppo — viene usato, ma solo quando è verificabilmente accurato (modifiche significative ai contenuti, mai una data “oggi” generica).- Limiti: 50 000 URL oppure 50MB non compressi, a seconda di quale viene prima. Oltre, dividi i file e usa un indice sitemap. Gzip è consentito, ma il limite di 50MB si riferisce alla dimensione non compressa.
- Includi solo URL
200, canonici e indicizzabili. Escapa i caratteri& ' " < >. Escludere un URL ≠ non indicizzarlo — la rimozione richiedenoindex/404, non una voce mancante nella sitemap. - XML non è l’unico formato — anche RSS/Atom e
.txtsemplice funzionano (solo URL); XML è l’unico che supporta le estensioni per immagini/video/hreflang. - hreflang nelle sitemap: figli
xhtml:link rel="alternate"+ il namespacexmlns:xhtml; ogni<url>deve elencare tutti gli alternativi incluso se stesso, in modo bidirezionale, piùx-default. Il limite di 50 000 conta solo gli URL<loc>, non gli alternativi. Vengono elaborati al re-fetch della sitemap, ma diventano attivi solo dopo che tutti gli URL nel set vengono ricrawlerizzati/riconciliati — prevedi giorni, non minuti. - Inviala tramite la riga
Sitemap:nelrobots.txt, Google Search Console e Bing Webmaster Tools. Generala automaticamente per mantenerla aggiornata.
Documentazione ufficiale
Documentazione di fonte primaria dai motori di ricerca.
- Panoramica sulle sitemap — cos’è una sitemap, se ti serve e che non garantisce l’indicizzazione.
- Creare e inviare una sitemap — i limiti di 50 000/50MB, il requisito UTF-8, la regola dell’URL assoluto, i formati accettati e la definizione di “aggiornamento significativo” per
<lastmod>. - Gestire le sitemap con un file indice sitemap — dividere sitemap grandi e l’indice sitemap.
- Comunicare a Google le versioni localizzate della tua pagina — hreflang nelle sitemap tramite
xhtml:link, la regola del tag di ritorno ex-default. - Combinare le estensioni delle sitemap — mettere immagini/video/hreflang in una sola sitemap.
- Report sulle sitemap (aiuto di Search Console) — cosa significa ogni errore di invio e come risolverlo.
- Protocollo sitemaps.org — la specifica
0.9sottostante condivisa da tutti i motori.
Bing / Microsoft
- Keeping Content Discoverable with Sitemaps in AI-Powered Search (lug 2025) — la posizione di Bing secondo cui XML è preferito e
<lastmod>è un segnale chiave. - The Importance of Setting the lastmod Tag in Your Sitemap (feb 2023) — perché Bing pesa
<lastmod>per le decisioni di ricrawling.
Citazioni dalla fonte
Dichiarazioni ufficiali di Google e Bing. Ogni link è un deep link che salta al passaggio citato nella pagina di origine.
Google — cos’è una sitemap e cosa fa
- “A sitemap is a file where you provide information about the pages, videos, and other files on your site, and the relationships between them.” — Panoramica delle sitemap. (traduzione) «Una sitemap è un file in cui fornisci informazioni sulle pagine, i video e altri file del tuo sito e sulle relazioni tra di essi.» Vai alla citazione
- “A sitemap helps search engines discover URLs on your site, but it doesn’t guarantee that all the items in your sitemap will be crawled and indexed.” (traduzione) «Una sitemap aiuta i motori di ricerca a scoprire gli URL del tuo sito, ma non garantisce che tutti gli elementi nella tua sitemap vengano indicizzati e scansionati.» Vai alla citazione
Google — formato, limiti e codifica
- “All formats limit a single sitemap to 50MB (uncompressed) or 50,000 URLs.” — Creare e inviare una sitemap. (traduzione) «Tutti i formati limitano una singola sitemap a 50 MB (non compressi) o 50 000 URL.» Vai alla citazione
- “The sitemap file must be UTF-8 encoded.” (traduzione) «Il file della sitemap deve essere codificato in UTF-8.» Vai alla citazione
- “Use fully-qualified, absolute URLs in your sitemaps.” (traduzione) «Usa URL assoluti e completi nelle tue sitemap.» Vai alla citazione
Google — i tag ignorati e le regole su lastmod
- “we ignore those. It’s essentially a bag of noise.” — Gary Illyes, su
<priority>/<changefreq>. (traduzione) «li ignoriamo. È essenzialmente un sacco di rumore.» Leggi la copertura - “Priority and change frequency doesn’t really play that much of a role with Sitemaps anymore.” — John Mueller. (traduzione) «Priorità e frequenza di modifica non giocano più un ruolo così importante con le Sitemap.» Leggi la copertura
- “an update to the main content, the structured data, or links on the page is generally considered significant, however an update to the copyright date is not.” — su cosa dovrebbe riflettere
<lastmod>. (traduzione) «un aggiornamento al contenuto principale, ai dati strutturati o ai link nella pagina è generalmente considerato significativo, mentre un aggiornamento alla data di copyright non lo è.» Vai alla citazione - “setting today’s date in a sitemap file isn’t going to be something that works in favor of anyone, it’s just lazy.” — John Mueller. (traduzione) «impostare la data di oggi in un file sitemap non è qualcosa che gioca a favore di nessuno, è solo pigrizia.» Leggi la copertura
- “it’s binary, or at least was last time I checked. we either trust it or not.” — Gary Illyes, su se Google si fida del tuo
<lastmod>. (traduzione) «è binario, o almeno lo era l’ultima volta che ho controllato. o ci fidiamo o no.» Leggi la copertura
Google — il limite di 50 000 conta gli URL di posizione, non le alternative hreflang
- Il limite di 50 000 URL “it is just the location URL” — non gli URL alternativi hreflang. — John Mueller. (traduzione) «è solo l’URL di posizione» Leggi la copertura
Google — tag di ritorno hreflang
- “Each
<url>element must have a child element<xhtml:link rel="alternate" hreflang="[supported_language-code]">that lists every alternate version of the page, including itself.” (traduzione) «Ogni elemento<url>deve avere un elemento figlio<xhtml:link rel="alternate" hreflang="[supported_language-code]">che elenca ogni versione alternativa della pagina, inclusa se stessa.» — Documentazione sulle versioni localizzate. Vai alla citazione - “If page X links to page Y, page Y must link back to page X. If this is not the case for all pages that use hreflang annotations, those annotations may be ignored or not interpreted correctly.” (traduzione) «Se la pagina X collega alla pagina Y, la pagina Y deve collegare alla pagina X. Se questo non avviene per tutte le pagine che usano annotazioni hreflang, tali annotazioni potrebbero essere ignorate o non interpretate correttamente.» Vai alla citazione
Bing — XML e lastmod
- “XML remains the preferred format for sitemaps, as it supports structured metadata like lastmod, which helps Bing assess content freshness and relevance more effectively.” (traduzione) «XML rimane il formato preferito per le sitemap, poiché supporta metadati strutturati come lastmod, che aiutano Bing a valutare la freschezza e la rilevanza dei contenuti in modo più efficace.» Vai alla citazione
Checklist per la sitemap XML
Costruiscila correttamente
- Il file è codificato in UTF-8, con
<?xml version="1.0" encoding="UTF-8"?>sulla prima riga. - La radice è
<urlset>conxmlns="http://www.sitemaps.org/schemas/sitemap/0.9". - Ogni
<loc>è un URL assoluto completamente qualificato sotto i ~2 048 caratteri. - Tutti i valori sono escapati come entità (
& ' " > <). -
<priority>e<changefreq>rimossi o accettati come ignorati (Google li ignora). -
<lastmod>presente solo dove riflette una modifica significativa — mai un “oggi” generico su ogni URL. - Il file è sotto 50 000 URL e 50MB non compressi; altrimenti, dividilo e aggiungi un indice delle sitemap.
Includi gli URL giusti
- Solo URL canonici, indicizzabili, con stato
200. - Nessun reindirizzamento
3xx, nessun duplicato non canonico, nessun URL connoindex/bloccato da robots. - Ricorda: escludere un URL non è un modo per deindicizzarlo — usa
noindexper quello.
Pubblica e monitorala
- Riga
Sitemap:aggiunta arobots.txtcon l’URL assoluto completo. - Inviata in Google Search Console e Bing Webmaster Tools.
- Generata automaticamente da URL reali per rimanere aggiornata.
- Controlla i numeri inviati-vs-indicizzati in Search Console; dividi per sezione/tipo per vedere quale parte del sito è sotto-indicizzata.
Sitemap XML — cheat sheet
Riferimento dei tag
| Tag | Obbligatorio? | Cosa fa | Trattamento di Google |
|---|---|---|---|
<urlset> | Obbligatorio | Elemento radice; dichiara il namespace 0.9 | Analizzato (namespace errato/mancante = errore) |
<url> | Obbligatorio | Un blocco per pagina | Analizzato |
<loc> | Obbligatorio | L’URL assoluto completamente qualificato della pagina | Usato |
<lastmod> | Opzionale | Data dell’ultima modifica significativa | Usato — ma solo se verificabilmente accurato |
<changefreq> | Opzionale | Suggerimento su quanto spesso la pagina cambia | Ignorato |
<priority> | Opzionale | Importanza relativa (0,0–1,0) | Ignorato |
xhtml:link rel="alternate" | Opzionale | Versioni alternative hreflang | Usato (richiede xmlns:xhtml, tag di ritorno) |
Includere vs escludere
| Includere | Escludere |
|---|---|
| URL canonici | URL non canonici / duplicati |
| Pagine indicizzabili | Pagine noindex |
Pagine con stato 200 | Reindirizzamenti 3xx, errori 4xx/5xx |
| Pagine che vuoi indicizzare e far scansionare | URL bloccati da robots |
Fatti rapidi
- Limiti: 50 000 URL o 50 MB non compressi, a seconda di quale si raggiunge per primo → dividi + indice sitemap.
- Codifica: UTF-8. URL: assoluti, con escape delle entità.
- Gzip consentito (
.xml.gz); il limite di 50 MB si riferisce alla dimensione non compressa. - Il limite di 50 000 per hreflang conta solo gli URL
<loc>, non le varianti. - Escludere un URL ≠ non indicizzarlo.
- Formati accettati: XML (quello versatile), RSS/Atom,
.txtsemplice.
Una sitemap XML valida minima
La sitemap corretta più piccola — dichiarazione, <urlset> con namespace, un <url> con un <loc> obbligatorio e un <lastmod> facoltativo:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.example.com/</loc>
<lastmod>2026-06-22</lastmod>
</url>
<url>
<loc>https://www.example.com/blog/post-with-an-ampersand?a=1&b=2</loc>
<lastmod>2026-06-18</lastmod>
</url>
</urlset>Nota il secondo <loc>: la & nella stringa di query è escape delle entità in &. I caratteri &, ', ", < e > non elaborati romperanno l’XML.
Comprimilo con gzip per file di grandi dimensioni
Puoi servire una sitemap compressa con gzip per risparmiare larghezza di banda — chiamala .xml.gz:
# Compress a sitemap; Google and Bing both accept .xml.gz
gzip -k sitemap.xml # produces sitemap.xml.gz, keeps the originalRicorda che il limite di dimensione viene controllato non compresso — gzip riduce la dimensione di trasferimento, non il tetto di 50 MB/50.000 URL. (Su Windows, usa qualsiasi strumento zip che produca un vero stream gzip, o Compress-Archive non è gzip — preferisci l’output gzip di 7-Zip.)
Riferiscilo in robots.txt
Indirizza i motori di ricerca con una riga Sitemap: (URL assoluto completo; l’auto-scoperta funziona da qui):
User-agent: *
Allow: /
Sitemap: https://www.example.com/sitemap.xmlValidalo
Prima di inviarlo, fai un controllo di sanità del file:
- Recuperalo e conferma che restituisca
200con un vero corpo XML (non la tua pagina 404 HTML — “Formato non supportato” in Search Console di solito significa che hai inviato una pagina HTML per errore). - Controlla la buona formazione localmente con
xmllint:
# Confirms the XML parses; flags unescaped & < > and mismatched tags
xmllint --noout sitemap.xml && echo "well-formed"- Invia e osserva il report Sitemaps di Search Console per il conteggio degli URL analizzati e eventuali errori, poi monitora inviati-vs-indicizzati nei giorni successivi.
Strumenti per creare e controllare la tua sitemap XML
- Google Index Checker — una volta che la tua sitemap è attiva, questo è il modo per controllare l’altro lato della diagnosi: se un URL che hai inviato è effettivamente indicizzabile. Mostra codice di stato, reindirizzamenti,
noindexe segnali canonici per un URL, poi ti indirizza a URL Inspection di Search Console per la risposta reale di Google. Utile per capire perché un URL inviato non appare nel conteggio indicizzato.
Prompt pronti da incollare per il lavoro con le sitemap
Controlla un file sitemap per la conformità alle specifiche. Incolla il contenuto XML grezzo della tua sitemap (o una parte rappresentativa) e chiedi a un assistente AI di verificarlo rispetto alle regole di questo articolo:
Here is the content of my XML sitemap. Check it against these rules and list
every violation with the line/URL affected:
1. The declaration and encoding must be `<?xml version="1.0" encoding="UTF-8"?>`.
2. `<urlset>` must declare xmlns="http://www.sitemaps.org/schemas/sitemap/0.9".
3. Every <loc> must be a fully-qualified absolute URL, with & ' " < > properly
entity-escaped (& ' " > <).
4. Flag any <priority> or <changefreq> tags as harmless-but-ignored, not errors.
5. Flag any <lastmod> value that is identical across most/all URLs (a sign of a
fake "always today" date) as suspicious rather than a hard error.
6. Confirm the file is under 50,000 <url> entries and, if you can estimate file
size, under 50MB uncompressed.
[paste sitemap XML here]Aspettati una lista di violazioni concrete (non una riscrittura) — tratta l’output generico “sembra a posto” come un segnale per controllare il file tu stesso con xmllint invece.
Controlla i tag di ritorno hreflang in una sitemap. Se gestisci hreflang tramite blocchi xhtml:link nella sitemap, incolla una sezione del file e chiedi un controllo di bidirezionalità:
This is a section of my XML sitemap using xhtml:link rel="alternate" hreflang
tags. For each <url> block, list every hreflang alternate it declares, then
tell me which alternates are NOT reciprocated (page A links to page B, but B's
block doesn't link back to A) and whether an x-default entry is present for
each language cluster.
[paste sitemap XML section here]Questo cattura esattamente la modalità di errore descritta sopra — un tag di ritorno mancante può far ignorare l’intero set hreflang — più velocemente che controllare a occhio un file grande a mano.
Risorse che meritano il tuo tempo
I miei scritti correlati
- When Should You Worry About Crawl Budget? — dove le sitemap pulite si inseriscono nell’efficienza del crawling, e perché la tua sitemap dovrebbe elencare solo URL indicizzabili.
- Enterprise Technical SEO — la postura automatizzalo-o-marcisce, e le sitemap su larga scala.
- Website Migration: The Definitive Guide — perché tengo una sitemap dei vecchi URL dopo una migrazione per osservarli uscire dall’indice in GSC.
- Hreflang: The Easy Guide — i tre posti validi dove può vivere hreflang, inclusa la sitemap, e i compromessi.
- The Beginner’s Guide to Technical SEO — dove le sitemap si collocano nel quadro più ampio.
I miei interventi
- How Search Works (SlideShare) — la mia spiegazione di crawling, scoperta e indicizzazione. (Disclaimer permanente: “This is my understanding of systems… not going to be 100% complete or accurate.”) (traduzione) «Questa è la mia comprensione dei sistemi… non sarà completa o accurata al 100%.»
Da altri
- La documentazione di Google sui Sitemaps — la fonte canonica per formati, limiti ed estensioni.
- sitemaps.org — il protocollo
0.9cross-engine su cui tutto questo si basa. - Il post di Bing Sitemaps in AI-Powered Search — la posizione di Bing, più enfatica di quella di Google, su
<lastmod>. - Il post di Bing The Importance of Setting the lastmod Tag in Your Sitemap — spiega come Bing usa
<lastmod>per la priorità di ricrawling. - Search Engine Roundtable — sitemap coverage — dichiarazioni aggregate di Google e Bing sui sitemaps, inclusi Gary Illyes su
<priority>e John Mueller sull’accuratezza di<lastmod>. - Google Search Central Blog: What Googlebot looks for in your sitemap — il post di Google che conferma
<lastmod>e la rimozione del protocollo ping. - Search Engine Journal — XML Sitemaps — copertura di settore delle best practice sui sitemap e degli errori comuni.
Mettiti alla prova: sitemap XML
Cinque domande sulle specifiche del formato delle sitemap XML — tag, limiti e hreflang. Scegli una risposta per ciascuna, poi controlla.
Cronologia modifiche
Aggiornato il 18 lug 2026.
Riepilogo editoriale e dettagli registrati delle modifiche.Dettagli delle modifiche
-
Le note dettagliate sulle modifiche sono attualmente disponibili in inglese.
Confronto completo non disponibile — non è stata archiviata alcuna istantanea precedente per questa revisione.