URL canônica: como definir em uma página e verificar
Para definir um canonical URL, adicione <link rel="canonical" href="https://example.com/main-page/"> com a URL completa da versão principal ao <head> da página; para PDFs e outros arquivos que não são HTML, envie um cabeçalho HTTP Link. Um canonical URL informa aos mecanismos de busca qual de vários endereços idênticos ou semelhantes deve ser tratado como o principal. O Google o trata como um sinal forte, não como um comando obrigatório.
Por que ele é necessário
O mesmo conteúdo costuma estar disponível em vários endereços: com parâmetros de ordenação e tags, com www e sem, com barra no final e sem ela, em uma versão para impressão. Para a busca, são páginas diferentes com o mesmo conteúdo. O endereço canonical as reúne: os sinais e a força dos links são consolidados em uma só versão, e é ela que aparece nos resultados de busca.
Como definir um canonical URL: quatro métodos
| Método | Onde fica | Força do sinal segundo a documentação do Google | Quando usar |
|---|---|---|---|
Tag link rel="canonical" | No <head> de uma página HTML | Forte | O padrão para páginas comuns |
Cabeçalho HTTP Link | Na resposta do servidor | Forte (a mesma anotação da tag) | PDFs, documentos e outros arquivos sem <head> |
| Redirecionamento 301 | No servidor | Forte | Quando as pessoas não precisam mais da duplicata: veja 301 vs 302 |
| Sitemap | Liste apenas as URLs preferidas no sitemap.xml | Fraco | Um sinal extra, não substitui a tag |
A tag HTML
<head>
<link rel="canonical" href="https://example.com/catalog/sofas/">
</head>
O cabeçalho HTTP para um PDF
Link: <https://example.com/docs/price.pdf>; rel="canonical"
No nginx, você o adiciona no bloco location desse arquivo:
location = /files/price-2026.pdf {
add_header Link '<https://example.com/docs/price.pdf>; rel="canonical"';
}
Para confirmar que o cabeçalho está realmente sendo enviado, use o verificador de cabeçalhos HTTP, que lista todos os cabeçalhos da resposta.
Regras para escrever a tag canonical
- URL absoluta com protocolo e domínio. O Google recomenda URLs absolutas:
https://example.com/page/, e não/page/. - Somente no
<head>. O Google não aceita a tag no corpo da página. Se o template gerar um elemento inválido antes dela, o<head>pode ser fechado antes da hora e empurrar a tag para o corpo. - Um canonical por página. Duas tags com URLs diferentes, ou uma tag que contradiz o cabeçalho
Link, enviam sinais conflitantes. - Corresponda à versão que você promove: mesmo protocolo, mesmo host (com ou sem www), mesma barra no final.
- O destino retorna 200, é indexável e não está bloqueado no robots.txt.
- Canonical autorreferenciado nas páginas principais as protege de duplicatas criadas por parâmetros de rastreamento.
- Sem robots.txt nem ferramenta de remoção. O Google diz para não usá-los na canonicalização e não recomenda
noindexpara escolher um canonical dentro de um mesmo site. - Prefira o HTML bruto. O Google consegue processar uma tag inserida por JavaScript após a renderização, mas muitas ferramentas e crawlers não executam scripts.
Como é uma configuração correta
| Caso | O que especificar |
|---|---|
| Página comum | Ela mesma: canonical autorreferenciado |
| Endereço com tags UTM | Endereço limpo, sem parâmetros |
| Paginação | Cada página para si mesma, não todas para a primeira |
| Um produto em várias categorias | Um único endereço principal do produto |
| Versão para impressão | Versão principal |
Como definir um canonical URL no WordPress e em outros CMSs
Na maioria dos CMSs, a tag vem do tema ou de um módulo de SEO, não do editor de páginas. O WordPress normalmente já gera uma tag canonical em posts e páginas; plugins de SEO como Yoast SEO e Rank Math estendem isso para outros tipos de página e adicionam um campo para uma URL canonical personalizada nas configurações avançadas do post. Em outros sistemas, procure um campo semelhante nas configurações de SEO da página ou em um módulo de meta tags; em um site personalizado, adicione a tag ao template compartilhado de <head> usando a URL da página atual sem parâmetros.
- Mantenha a canonical autorreferenciada padrão em todas as páginas comuns.
- Para duplicatas (um produto em várias categorias, uma versão para impressão), informe no campo a URL da versão principal.
- Depois de instalar um plugin, verifique se a página tem apenas uma tag: muitas vezes o tema e o plugin geram a tag ao mesmo tempo.
- Paginação e filtros têm regras próprias: veja paginação e navegação facetada.
URLs canonical em sites multilíngues e versões mobile separadas
Versões em outros idiomas não são duplicatas, mesmo quando a tradução é muito próxima. Cada versão deve ter uma URL canonical apontando para si mesma, e a relação entre os idiomas é descrita com hreflang. Se a página em inglês indicar a página em russo como canonical, o Google pode remover a página em inglês do índice, e a marcação hreflang deixa de funcionar, pois deve referenciar apenas URLs canonical.
<!-- on https://example.com/en/page/ -->
<link rel="canonical" href="https://example.com/en/page/">
<link rel="alternate" hreflang="ru" href="https://example.com/page/">
<link rel="alternate" hreflang="en" href="https://example.com/en/page/">
Um site mobile separado em um subdomínio como m.example.com é um caso diferente: para esses sites, o Google descreve um par de anotações: rel="alternate" na página desktop e rel="canonical" da página mobile apontando de volta para a página desktop. Um site responsivo com uma única URL para todos os dispositivos não precisa de nada disso. Mais em hreflang, verificação de hreflang e indexação mobile-first.
Erros comuns
- Todas as páginas apontam para a principal. Um erro clássico ao copiar um template: as outras páginas saem do índice.
- O endereço canonical leva a um redirecionamento ou a um 404. O sinal fica totalmente quebrado.
- Protocolos e domínios diferentes. O endereço deve corresponder ao que você realmente está promovendo.
- Canonical e noindex na mesma página. Uma contradição que é interpretada de forma imprevisível.
Como verificar uma URL canonical
- Código-fonte da página. Abra a página, pressione Ctrl+U e procure por
canonical: deve haver uma única tag, dentro do<head>. - O analisador de meta tags mostra a canonical junto com o title, a description e o hreflang. Ele lê o HTML bruto sem executar JavaScript, portanto não vê uma tag adicionada por script.
- O verificador de indexação compara a canonical com a URL final após os redirecionamentos e avisa quando elas são diferentes.
- Search Console → Inspeção de URL. Os detalhes de indexação mostram dois campos: canonical declarada pelo usuário e canonical selecionada pelo Google. Se forem diferentes, o Google não aceitou a sua sugestão.
- Relatório de indexação de páginas. O status Duplicada: o Google escolheu uma canonical diferente da do usuário lista essas URLs.
Se o Google escolher outra URL, procure sinais conflitantes: links internos para a duplicata, a duplicata no sitemap, um redirecionamento na direção oposta, conteúdo diferente em páginas "idênticas". Mais em como verificar se uma página está indexada.
Endereço canonical vs. redirecionamento
Eles costumam ser confundidos. Um redirecionamento leva fisicamente o bot e o usuário para outro endereço: a página antiga deixa de abrir. Um endereço canonical mantém as duas páginas acessíveis, mas pede que uma delas seja considerada a principal. A regra é simples: se os usuários não precisam mais do endereço antigo, use redirecionamento; se as duas versões são necessárias, por exemplo, um produto em duas categorias, use endereço canonical.
Como isso se relaciona com a promoção
Os links devem levar ao endereço canônico. Se a página promovida indicar outro endereço como canônico, o peso irá para ele, e não para ela. Você pode verificar as tags com o analisador de meta tags, e a escolha da página para o lançamento é abordada no artigo “Qual página escolher”.