scalpel@labs: ~/glossary/canonical-tag.mdx5 sections

Canonical Tag: How to Tell Google Which URL Is the Original

The canonical tag (<link rel="canonical" href="...">) tells search engines which URL is the authoritative version when equivalent content is reachable at multiple addresses - via parameters, protocol, www/non-www, trailing slashes, or syndication.

extension: Scalpel SEOupdated: 2026-08-14read_time: 2 min
less canonical-tag.mdx

Why it matters

Without a canonical, Google picks which URL to index among duplicates using its own signals. This can land ranking signals on a URL you didn't intend or split authority across near-duplicate pages. A canonical is a strong hint that helps Google pick the version you prefer and combine all ranking signals there.

Add a self-referencing canonical on every indexable page. This prevents accidental duplicate indexing even when you think only one version exists. Canonical tags cost nothing and serve as insurance.

How it works

Place a <link rel="canonical"> tag in the head of every duplicate page, pointing to the version you want indexed. The canonical should be an absolute URL and should point to the exact version you want in results. The page with the canonical tag does not need to be the canonical URL itself. For example, a page at example.com/product?color=blue can have a canonical pointing to example.com/product.

Google treats the canonical as a strong hint, not an absolute directive. If Google sees conflicting signals (your canonical says URL A, but your sitemap and internal links say URL B), Google may ignore your canonical and pick its own. Keep your canonicals consistent with redirects, sitemaps, and internal links.

What does not matter

The canonical URL does not need to be the address a visitor typed. It is a signal for indexing only, not a redirect. Visitors still see the URL they requested. The canonical has no effect on navigation or user experience. Query parameters and session identifiers are common sources of duplication, but the canonical handles them cleanly.

You do not need a canonical on every page if only one URL version exists. However, adding a self-referencing canonical on all pages costs nothing and prevents future problems if you later introduce parameters.

Code example

Good: Point all duplicates to a single clean version.

<!-- On https://example.com/shoes?ref=newsletter&utm=email -->
<link rel="canonical" href="https://example.com/shoes" />

Broken: Multiple canonicals or a canonical pointing to a different domain without intent to consolidate.

<!-- On https://example.com/shoes -->
<link rel="canonical" href="https://other-site.com/shoes" />

How Scalpel shows it

The Meta panel reads the canonical link tag and any Link HTTP header, resolves it to an absolute URL, and displays it. Scalpel flags common mistakes: a missing canonical, a canonical that points to a redirected or noindexed page, and a mismatch between the canonical and the current page URL.

Sources