• Technical SEO · rel=canonical

Canonical settings on the site: one page is one link by which it is known

Setting up canonical on the site does not start with a template, but with the question at which address the search engine already knows each of your pages. The work consists of three parts: one main form of the domain and a constant transition to it from all others, a self-referencing canonical link on each type of page, a reconciliation of the announcement with what lies in the site map. On July 31 and August 1, 2026, we recorded the following section on live stores: in one, the address from www gave the site without transition, in the second, next to the working map, there was an outdated vein - 7,782 records for 2,755 addresses.
See how it works
Price
after a free audit
Guarantee
30 days after project sign-off
What are we doing?
domain forms, canonical on all types of pages, reconciliation with the site map
after a free audit
Price
30
Guarantee

days after project sign-off

domain forms, canonical on all types of pages, reconciliation with the site map
What are we doing?
3-12
Term

working days: depends on the number of page types, not the size of the catalog

free canonical address verification, 1-2 business days
Before the estimate
4,236
Measured address duplication

entries in the sitemap for 1,300 unique addresses — 3.3 repetitions per address

7,782
The second card is next to the working one

records, 2,755 unique addresses, marketable about 2,706 against 3,947 in the current

that search will obey: canonical is a hint, not a command
What we do not promise
Who it's for

Situations where this service delivers results

Scenario 1 of 4

The site opens at several addresses at the same time

With and without www, by secure and non-secure protocol. Each variant that gives code 200 without switching to the main one is a separate copy of the site for the bot. In the irrigation system store we measured on August 1, 2026, the unsecured address honestly gave a permanent transition, but the www address gave a code of 200. The duplication there keeps one canonical link instead of two signals.

We'll review your situation in a free audit
Cases

Tasks and results in numbers — all metrics measured by us

store of automatic and drip irrigation systems, catalog of 300 items

Task
Check if the site is not duplicated between domain forms and protocols.
Solution
Running of all domain and protocol options with response code fixation; checking canonical links on the main page, in the category and in the product card; control of the behavior of a non-existent address.
Result
An unprotected address gives a permanent transition, canonical links are on three types of pages and lead to a domain without www, a non-existent address correctly gives 404. But an address with www gives a 200 code without a transition - duplication removes only canonical, that is, one signal instead of two. At the same time, the catalog contains 300 products in 40 categories at 4 nesting levels, confirmed by two independent methods with a 0% discrepancy. Measurement 01.08.2026.

wholesale store of cosmetics for the beauty industry, catalog of about 4,000 items

Task
Find out why there are addresses in the index that are not in the current site map.
Solution
We compared the content of two side-by-side sitemaps and checked both against the actual directory.
Result
The canonical map contains 4,167 addresses: 3,947 products, 166 brands, 47 categories, 6 information pages and the main page. Nearby is an outdated map with 7,782 entries and only 2,755 unique addresses - 2,454 of them are repeated three times, and only about 2,706 are commercial. That is, the second map is both duplicated and incomplete. Additionally: there is no address of the second language version in the map, although bilingualism is implemented. Measured on 07/31/2026.

online store of the official seller of garden tools

Task
Evaluate how well the product addresses in the site map are consistent.
Solution
Traversing the map with a breakdown of unique addresses by nesting levels and page types.
Result
4,236 entries for 1,300 unique addresses—about 3.3 repetitions per address: the same card ends up in the map under multiple category paths. Out of 1,300 addresses, about 1,213 are product cards, the rest are business cards. At the same time, structured data is limited to the description of the organization and contacts: there is no markup of goods and breadcrumbs on the main page. Measured on 07/31/2026.
What's included

