Quickly generate accurate HTML canonical tags to prevent duplicate content issues.
Enter the primary, preferred version of the webpage URL — the one you want search engines to index when duplicate or parameterized versions exist.
What a canonical tag actually does, where it belongs on the page, and answers to the questions we get asked most.
A canonical tag is a single HTML link element,
<link rel="canonical" href="..." />, placed in a
page's <head> section to point search engines to
the authoritative version of that page's content.
Most sites generate several URLs that render essentially the same page — a product page reached through different filter combinations, a URL with and without a tracking parameter, or the same page served over both http and https. Without a canonical tag, search engines have to guess which of those versions to treat as the "real" one to index and rank; the tag removes the guesswork by stating it directly.
The generated code goes inside the <head> section
of the page it describes — never in the <body>,
and only once per page.
Every indexable page should carry its own canonical tag, and in most
cases that tag should be self-referencing — a page's canonical URL
points to itself — so that any parameterized or tracked version of
that same URL still consolidates back to one clean, indexable
address. For non-HTML files like PDFs, use the equivalent HTTP
Link header instead, since there's no
<head> to place a tag in.
No — Google has stated there's no ranking penalty for ordinary duplicate content like parameterized URLs or an http/https pair.
The real cost is dilution, not punishment: when the same content exists at multiple URLs, links, shares, and ranking signals get split across those versions instead of consolidating on one, and Google has to choose which URL to actually show in results — a choice a canonical tag lets you make explicitly instead of leaving to chance.
Links and authority pointed at duplicate URLs get credited to one preferred version instead of being split apart.
Tracking codes, filters, and session IDs stop creating competing near-duplicate URLs.
The tag is generated entirely in your browser — nothing you type here is sent to a server.
?utm_source= attached — from
being treated as separate, competing pages.