Technical SEO guide
One page, forty addresses: what a canonical tag has to settle
Search engines treat every distinct URL as a separate page. /shop, /shop/, /shop?utm_source=newsletter and http://www.example.com/shop/index.html can all show the same content, and without a hint Google has to guess which one to index. The canonical tag is that hint: one line in the <head> naming the address you want counted.
What this tool cleans up
- Tracking parameters —
utm_*,gclid,fbclid,msclkidand similar, which change the URL but never the page. - Fragments — everything after
#is never sent to the server, so it is never part of a canonical. - http and the wrong www — pick one host form and every variant points at it.
- Index files —
/index.htmland/default.aspxare the same page as the folder they sit in. - Trailing slashes — keep, add or remove them, consistently across the whole site.
Parameters that do change the content, like ?page=2 or ?id=5, are kept by default, and the tool tells you when it has kept one.
Tag or header?
The <link> tag goes in the HTML of the page. The Link HTTP header does the same job and is the only option for files that have no HTML, such as PDFs. Use one or the other for a given page, not both with different values.
Rules that avoid the usual mistakes
- Use a full, absolute URL. A relative canonical is easy to get wrong.
- Every page should point at itself unless it really is a duplicate of another.
- Point at a page that returns 200. A canonical to a redirect or a 404 is ignored.
- Do not combine a canonical with
noindexon the same page; the two signals contradict each other.
After it is live
Run a page through the Canonical Tag Checker to confirm the tag is read and its target answers, and the WWW/HTTPS Canonicalization Checker to confirm the host-level redirects agree with it.
Frequently asked
Is a canonical tag a command?
No, it is a strong hint. Google can pick a different canonical if other signals, such as redirects, internal links and the sitemap, disagree with the tag.
Should paginated pages point at page one?
No. Each page in a series is different content, so each one should be its own canonical.
Is my list sent anywhere?
No. The tags are generated in your browser as you type.