Complete list of work and what you get as a result

  • We choose one basic form of the domain and make a permanent transition to it from all others: the site ceases to exist for searching in several copies.
  • We reduce the site to one protocol, including the intermediate steps of transition chains - no step inside should lead to an unsecured address.
  • We put a self-referencing canonical on each type of page: main, category, card, brand, informational. Search stops choosing for you.
  • We remove the canonical links leading to the main or other language version - they exclude entire branches of the site from the index.
  • Clean canonical addresses from campaign labels, sorting parameters, and session IDs: an ad transition no longer generates a separate address.
  • We compare the addresses from the site map with those declared canonical — the signals stop contradicting each other.
  • We remove outdated parallel maps of the site, if they remained from the previous assembly: the bot reads both and does not know which one to trust.
  • We give the rules for the server and the template in text, and not just apply them, so that they can be checked or repeated on another project.
  • We make a control tour after the work and show the table "was — became" for each type of pages.
  • We look at the indexing report 30 days after the work and explain each movement: a drop in the number of pages after cleaning duplicates is a normal course of events.
When this service isn't right

What's not included — so there are no surprises at delivery

  • Combining several domains into one site is another task with a different deadline.
  • Duplicates generated by catalog filters: they are closed by a separate pagination and faceting service.
  • Writing unique texts for pages that remain after cleaning.
  • Setting up hreflang for language versions is a related job and is counted separately.
  • A guarantee that the search will select exactly your canonical address.
Process steps

Transparent stages with approval at every step

Total duration:3–12 days

  1. A slice of the current state and decision by domain

    1-2 working days

    Running of all domain and protocol variants with fixing of the response code, traversal of the site with canonical sampling for each type of pages, comparison with the site map. Here we fix which form of the domain is the main one. On a site with three types of pages, this and the next two stages are compressed into one day - hence the lower deadline.

  2. Server-level transition rules

    1-3 working days

    One continuous transition from each redundant domain variant to the main one, with no intermediate steps: a chain of three transitions eats up the first response time on each bot visit. We check not only the main address, but also an arbitrary internal address with parameters.

  3. Canonical in templates for all types of pages

    1-4 working days

    A self-referencing canonical link in the server's HTML response, not a post-load script. We remove links to the main and foreign language versions, clean the address from parameters that do not change the content of the page.

  4. Site map and parallel maps

    1-2 working days

    We check the addresses in the map with the canonical ones, look for the second map from the previous collection, count entries against unique addresses. The difference between these two numbers is your duplication volume.

  5. Inspection, transfer of rules and observation

    1 working day

    Re-circulation, table "was - became" by types of pages, rules in handwritten text. Next, we look at the indexing report for 30 days: in the first weeks, the number of pages in the index usually drops, and this is the expected result of cleaning, not a breakdown.

Free canonical address check

Canonicalization is the area where the defect is the cheapest to find and the cheapest to fix, but it is almost never visible from the admin. Externally, it is checked in an hour of work and a couple of days of waiting, so we do it for free and without access to your site.

What we measure

  • Availability of the site for several domain optionsWith and without www, by secure and non-secure protocol. Measured example: in an irrigation system store, an unsecured address gives a permanent transition, and a www address gives a code of 200 without a transition.
  • Availability of canonical on each type of pageMain, category, product card, brand, informational. The markup is often only on part of the types — and it is the part that is not there that is then duplicated.
  • Where does canonical lead?To yourself, to another page or to another language version. The latter disables an entire language branch from the index, and the owner will know about it by the drop in traffic, not from the panel.
  • Compatibility with the sitemapDo the addresses in the map match the declared canonical ones. Measured contrast: 4,236 entries per 1,300 unique addresses — 3.3 repetitions per address.
  • Parallel site mapsDoes not live next to a relevant friend, outdated. Measured example: canonical map for 4,167 addresses and next to stale for 7,782 entries with 2,755 unique ones.
  • Parameters in canonical addressesCampaign tags, sorting, and session IDs are not included in the canonical. If they hit, each advertising transition generates its own canonical address.

What you get

  • Table: type of page - availability of canonical - where it leads - whether it matches the site map.
  • A list of domain options that give the site without switching to the main one, with response codes.
  • Ready-made rules for the server and template - in text that can be given to any contractor.
  • A conversation for 30–40 minutes on the findings, where you can argue with the conclusions.

