A tag <link rel="canonical"> é uma das ferramentas SEO mais fortes — e das mais mal utilizadas em sites e-commerce. Quando está bem configurada, resolve conteúdo duplicado, concentra a autoridade SEO e permite gerir corretamente os milhares de URLs técnicas que um catálogo gera.
Eis os 4 casos concretos que aparecem em 90% das lojas, e a implementação certa para cada um.
Indica ao Google que esta URL é a versão de referência (não uma cópia, não uma variante)
Protege contra parâmetros parasitas (UTM, tracking, etc.): se alguém criar um link para /products/chaussure-derby?ref=newsletter, o Google vê o canonical e sabe que a URL real é a versão limpa
Permite normalizar URLs com/sem trailing slash, com/sem www, http vs https
Sem canonical, o Google tem de adivinhar que URL canonizar, e as suas escolhas nem sempre são as melhores.
Este é o caso mais frequente. Um produto com 5 cores × 4 tamanhos = 20 variantes. Cada variante tem potencialmente uma URL distinta:
/products/chaussure-derby ← produto principal
/products/chaussure-derby?variant=12345 ← variante 44 preto
/products/chaussure-derby?variant=12346 ← variante 45 preto
/products/chaussure-derby?variant=12347 ← variante 44 castanho
Na maioria das plataformas (Shopify, WooCommerce), as variantes alteram o preço e as imagens mostradas, mas não criam uma nova página real — apenas a mesma página com um state diferente.
Implementação canonical:
<!-- Em TODAS estas URLs, o canonical aponta para o principal -->
<link rel="canonical" href="https://example.com/products/chaussure-derby" />
Mesmo que a URL atual seja ?variant=12346, o canonical é a versão sem parâmetro. O Google concentra todo o "link juice" na URL principal, e as variantes nunca aparecem nas SERP.
Gostaste deste artigo?
Erro frequente: deixar cada variante fazer self-canonical com o seu próprio parâmetro. Resultado: o Google vê 20 páginas quase idênticas e não posiciona nenhuma corretamente.
O Google deixou de suportar rel=next/prev em 2019. A melhor prática hoje é:
<!-- Em /collections/chaussures -->
<link rel="canonical" href="https://example.com/collections/chaussures" />
<!-- Em /collections/chaussures?page=2 -->
<link rel="canonical" href="https://example.com/collections/chaussures?page=2" />
<!-- Em /collections/chaussures?page=3 -->
<link rel="canonical" href="https://example.com/collections/chaussures?page=3" />
Cada página é self-referential — contêm conteúdo diferente (produtos diferentes), por isso merecem ser indexadas separadamente.
NÃO faça isto: canonizar todas as páginas paginadas para a página 1. É um erro frequente. Resultado: o Google só indexa a página 1, e os seus produtos nas páginas 3-10 ficam invisíveis.
A Shopify gera um canonical automaticamente em cada produto, apontando para a URL limpa sem parâmetros. Em geral, está correto por defeito. Pode fazer override através do template:
Não há canonical nativo em todas as páginas. Os plugins SEO (Yoast, RankMath, AIO SEO) tratam disso. Todos fazem um self-referential canonical por defeito, com opção de personalização por página.
Verifique com um site: no Google ou com Screaming Frog que cada URL do seu site tem um canonical e que aponta para a URL certa.
Não diretamente, mas fica em risco. O Google escolhe a sua própria URL canónica, que pode não ser a que quer. Numa loja e-commerce, defina sempre o canonical de forma explícita.
Não. O canonical é um sinal, e o Google pode ignorá-lo se considerar que outra URL é mais adequada. Razões frequentes: canonical para uma página de qualidade inferior, para uma página com menos backlinks, ou contradição com outros sinais (hreflang, internal linking).
301 é um redirecionamento físico: o utilizador e o bot são enviados para outra URL. O canonical deixa a URL atual acessível, mas indica que outra é a versão de referência. Use 301 para URLs movidas de forma definitiva, canonical para duplicates intencionais (variantes, parâmetros).
Não, normalmente não. O Google "funde" a página com o seu canonical e indexa apenas a URL canónica. Se quiser que ambas sejam indexadas (caso raro), tem de diferenciar o conteúdo e usar self-referential canonical em cada uma.
Tecnicamente sim, na prática não. Use sempre a URL absoluta com protocolo (https://example.com/products/foo). As URLs relativas são uma fonte de erros (scheme errado, host errado).