A canonical tag is a rel="canonical" link element that tells search engines which URL is the preferred version when the same or very similar content is reachable at several addresses. It is used on parameter, filter, http/https and www duplicates, and consolidates ranking signals onto one URL. Google treats the canonical as a hint, not a command.
What does a canonical tag do?
A canonical tag resolves duplicate content by nominating a single URL for indexing. When the same product page opens with a sort parameter, a campaign tag or under a different category path, the canonical tag consolidates link equity and ranking signals onto the preferred URL and makes that URL the one shown in search results.
The tag goes in the page head as an absolute URL: link rel="canonical" href="https://example.com/page/". For non-HTML files such as PDFs, the same information can be sent in an HTTP Link header. Duplicate content is not a penalty in Google; the real problem is split signals and Google picking a version you did not want.
Which signals does Google use to choose the canonical URL?
Google chooses the canonical URL from a combination of signals, not from a single tag. The canonical tag is only one of them; when the others point the same way, Google almost always follows your declaration.
- —Redirects: a 301 is the strongest signal.
- —The rel="canonical" tag or HTTP Link header.
- —The URL listed in the sitemap.
- —Which URL internal links use.
- —The preference for HTTPS over HTTP, and the URLs in the hreflang cluster.
Related services
What is a self-referencing canonical?
A self-referencing canonical is a canonical tag that points to the page's own clean URL, which means canonical pages should carry a canonical tag too. A self-referencing canonical makes the preferred address explicit when visitors arrive through copies with added parameters (utm_source, fbclid, gclid) or different letter casing.
The key detail is consistency: the canonical URL should match the URL in the sitemap, internal links and hreflang exactly, including protocol, www and trailing slash. On 404 Ajans's own site, canonical, hreflang and sitemap URLs are generated by the same function with the same trailing-slash rule for exactly that reason. On prerendered sites, the canonical should also exist in the static HTML; a canonical added only by JavaScript is seen by Google after rendering.
How do you use canonicals on parameter and filter URLs?
On parameter URLs, the canonical ties parameters that do not change the content back to the clean URL. Sort, view, session and tracking parameters get a canonical to the clean page. Filter combinations that genuinely change the content and have their own search demand should instead become standalone pages with their own self-referencing canonical.
- —Parameters such as ?sort=price, ?view=grid, ?utm_source=...: canonical to the clean category URL.
- —Pagination (?page=2): each page canonicalizes to itself; pointing every page to page one makes products harder to discover.
- —Searched filter combinations (e.g. "red running shoes"): a clean, stable URL with a self-referencing canonical.
- —A product reachable via several category paths: canonical to one product URL, and internal links should use that URL too.
Search Console's URL Parameters tool was retired in 2022; parameter handling now relies entirely on canonicals, consistent internal linking and, where needed, robots.txt.
Read next
How do you consolidate http, https and www duplicates?
The http, https, www and non-www versions can look like four separate copies of the same site. The right way to consolidate these duplicates is to pick one version, 301-redirect the other three to it at server level and write every canonical tag with that version. Here the canonical does not replace the redirect; it reinforces it.
The same logic applies to trailing slashes (/page versus /page/) and letter casing. Once you have chosen, redirects, canonicals, the sitemap and internal links should all use the same form; when signals conflict, Google makes its own choice.
What is the difference between canonical, noindex and a 301?
Canonical, noindex and 301 solve different problems. A canonical suggests which of two pages should be indexed while both stay available to visitors. Noindex asks for a page to stay out of the index entirely. A 301 removes the old address and moves both visitors and bots to the new one. Choosing the wrong tool can drop pages from the index.
- —Canonical: the duplicate is useful to users (filters, tracking parameters, print version) but you want one version indexed.
- —Noindex: the page exists for users but should not appear in search (thank-you pages, internal search results, legal pages).
- —301: the old URL is no longer needed; the content has moved permanently.
- —Do not combine: noindex plus a canonical to another page on the same URL sends conflicting signals. Google advises against using noindex to consolidate duplicates.
How do canonical and hreflang work together?
On multilingual sites, canonical and hreflang work together: each language version points its canonical at its own URL, while hreflang tags list the other language versions. Pointing the English page's canonical at the Turkish page makes the English page a duplicate, drops it from the index and invalidates the hreflang cluster.
In a correct setup, for example, /hizmetler/ canonicalizes to itself and lists both itself (tr) and /en/services/ (en) via hreflang; the English page mirrors this with its own self-referencing canonical. Every URL used in hreflang should be the canonical URL of that page.
Local support
What are the most common canonical mistakes?
Most canonical mistakes are silent: the site works, but important pages show up in Search Console as "Duplicate, Google chose different canonical than user" or "Alternate page with proper canonical tag". The most common canonical errors are listed below; most can be fixed with a single line at template level.
- —Every page's canonical pointing to the homepage (a template bug).
- —Relative URLs, or the wrong protocol or domain.
- —A canonical pointing to a URL that redirects, returns 404 or is noindexed.
- —Blocking the canonicalized page in robots.txt; if Google cannot crawl the page, it cannot see the canonical.
- —More than one canonical tag on a page; Google may ignore all of them.
- —In SPAs, the canonical not updating on navigation, leaving the first page's canonical in the head.
- —Canonicalizing pages with clearly different content to each other; Google ignores the hint.
To check, Search Console's URL Inspection tool shows both the canonical you declared and the one Google selected. If they differ, one of your signals (internal links, sitemap, redirects) contradicts the canonical.