Timeline: 1-2 working days

Why is it free

Because the check is short, and the finding often makes more expensive work unnecessary: ​​half of the requests "we have duplicates, we need to do something" are closed right here, without promotion and without rewriting the texts.

What's next

If everything is in order, let's say it directly, and we'll disagree on that. If not, let's name a list of works with deadlines by stages; in most cases it is a few days, not weeks. Then the contract, bill, act.

Short form: your contact and site URL

  • Contract, act and 30-day warranty

    Every project gets a written contract: scope, deadlines, amount, acceptance procedure. After delivery — act and invoice, then 30 calendar days of warranty.

  • Sole proprietor & bank transfer

    The contractor is a registered sole proprietor. Payment by invoice with closing documents.

  • Rights & access — yours

    Code, design and materials transfer to you after full payment. Domain, hosting, repository and analytics are registered to you.

  • Client portal instead of email chains

    During the project you get access to a portal: contracts, invoices, acts and project status in one place.

  • European clients

    Among our work — projects for Norway, Bulgaria, Moldova and Spain.

  • Verifiable numbers

    Every case in the portfolio comes with a link to a live site and a technical measurement.

  • Audit first, then pricing

    There is no price list on the site intentionally: the scope of the same work differs multiples between clients.

  • We say "no" when unsure

    If the task isn't ours or the deadline is unrealistic — we tell you upfront.

Did not find your case?

Describe how it works on your side — we will tell you whether “Canonicalization of addresses” fits and what it means in your situation. No brief and no call: one question, one answer.

What affects the price

Why two seemingly identical tasks are priced differently

  • Number of page typesThe rule is written for each type separately, and it is the types, not thousands of products, that determine the volume. In the wholesale catalog of cosmetics, which we measured, there are five types: product, brand, category, information page and main page.
  • Where the transition rules liveAccessing the server configuration is an evening of work. Hosting without such access means rules in .htaccess or in the CMS module, checking each option separately and a longer cycle of coordination with the hoster's support.
  • Site map statusOne clean card is reconciliation and closure of the issue. Two parallel cards from different generators - first figure out which module writes each, and only then turn off the extra one: the card that was removed at random takes the working addresses with it.
  • Language versionsEach adds its own set of canonical addresses, and each pair must be checked individually. This is also where the error with canonical between languages ​​is usually found - on a bilingual site, this is a separate stage, not an item on the checklist.
  • Parameters in addressesSorting, list view, campaign labels, session IDs. Each parameter is a separate decision: to throw it out of the canonical address or to keep it, because it changes the content of the page. It is sorted out by hand, there is no automatic rule here.
Technologies & integrations

What we build on and what it connects to

Stack

  • rel=canonical — page level hint; the search has the right to choose another address, so it never works alone
  • 301-redirect — removes the address forever; the price of the solution is that it is not suitable for filters and sorting
  • nginx and .htaccess — rules for transition between domain forms live on the server; without access there, this part is not done
  • Screaming Frog — traversal with canonical fixation for each address; on tens of thousands of addresses rests in memory, then we cut the detour by sections
  • Search Console, the indexing report is the only place where search selections are visible; data comes with a delay of several days
  • sitemap.xml — list of addresses to bypass; does not guarantee indexation, Google writes it directly
  • OpenCart SEO URL and canonical in WordPress - there are in the box, but on added templates they are often missing on part of the page types

Integrations

  • Google Search Console
  • Bing Webmaster Tools
  • Cloudflare
  • GA4
Canonical link vs. 301 redirect

How this option differs from the alternative

What happens to the old address?remains available: the visitor sees the page
Signal strengthhint - the search may not listen to it if the rest of the signals conflict
Where appropriatesorting, campaign labels, same product in multiple categories
The price of errorcanonical on the main page of all pages gradually removes the site from the index
Who puts it?site template or CMS module
What we need from you

