CanonicalTag.com logo, a canonical tag referenceCanonicalTag.comThe canonical tag, explained
Browse by topic

Canonical tag topics

The reference is grouped into six topics that follow how canonical problems reach people: as a Search Console status, a conflict between signals, a URL that should not exist, or a question about one platform. Start in the group that matches what you are holding.

Start from the symptom

Search Console statuses are the right entry point when the Page indexing report sent you here. Alternate page with proper canonical tag is usually good news: the page points elsewhere and Google agreed. Most of the others call for judgment rather than an immediate fix, and the verdict at the top of each page says which kind applies. Duplicate without user-selected canonical means no preference was declared, so Google picked one, and its page explains how to judge that pick.

The page on the user-declared canonical versus the Google-selected one explains the two labels in URL Inspection that every status depends on. Read it first if those labels are unfamiliar, because the rest of the group assumes them. The group also covers a sitemap URL that loses the contest, Duplicate, submitted URL not selected as canonical, which usually means the sitemap lists duplicates.

Conflicts and edge cases suit a reader whose markup looks correct but whose results do not. Multiple canonical tags, usually a theme and a plugin each printing one, is the most common mechanical fault and the easiest to confirm in View Source. The subtler faults are logical: signals that cancel out, as when one page carries a canonical that consolidates it and, at the same time, a noindex rule that excludes it.

Pagination is the classic structural case: pointing every page of a series at page one hides the products or articles listed deeper in it, so each page in the series should name its own URL as the canonical. The same group also explains when a cross-domain canonical is still an appropriate choice, now that Google prefers noindex on syndicated copies, and why a canonical aimed at a redirect or an error page wastes the signal.

Start from the URL

The canonical domain page is the place to start when one page answers at several hosts or protocols, since choosing one host on HTTPS comes before any tag. The URL variants and duplicate URLs group as a whole is written for a reader in exactly that position. The choice is enforced at the server: canonical redirects collapse every variant into the chosen URL with a single permanent hop, before a tag is read.

URL parameters for tracking, sorting and filtering create near-identical pages that have to stay reachable, and a canonical consolidates them without stopping Google from crawling them, so that page also covers crawl control for filters and sort orders. Product variants raise a narrower question with two valid answers: a URL for each color or size, or one base URL that every variant points to.

AMP pages and m-dot mobile URLs need annotations paired in both directions, or Google may ignore them. Files with no HTML head, such as PDFs, need a different route altogether: the canonical travels in an HTTP response header instead. The group closes with non-canonical URLs, which audit tools flag even though every site has them; the defect is referencing them in sitemaps, internal links and hreflang.

Start from the stack

CMS and website platforms are for a reader who knows the concept and needs the setting. On WordPress the answer depends on what is installed, because core covers only single posts and pages and the SEO plugin usually takes over the rest of the site. Start with the core page, then read the page for whichever plugin is active, such as Yoast SEO, which replaces the core tag.

Squarespace writes a self-referencing tag you cannot edit natively, and adding another through code injection creates a duplicate rather than an override. Hosted builders differ from each other more than from self-hosted systems, so no default is safe to assume. At the opposite end, Webflow writes nothing until a global canonical URL is set, which leaves many sites with no canonical at all.

Ecommerce platforms are a separate group because every filter, sort order and variant can mint a URL. Shopify folds collection product URLs into one product URL automatically, so its page is mostly about what themes, apps and internal links can break. BigCommerce does much the same for a product listed in several categories, with no free-text override. Magento ships with canonicals switched off and, once enabled, still does not strip layered-navigation filters.

Next.js relies on its Metadata API and a correctly set base URL, and most of its canonical problems trace to that base URL. Code and JavaScript frameworks, as a group, are for developers: nothing is automatic, and the task is to emit one correct tag in server-rendered HTML. A React app needs a head manager, and a tag injected only in the browser is the risky case.

Crossing between groups

Few real problems stay inside one group. The status Duplicate, Google chose different canonical than user may trace back to a platform default, a redirect, or a sitemap full of parameter URLs. Start where the symptom appeared and follow the links to the group where the cause lives. The self-referencing canonical is the pattern every group returns to, because it removes ambiguity anywhere.

Google Search Console Statuses

5 pages

The canonical states you see in the GSC Page indexing report, what each one means, and how to respond.

Conflicts & Edge Cases

6 pages

How the canonical tag interacts with noindex, pagination, hreflang, redirects, and other signals.

CMS & Website Platforms

13 pages

Setting and controlling the canonical tag in the major content management systems, site builders, and SEO plugins.

Ecommerce Platforms

4 pages

Canonical tags on hosted and self-hosted ecommerce platforms, where product and category URLs multiply.

URL Variants & Duplicate URLs

7 pages

Where duplicate URLs come from in the first place: host and protocol variants, redirects, parameters, product variants, AMP and mobile URLs, and non-HTML files.

Code & JavaScript Frameworks

4 pages

Emitting canonical tags from your own code: plain PHP, Next.js, React, Nuxt, and other frameworks where nothing is automatic.

Top