Il tag canonical è una riga nella sezione head di una pagina che indica a Google quale URL consideri la versione principale quando lo stesso contenuto è raggiungibile da più indirizzi: link con parametri UTM, filtri di categoria, varianti di prodotto, versioni con e senza www. Serve a concentrare i segnali su un solo URL e a scegliere quello da mostrare nei risultati, ma Google lo tratta come un suggerimento, lo segue quando le pagine sono davvero equivalenti e quando link interni, sitemap e redirect dicono la stessa cosa. Per questo, prima di chiederti dove mettere il canonical, conviene chiedersi se quell’URL deve esistere, essere indicizzato o confluire in un altro.
In questo articolo trovi cosa fa il tag, come si distingue da redirect, noindex e robots.txt, come decidere nei casi tipici (UTM, filtri, varianti, duplicati, paginazione), come leggere gli stati di Search Console e quali errori evitare.
Cos’è il tag canonical e cosa fa davvero
Google chiama canonicalizzazione il processo con cui sceglie l’URL rappresentativo di un contenuto, come spiega la documentazione di Google sulla canonicalizzazione. Quando trova pagine con contenuto principale uguale o molto simile, le raggruppa e ne sceglie una come canonica, è quella che di norma compare nei risultati, mentre le altre restano raggiungibili ma non vengono mostrate.
Il tag canonical, cioè l’elemento link con attributo rel=’canonical’, è il modo più diffuso per dichiarare la tua preferenza. Si inserisce nella sezione head della pagina duplicata e indica l’URL principale:
<link rel="canonical" href="https://example.com/dresses/green-dresses" />L’esempio è tratto dalla guida di Google per specificare un URL canonico, che fissa tre regole pratiche: l’URL va scritto in forma assoluta (protocollo e dominio compresi), il tag è accettato solo nella sezione head, e anche la pagina canonica dovrebbe avere un canonical che punta a se stessa (canonical autoreferenziale). Per i file non HTML, come i PDF, lo stesso segnale si invia con un’intestazione HTTP:
Link: <https://www.example.com/downloads/white-paper.pdf>; rel="canonical"Secondo la stessa guida, indicare un canonical serve a scegliere l’URL da mostrare nei risultati, a raggruppare i segnali di pagine simili o duplicate, a semplificare il monitoraggio delle metriche di un contenuto e a non spendere scansione su pagine duplicate.
C’è però un passaggio che cambia il modo di usarlo. Google scrive che l’indicazione di una preferenza canonica "è un suggerimento, non una regola" e che, per vari motivi, può scegliere una pagina diversa. Tra i fattori che considera ci sono HTTPS, redirect, presenza nella sitemap e annotazioni rel=’canonical’. Ne segue che, se il tag indica un URL e i link interni, la sitemap o i redirect ne indicano un altro, il tag da solo non basta.
Anche il timore di una "penalizzazione per contenuti duplicati" va ridimensionato: per Google la presenza di un po’ di contenuto duplicato su un sito è normale e non costituisce una violazione. I problemi concreti sono altri: segnali divisi tra più URL, l’indirizzo sbagliato nei risultati, scansione spesa su pagine inutili, dati di traffico sparsi.
Canonical, redirect, noindex e robots.txt: quale strumento per quale problema
Il canonical viene spesso confuso con altri strumenti che rispondono a domande diverse. Ecco cosa dice la guida di Google sugli URL duplicati per ciascuno:
- Redirect 301: la pagina duplicata non deve più esistere per gli utenti. Google lo considera un indicatore forte e lo indica per i casi in cui una pagina duplicata viene ritirata: versione http, versione senza www, vecchi URL dopo una migrazione.
- Canonical: la pagina duplicata serve agli utenti (un filtro, un link tracciato, una variante) ma non deve competere nei risultati. Anche questo è un indicatore forte, ma non vincolante.
- Noindex: la pagina non deve comparire nei risultati. Google sconsiglia di usarlo per scegliere la pagina canonica all’interno dello stesso sito.
- Robots.txt: controlla la scansione, non l’indicizzazione. Google chiede di non usarlo per la canonicalizzazione; può invece servire a evitare la scansione di grandi volumi di URL inutili, come certe combinazioni di filtri.
- Sitemap: indicatore debole, che aiuta gli URL inclusi a diventare canonici. Per coerenza dovrebbe contenere solo gli URL che vuoi canonici.
Google aggiunge che usare più metodi insieme aumenta la probabilità che venga scelto l’URL preferito, ma consiglia di sceglierne uno e di attenersi a quello, perché combinarli aumenta il rischio di errori. Quello da evitare in ogni caso è indicare URL canonici diversi per la stessa pagina con tecniche diverse.
Una conseguenza che si ricava dal funzionamento della scansione: se un URL è bloccato in robots.txt, Google non lo scansiona e quindi non ne legge il canonical. Bloccare e canonicalizzare la stessa pagina sono due scelte che si escludono.
Casi decisionali: quando usare il canonical e quando no
Nei casi che seguono uso sempre lo stesso criterio, ricavato dalla documentazione citata. L’URL alternativo ha un motivo di esistere per chi naviga? Se no, redirect. Se sì ma il contenuto è lo stesso della pagina principale, canonical verso la principale. Se il contenuto è diverso e c’è qualcuno che lo cerca, pagina indicizzabile con canonical autoreferenziale. Gli esempi di URL sono ipotetici.
Parametri UTM e di tracciamento
Un link in newsletter come https://example.com/scarpe-running/?utm_source=newsletter&utm_medium=email apre la stessa pagina di https://example.com/scarpe-running/. Google stesso, nella guida sugli URL duplicati, usa come esempio di duplicato un URL con il parametro di tracciamento gclid.
La soluzione è un canonical autoreferenziale sull’URL pulito. Le versioni con parametri sono generate dallo stesso template, quindi ereditano lo stesso tag:
<!-- su https://example.com/scarpe-running/?utm_source=newsletter -->
<link rel="canonical" href="https://example.com/scarpe-running/" />Da verificare: alcuni temi o plugin stampano nel canonical l’URL corrente con tutti i parametri, e così ogni versione tracciata dichiara canonica se stessa. Il secondo controllo riguarda i link interni: Google chiede di linkare internamente l’URL canonico, quindi niente UTM su banner, menu o link tra pagine dello stesso sito.
Filtri e ordinamenti nelle categorie
Filtri (colore, taglia, prezzo) e ordinamenti (prezzo crescente, novità) generano URL con contenuto quasi identico alla categoria. Il canonical verso la categoria funziona sui singoli URL, ma la guida di Google sulla navigazione per facet avverte che rel=’canonical’ può ridurre nel tempo la scansione delle versioni non canoniche ed è "meno efficace a lungo termine" del blocco tramite robots.txt. Con migliaia di combinazioni, il canonical da solo non risolve lo spreco di scansione.
Come lo applicherei, da adattare al singolo sito:
- Ordinamenti (?sort=prezzo): stesso contenuto in ordine diverso, quindi canonical alla categoria.
- Filtri senza domanda di ricerca: canonical alla categoria; se le combinazioni crescono senza controllo, valuta il blocco dei pattern in robots.txt, sapendo che su quegli URL il canonical non verrà più letto.
- Filtri con domanda reale, per esempio "divani letto grigi" su un ecommerce di arredamento: non nasconderli dietro un canonical. Trasformali in pagine vere, con URL stabile, title e testo dedicati, link interni e canonical autoreferenziale.
Per i facet che vuoi indicizzare, Google suggerisce di usare il separatore & tra i parametri, mantenere un ordine coerente dei filtri ed evitare duplicati nel percorso, e restituire un codice 404 quando una combinazione non ha risultati.
Varianti di prodotto
Colori, taglie o finiture dello stesso articolo. La guida di Google sulle varianti di prodotto distingue due configurazioni:
- Sito a pagina singola: le varianti si selezionano sulla stessa pagina, ognuna raggiungibile con un URL distinto (per esempio un parametro). Deve esistere un solo URL canonico per l’intero gruppo, di solito l’URL base senza variante preselezionata.
- Sito multipagina: varianti o gruppi di varianti hanno pagine proprie, e non esiste un unico URL canonico per il gruppo. In questo caso la lettura coerente è che ogni pagina mantenga il proprio canonical autoreferenziale.
Nel primo caso il tag si presenta così:
<!-- su https://example.com/poltrona-lisa/?colore=verde -->
<link rel="canonical" href="https://example.com/poltrona-lisa/" />La scelta tra le due configurazioni non dipende dal canonical ma da prodotto e domanda: se una poltrona esiste in velluto e in pelle con foto, prezzi e ricerche diverse, due pagine distinte possono avere senso; se cambia solo il colore, una pagina con selettore è di solito la strada più pulita.
Duplicati tecnici e stessa pagina in più percorsi
Versioni http e https, con e senza www, con e senza slash finale, maiuscole diverse: sono duplicati che non servono a nessuno. Qui la soluzione naturale è un redirect 301 lato server verso la versione scelta, coerente con il canonical autoreferenziale di quest’ultima. Tra http e https, la guida conferma che Google tende a preferire HTTPS.
Diverso è il caso della stessa scheda raggiungibile da due categorie, come /divani/divano-milo/ e /offerte/divano-milo/. Entrambi gli URL possono servire alla navigazione, quindi il canonical va verso un solo percorso, e menu, breadcrumb e prodotti correlati dovrebbero linkare quello. Se il CMS lo consente, un URL di prodotto indipendente dalla categoria evita il problema a monte.
Paginazione
Pagina 2, 3, 4 di una categoria o del blog. L’errore classico è far puntare tutte le pagine alla prima. La guida di Google sulla paginazione è esplicita: non usare la prima pagina di una sequenza come canonica e dai a ogni pagina il suo canonical.
<!-- su https://example.com/divani/?page=2 -->
<link rel="canonical" href="https://example.com/divani/?page=2" />Il motivo è semplice: la pagina 2 elenca prodotti diversi dalla 1, quindi dichiararle equivalenti è falso, e i prodotti linkati solo dalle pagine successive rischiano di essere raggiunti con più difficoltà. La stessa guida ricorda che Google non usa più rel=’next’ e rel=’prev’, che altri motori di ricerca possono ancora leggere.
Come leggere i canonical nel report di Search Console
Il report Indicizzazione delle pagine di Search Console mostra quali URL non sono indicizzati e perché. Tre stati riguardano la canonicalizzazione; la guida di Google al report li spiega così:
- Pagina alternativa con tag canonical appropriato: la pagina punta correttamente a una canonica che è indicizzata. Google scrive che non devi fare nulla. Su un sito con filtri, varianti e link tracciati è normale trovarne molti; vale la pena aprire l’elenco solo per controllare che non contenga URL che volevi indicizzati.
- Pagina duplicata senza URL canonico selezionato dall’utente: la pagina è un duplicato, non dichiara un canonical e Google ha scelto come canonica un’altra pagina. Non è un errore. Se la scelta di Google non è quella giusta, dichiara esplicitamente il canonical; se la pagina in realtà non è un duplicato, rendi il suo contenuto sostanzialmente diverso.
- Pagina duplicata, Google ha scelto una pagina canonica diversa da quella specificata dall’utente: hai dichiarato un canonical, ma Google ne ha scelto un altro. Usa lo strumento Controllo URL per vedere la canonica dichiarata e quella selezionata da Google, poi confrontale. Se la canonica dichiarata non è simile alla pagina, Google non la sceglierà.
Per il terzo stato, prima di toccare il tag controllerei se le due pagine sono davvero equivalenti e se link interni, sitemap e redirect puntano tutti verso l’URL dichiarato: sono i fattori che la documentazione indica come segnali.
Gli errori più comuni con il canonical
- Canonical della paginazione verso la pagina 1: Google lo sconsiglia esplicitamente.
- URL relativo o incompleto: la guida raccomanda URL assoluti.
- Canonical che riporta l’URL con i parametri: ogni versione con UTM o filtri dichiara canonica se stessa e il tag non consolida nulla.
- Più canonical diversi nella stessa pagina, per esempio uno del tema e uno del plugin SEO: sono segnali in contraddizione, mentre Google chiede di non indicare URL canonici diversi per la stessa pagina.
- Canonical nel body o modificato via JavaScript: Google lo accetta solo nell’head e chiede di indicarlo nel sorgente HTML senza cambiarlo con JavaScript.
- Noindex usato al posto del canonical, o insieme al canonical sulla stessa pagina: Google sconsiglia il noindex per scegliere la canonica all’interno del sito.
- Canonical verso un URL che reindirizza, dà errore o è bloccato: chiedi a Google di consolidare i segnali su una pagina che non può indicizzare come canonica. È una deduzione, ma basta a rendere questo controllo prioritario.
- Sitemap e link interni verso le versioni non canoniche: contraddicono il tag. La guida chiede di linkare l’URL canonico, e la sitemap aiuta gli URL che contiene a diventare canonici.
- Canonical tra pagine diverse per "spostare" autorità, per esempio da articoli vecchi verso una pagina servizio: se la canonica dichiarata non è simile alla pagina, Google non la sceglie. Per una pagina ritirata serve un redirect, non un canonical.
- Canonical verso un’altra lingua su siti con hreflang: Google chiede un canonical nella stessa lingua della pagina e rel=’alternate’ per le versioni linguistiche.
- Frammenti come canonical (URL con #): la guida dice di non usarli.
Come controllare i canonical del tuo sito
- Scegli una pagina per ogni template (home, categoria, prodotto o servizio, articolo) e aprine il sorgente: cerca rel=’canonical’ e verifica che ce ne sia uno solo, nell’head, assoluto e verso l’URL giusto. Ripeti la prova con un URL con UTM, uno con filtro e una pagina 2.
- Con un crawler confronta su tutto il sito canonical dichiarati, codici di stato, URL presenti nella sitemap e destinazioni dei link interni.
- In Search Console apri i tre stati sui duplicati e usa Controllo URL su qualche campione per vedere quale canonica ha scelto Google.
- Correggi prima i segnali contraddittori (link interni, sitemap, redirect), poi il tag: è l’ordine che rende il canonical credibile.
Da dove partire
Un canonical sbagliato è spesso il sintomo di qualcosa a monte: parametri gestiti male, template che generano URL inutili, un’architettura che crea più strade per la stessa pagina. Per questo conviene inserirlo in un controllo più ampio, come quello descritto nella guida su come fare un audit SEO, e poi in un piano di ottimizzazione SEO basato sulle priorità.
Se vuoi una verifica sul tuo sito, l’audit SEO tecnico è il primo passo della mia consulenza SEO: si parte da scansione, indicizzazione e canonicalizzazione per capire quali correzioni hanno la priorità.