We can't start without this — best to prepare in advance

  1. Access to the server configuration or to the hosting panel: the rules for switching between domain forms live there.
  2. Access to site templates or to the admin with the right to edit the theme code — canonical is placed in the page markup.
  3. Decision, which form of the domain is the main one: with www or without. This is a business decision, and it is expensive to repeat it later - you will have to change external links and business cards a second time.
  4. Access to the Search Console with full rights: without it, we will not see which address the search already considers canonical.
  5. One person on your end who can answer if the pages left over from the previous template are needed.

If something is missing — let us know, we'll help you gather it or do it as a separate task.

FAQ

Most frequently asked questions — with concrete answers

How does canonical differ from a redirect?

Redirect removes the address: both the visitor and the bot get to another page, and the old one is no longer there. Canonical leaves the page available, but tells search to consider the other as the main page. Therefore, filters and sorting are closed with a canonical link — the buyer must use them — and the old paths of the product after the move are closed with a redirect.

The site opens both with and without www — is that bad?

These are two copies of the site to search if there is no transition between them. In the measured irrigation system store, the address from the www returns a code of 200 without going to the main domain, and the duplicate removes only the canonical link. It works, but it hangs on one signal instead of two: if someone touches the template, the copy returns.

Canonical on the main page of all pages - is this normal?

No. This is a common mistake with serious consequences: you are effectively telling search engines that all pages of the site are the main site. A canonical link should be self-referencing everywhere, with deliberate exceptions like sort pages. Most often, this comes from a modified template, where one line was inserted into the common block of the page head.

Is canonical enough to remove duplicates?

It's a clue, and search has the right to ignore it—especially when the rest of the signals contradict it. Google documents canonicalization in this way: do not specify the main version - it will choose it itself, and not necessarily the one you wanted. Therefore, canonical is always coordinated with the sitemap, internal links and redirects. One signal against three loses.

I have two sitemaps - old and new. Is this a problem?

Yes, and serious. In the measured wholesale cosmetics store, the canonical map contains 4,167 addresses, and next to it, there is an outdated one with 7,782 entries with 2,755 unique ones — both duplicated and incomplete: it has about 2,706 product addresses against 3,947 in the current one. The bot reads both. You cannot turn off the old one at random: first you need to understand which module writes it, otherwise the working addresses will disappear along with it.

Are campaign tags breaking canonicalization?

Maybe if they get into canonical. Then each ad pass generates its own canonical URL, and the bot sees as many versions of the page as you had ads. The rule is simple: a canonical link should not have any parameters other than those that change the content of the page. Sorting does not change the content, the pagination page number does.

After the work, the number of pages in the index fell. Did you break something?

Most likely not, and we warn you about it before the start. Cleaning duplicates does not add traffic - it stops spraying it, and outwardly it looks like a decrease. Only copies come from the index, and the weight is collected at one address. You need to look not at the number of pages, but at what addresses are left and whether they are the ones that sell. That is why we keep the indexation report 30 days after the work.

We have two languages. Where should canonical lead?

Each language version is on its own. The connection between languages ​​is maintained by hreflang tags, and this is a separate mechanism: canonical from a secondary language to a primary language excludes it from the index with your own hands. There is also a downside: in the measured wholesale cosmetics store, there is no address of the second language version in the site map, although bilingualism is implemented. Formally, everything is fine, in fact half of the search site does not exist.

Submit a site address - we'll see what it considers canonical.

In response, a table by types of pages: where is canonical, where does it lead, does it coincide with the site map, which domain options give the site without a transition. If everything is working, you will hear exactly that, and not a list of invented works.

View cases
  • Reply within 2 hours
  • No commitment
  • We work under a contract

There is no price list on the site on purpose: the same work differs several times over between two clients, and a “from” figure explains nothing in that case. First a free audit — we count your pages, duplicates and speed — then we name the sum and the deadline and fix both in the contract.