When the same content is available at several URLs, search engines pick one as the main version and treat the others as duplicates. That process is canonicalization. You can state a preference with redirects, rel="canonical" annotations and sitemaps, but you do not have to. If you say nothing, Google picks the version it considers best to show users, and it can still choose differently from your suggestion.
Need help with SEO?
Comppound runs SEO and AI search for SaaS companies. We plan what to publish, produce it with AI, and every page passes automated checks, and a person reviews samples and anything high-risk.

- Published to your site and tracked in Search Console
- One person answers for your account
- Plans from $400 a month, terms from 3 months
The signals, from strong to weak
Google documents three main methods and says they stack, so combining them makes your preferred URL more likely to appear in results. They have to agree with each other.
- Redirects are a strong signal. Use them when you are retiring the duplicate page
- rel="canonical" annotations are a strong signal, set with a link element in the head or an HTTP Link header
- Sitemap inclusion is a weak signal, because Google still decides which pages are duplicates
<link rel="canonical" href="https://example.com/pricing" />What not to use
Google's guidance rules out several tools that people reach for. Robots.txt is one, since disallowed URLs can still be indexed without their content. Noindex is another, because it removes a page from Search entirely. The URL removal tool hides all versions of a URL.
Canonical tags have rules of their own. Use absolute URLs, do not point at a URL fragment, and do not point at HTTP pages when HTTPS versions exist.
Where duplicates come from
Most duplicates are created by the system rather than by writers. Common sources include HTTP and HTTPS versions, www and non-www hosts, trailing slash variations, tracking and filter parameters, and print or AMP versions of a page. Decide on one pattern, redirect what you can, and link internally to the canonical URL.
Example
A pricing page with many addresses
Hypothetical expense tool Tillwren found its pricing page at four URLs, including versions with campaign parameters and a trailing slash. Internal links used a mix of them.
The team redirected the host and slash variations to one address, kept a self-referencing canonical on it to cover parameter URLs, listed only the clean URL in the sitemap, and updated internal links.
Common mistakes
Sending mixed signals
A canonical tag naming one URL, a sitemap listing another and internal links to a third leave Google to decide for itself.
Canonicalizing pages that are not duplicates
A canonical tag from a long guide to a different short one misuses the signal. Google may ignore it, and if not, the guide may drop out of results.
Frequently Asked Questions
Canonicalization is the whole process of selecting a main URL. The canonical tag is one signal you can use to influence that choice.
Your tag is a strong signal, but Google weighs others too. Check that redirects, internal links and sitemaps agree, and use URL Inspection to see which URL Google selected.
Google lists a self-referencing canonical on the canonical page as a good practice.
Keep reading
- Canonical URL: A canonical URL is the version of a page search engines treat as the main one when several URLs show the same or very similar content.
- Duplicate Content: Duplicate content is the same or very similar content at more than one URL. It is usually a technical issue to consolidate, not a cause for a penalty.
- 301 Redirect: A 301 redirect is an HTTP response telling browsers and search engines a URL has moved permanently to a new address.
- XML Sitemap: An XML sitemap is a file listing the URLs you want search engines to discover and crawl, optionally with each page's last-modified date.
- AMP: AMP is a web framework for building fast-loading pages under strict rules on JavaScript and CSS. Google no longer requires it for the Top Stories carousel.
- Cache-Control: Cache-Control is an HTTP header that tells browsers and CDNs whether and how long to store a response. Good caching makes repeat loads and crawls faster.
- Chrome UX Report: The Chrome UX Report is Google's public dataset of real-user performance from Chrome. It is the field data behind Core Web Vitals in Search Console.
- Click Depth: Click depth is the number of clicks it takes to reach a page from the homepage. Pages buried deep tend to be crawled less often and get less internal link value.
