Il tag <link rel="canonical"> è uno degli strumenti SEO più potenti — e più usati male sui siti e-commerce. Se configurato bene, risolve il contenuto duplicato, concentra l'autorità SEO e permette di gestire in modo pulito le migliaia di URL tecniche generate da un catalogo.
Ecco i 4 casi concreti che si incontrano nel 90% degli shop, e l'implementazione corretta per ciascuno.
Segnala a Google che questo URL è la versione di riferimento, non una copia né una variante
Protegge dai parametri parassiti (UTM, tracking, ecc.): se qualcuno linka /products/chaussure-derby?ref=newsletter, Google vede il canonical e capisce che il vero URL è la versione pulita
Permette di normalizzare gli URL con/senza trailing slash, con/senza www, http vs https
Senza canonical, Google deve indovinare quale URL canonizzare, e le sue scelte non sono sempre ottimali.
Sulla maggior parte delle piattaforme (Shopify, WooCommerce), le varianti cambiano il prezzo e le immagini mostrate ma non creano una vera nuova pagina — solo la stessa pagina con uno state diverso.
Implementazione canonical:
<!-- Su TUTTI questi URL, il canonical punta al parent -->
<link rel="canonical" href="https://example.com/products/chaussure-derby" />
Anche se l'URL corrente è ?variant=12346, il canonical è la versione senza parametro. Google concentra tutto il "link juice" sull'URL parent, e le varianti non compaiono mai nelle SERP.
Ti è piaciuto questo articolo?
Errore frequente: lasciare che ogni variante faccia self-canonical con il proprio parametro. Risultato: Google vede 20 pagine quasi identiche e non ne posiziona correttamente nessuna.
Avete una categoria "Scarpe" con 200 prodotti, paginata in 10 pagine:
/collections/chaussures ← pagina 1
/collections/chaussures?page=2 ← pagina 2
/collections/chaussures?page=3 ← pagina 3
Approccio 2026 (post rel=next/prev):
Google ha deprecato il supporto di rel=next/prev nel 2019. La best practice oggi è:
<!-- Su /collections/chaussures -->
<link rel="canonical" href="https://example.com/collections/chaussures" />
<!-- Su /collections/chaussures?page=2 -->
<link rel="canonical" href="https://example.com/collections/chaussures?page=2" />
<!-- Su /collections/chaussures?page=3 -->
<link rel="canonical" href="https://example.com/collections/chaussures?page=3" />
Ogni pagina è self-referential — contiene contenuti diversi (prodotti diversi), quindi merita di essere indicizzata separatamente.
Da NON fare: canonicalizzare tutte le pagine paginate verso la pagina 1. È un errore frequente. Risultato: Google indicizza solo la pagina 1, e i vostri prodotti nelle pagine 3-10 diventano invisibili.
È il caso più complesso. Una categoria con filtri:
/collections/chaussures ← non filtrato
/collections/chaussures?color=noir ← filtrato per colore
/collections/chaussures?color=noir&size=44 ← filtrato per colore + taglia
/collections/chaussures?sort_by=price-asc ← ordinato per prezzo
Tre strategie possibili:
Strategia 1 — Canonical di tutte le varianti filtrate verso la categoria parent
<!-- Su /collections/chaussures?color=noir -->
<link rel="canonical" href="https://example.com/collections/chaussures" />
Semplice. Va bene se non volete indicizzare le pagine filtrate. Perdita: le query come "scarpe nere" non si posizioneranno sulla pagina filtrata corretta.
Strategia 2 — URL puliti per i filtri importanti, canonical self
Per le combinazioni con alto volume di ricerca, create URL puliti:
Shopify genera automaticamente un canonical su ogni prodotto, che punta all'URL pulito senza parametri. In genere è corretto di default. Potete fare override tramite il template:
Nessun canonical nativo su tutte le pagine. I plugin SEO (Yoast, RankMath, AIO SEO) gestiscono questo aspetto. Tutti fanno un self-referential canonical di default, con opzione di personalizzazione per pagina.
Verificate con un site: in Google o con Screaming Frog che ogni URL del vostro sito abbia un canonical e che punti all'URL corretto.
Non direttamente, ma è a rischio. Google sceglie il proprio URL canonico, che potrebbe non essere quello che volete. Su uno shop e-commerce, definite sempre il canonical in modo esplicito.
No. Il canonical è un segnale, Google può ignorarlo se ritiene che un altro URL sia più appropriato. Motivi frequenti: canonical verso una pagina di qualità inferiore, verso una pagina con meno backlink, o contraddizione con altri segnali (hreflang, internal linking).
301 è un redirect fisico: l'utente e il bot vengono inviati a un altro URL. Il canonical lascia accessibile l'URL attuale ma segnala che un altro è la versione di riferimento. Usate 301 per URL spostati in modo definitivo, canonical per duplicati intenzionali (varianti, parametri).
No, normalmente no. Google "fonde" la pagina con il suo canonical e indicizza solo l'URL canonico. Se volete che entrambe siano indicizzate (caso raro), dovete differenziare il contenuto e usare un self-referential canonical su ciascuna.
Tecnicamente sì, praticamente no. Usate sempre l'URL assoluto con protocollo (https://example.com/products/foo). Gli URL relativi sono fonte di errori (scheme sbagliato, host sbagliato).