Guide · Indexing
The canonical address: designating the authoritative page
Several addresses show the same content: the bare page, the filtered page, the page with a tracking parameter. The canonical address designates, among them, the authoritative version. It fits on one line, it can be re-read in a few seconds, and it is one of the signals that gains the most from being written correctly. Here is what it designates, how far it reaches, and the five rules that hold it together.
What it designates, and how far it reaches
A canonical address is an indication: you tell the engine which version you consider the main one; it takes this into account, and it remains free to retain a different address if it deems your declaration inconsistent. A canonical confirmed by internal links, by the sitemap and by redirects is a canonical that is followed: the signal holds through the agreement of everything else with it.
It leaves the entire index open: it is a designation, and its only effect is to choose. When it points to ANOTHER page, you are yourself asking Google to forget this one — and it complies. This is a frequent cause of "crawled, currently not indexed" pages on sites that are otherwise impeccable.
The rule therefore fits in a single sentence. The canonical must be absolute and identical to the address actually served: same protocol, same domain, same letter case, same trailing slash. Any discrepancy turns it into the designation of a different resource.
The five rules to uphold
They all come down to the same point: the tag designates exactly the page that carries it. Yet a tag that is present and looks correct may designate something else. Each of these rules can be checked from the served response, on the evidence.
01
An absolute canonical
Written as a relative path, the canonical is resolved by the browser and by the crawler from the current address. A path that is correct on one page becomes wrong on another, and the signal then designates an address still waiting to be written.
Checking it: Read the raw value of the tag in the HTML response, rather than the one shown to you by an inspector: the latter already shows you the resolved address, hence always plausible.
Upholding it: An absolute address, protocol and domain included, written out in full in the tag. It is the only form that reads the same wherever it appears.
02
The trailing slash exactly as it is served
The server serves an address with a trailing slash, the canonical declares another, written with the slash removed — or the other way round. These are two different addresses, so the page declares itself somewhere other than where it is.
Checking it: Compare the served address and the declared address character by character. A difference of a single sign is enough to set the two apart.
Upholding it: Choose one form, serve it everywhere, declare it everywhere: internal links, sitemap and canonical aligned on the same spelling.
03
The protocol, the domain and the letter case actually served
A canonical left in plain HTTP while the site is served over TLS, or written with a domain and letter case other than those served, designates a different resource. An address like the following, written here as text, designates a page different from its secure version:
http://exemple.fr/Page/and the www subdomain follows the same rule. The declaration repeats the protocol, the domain and the letter case actually served.Checking it: Request the page as it is published and re-read the tag in the response. The canonical must be identical, to the letter, to the address you have just called.
Upholding it: Generate the canonical from the served address itself, rather than from a constant copied over from a staging environment.
04
A canonical placed on the final destination
When the tag designates an address that responds with a redirect, the engine is sent elsewhere by the very page presented to it as the authoritative one: the signal is lost. Placed on the destination, it arrives safely the first time.
Checking it: Call the declared address and look at the response code. A valid canonical responds directly, in a single step.
Upholding it: Point the canonical to the final destination, the one that responds itself, the first time.
05
A canonical in a single step
A points to B, which points to C. The signal gets lost along the way, and the page meant to be authoritative turns out to be one other than the one you think. The chain is the silent version of the previous point: every link is valid, and the whole says nothing.
Checking it: Follow the declaration from one link to the next. A page whose canonical points to a page that points to yet another is already part of a chain.
Upholding it: A single step: every variant of the same content points directly to the chosen version, and to it alone.
Canonical and hreflang: each language is canonical of itself
The two signals say two different things. hreflang announces that several pages are the language versions of the same content; the canonical designates, within a language, the authoritative URL. Each language page is therefore canonical of itself.
The temptation is to believe that the French version is "the original" and to point the translations to it. A translated page that declares itself canonical of the French version removes its translations from the index: you have written yourself that these pages boil down to that one. On our site, eight languages are served — French, English, Spanish, German, Italian, Portuguese, Dutch and Polish — and each carries its own canonical.
Canonical and pagination
A paginated series raises the same question in reverse. The second page of a list shows different content from the first: these are two distinct pieces of content, hence two URLs of equal standing. Declaring page two canonical of page one amounts to asking that page two be forgotten — and with it, the items it alone presents.
Every page in the series is therefore canonical of itself. The canonical remains the tool for variants that leave the content intact — sorting, filters, tracking parameters — while pages that each present different items each keep their own.
How we keep it that way
A canonical that is correct on release day can turn wrong at the next publication: a template change, a staging domain left in a constant, a trailing slash added by a route. That is why verification belongs to publication itself, rather than to proofreading.
On this site, the publication gate compares the canonical of EVERY page served against its expected URL, and clears the release only if they are identical, to the letter — across all eight languages. SEO Records applies the same principle on your site: it corrects the signals at the moment the page is served, from €199/year.
Read your page's canonical
The Checker reads your URL and reports the state of this signal, free of charge, in about ten seconds. Your site stays exactly yours, untouched before and after. The Audit SEO Records goes further: it reads your entire sitemap, page by page, and hands you the dated report.