Canonical URL
The preferred address of a page when several URLs show the same or very similar content.
What it is
A canonical tag (rel="canonical") or HTTP header names the URL you want indexed among duplicates, such as versions with tracking parameters, filters or trailing slashes. It is a strong hint, not a command, so search engines can choose a different URL if signals conflict.
Why it matters
It consolidates signals onto one URL and stops duplicates from splitting rankings or wasting crawl effort. On large e-commerce catalogs with filters and parameters, canonical rules decide what search engines see.
Common mistakes
- Canonicals that point to redirected, noindex or 404 pages
- Conflicting signals: canonical, sitemap, internal links and redirects that disagree
- Canonicalizing paginated or filtered pages to one page and hiding real content
- Missing self-referencing canonicals
How I handle it
I compare the canonical each page declares with the URL Google chose in Search Console, then align sitemaps, internal links and redirects so all signals agree.
How to check it
- Fetch a sample of pages and read the rel="canonical" each one declares.
- Use the URL Inspection tool in Search Console to compare the declared canonical with the one Google selected.
- Look for pages whose canonical points to a redirect, a noindex page or an error.
- Check that sitemaps and internal links use the canonical URL, not a variant.
Illustrative example
Example scenario: a product is reachable at /shoes/red-runner and at /shoes/red-runner?color=red&ref=email. Both should declare /shoes/red-runner as canonical, so links and signals combine on one URL instead of splitting.
Frequently asked questions
Is a canonical the same as a 301 redirect?
No. A redirect sends visitors and bots to another URL. A canonical keeps both URLs reachable but tells search engines which one to index.
Will Google always follow my canonical?
Not always. It is a strong hint. If other signals such as redirects or internal links disagree, Google may choose a different URL.