Коротко
- Canonical указывает основной адрес среди похожих страниц. Копии остаются доступными людям, но не попадают в поиск.
- Для Яндекса это рекомендация, а не приказ. Если содержимое страниц отличается, тег могут проигнорировать.
- Canonical работает только в пределах одного домена, один тег на страницу, без цепочек «A → B → C».
- Для адресов с UTM-метками Яндекс советует директиву Clean-param в robots.txt, она надёжнее canonical.
- Проверить, сработал ли тег, можно в Вебмастере: исключённые страницы со статусом неканонической.
Что такое canonical и зачем он нужен
Представьте карточку дивана в интернет-магазине. Она открывается по адресам:
site.ru/divany/model-1/site.ru/divany/model-1/?color=greysite.ru/divany/model-1/?utm_source=yandex&utm_campaign=autumnsite.ru/catalog/sale/model-1/
Для человека это одна страница. Для робота — четыре разных адреса с одинаковым текстом. Это дубли. Они мешают тремя способами: робот тратит время на обход копий, в выдаче может оказаться неудачный адрес, а сигналы — ссылки, поведение — делятся между копиями.
Canonical решает это одной строкой в коде страницы:
<link rel="canonical" href="https://site.ru/divany/model-1/">
Строка стоит на всех четырёх адресах и везде указывает на один основной. Страницы продолжают открываться, по ним можно переходить из рекламы и делиться ссылкой, но в поиске будет одна.
Как дубли появляются и как их искать на сайте, мы подробно разбирали в статье дубли страниц на сайте. Здесь — про один инструмент из набора: сам canonical.
Как Яндекс учитывает canonical
По справке Яндекса о canonical, робот воспринимает указание на канонический адрес как рекомендацию и может проигнорировать его. Что из этого следует на практике:
| Условие | Что будет |
|---|---|
| Страницы одинаковые по содержанию, canonical указывает на одну из них | Яндекс, скорее всего, учтёт тег и исключит копии |
| Страницы заметно отличаются, а canonical стоит | Тег могут проигнорировать и проиндексировать обе страницы |
| Canonical указывает на другой домен | Не работает: межсайтовый canonical Яндекс не поддерживает |
| На странице два тега canonical с разными адресами | Робот не знает, какой выбрать; тег не учитывается |
| Цепочка: A → canonical на B, B → canonical на C | Не работает, нужна прямая ссылка на итоговый адрес |
| Канонический адрес отдаёт 404 или редирект | Тег не будет учтён |
Справка также требует, чтобы канонический адрес был указан полностью, с протоколом и доменом, и находился в пределах того же домена. Задать его можно тегом <link> в разделе <head> или HTTP-заголовком — второй вариант подходит для PDF и других файлов, где нет HTML.
Наблюдение из практики. Чаще всего canonical «не работает» по одной причине: его поставили на страницы, которые не являются копиями. Например, на все страницы услуг поставили canonical на главную, «чтобы весь вес шёл на неё». Такой тег либо игнорируется, либо — хуже — страницы услуг выпадают из поиска. Canonical склеивает копии, а не разные страницы.
Где ставить canonical: фильтры, сортировки, UTM, пагинация
Сортировки и фильтры каталога
Сортировка «по цене», «по популярности», вид «плиткой» или «списком» — это та же страница категории в другом порядке. Здесь canonical на основной адрес категории — правильное решение.
С фильтрами сложнее. Фильтр «серые диваны» может быть копией, а может быть отдельной посадочной страницей, если люди ищут «серый диван» в Яндексе. Правило:
- Фильтр без спроса (сочетание цвет + материал + ширина + цена) — canonical на категорию.
- Фильтр со спросом («диваны-кровати», «угловые диваны серые») — отдельная страница со своим адресом, своим заголовком и текстом, canonical указывает сама на себя.
Проверить спрос можно в Вордстате. Подробнее о страницах каталога в поиске — в статье про SEO для интернет-магазина.
Адреса с метками рекламы
Метки UTM и служебные параметры рекламных систем добавляют к адресу хвост, а содержимое страницы не меняется. Canonical здесь сработает, но справка Яндекса для таких случаев советует директиву Clean-param в robots.txt. Она говорит роботу «параметр utm_source не меняет содержимое, игнорируй его» и работает для всех страниц сразу.
Лучший вариант — оба: canonical на каждой странице указывает адрес без параметров, а Clean-param описывает параметры меток. Как устроены метки и зачем они нужны, — в статье про UTM-метки для Директа, а о файле robots.txt — в статье robots.txt и sitemap.
Пагинация
Страницы /catalog/divany/?page=2, ?page=3 — частый вопрос. Ставить ли на них canonical на первую страницу?
Справка требует, чтобы канонический адрес и страница с тегом совпадали по содержимому. Вторая страница каталога показывает другие товары, чем первая. Поэтому canonical со второй страницы на первую противоречит этому требованию, и тег могут проигнорировать.
Подход, который мы используем: страницы пагинации указывают canonical сами на себя, а на первой странице категории стоит уникальный текст и заголовок, чтобы именно она ранжировалась по запросу. Если у каталога есть страница «показать все», canonical со страниц пагинации можно вести на неё: по содержанию она включает их все.
Версии для печати, AMP, копии в разных разделах
- Версия для печати — canonical на основную страницу.
- Товар, который лежит в двух категориях и открывается по двум адресам, — canonical на один основной.
- PDF-версия статьи — canonical через HTTP-заголовок на HTML-страницу.
Canonical, 301 или noindex: что выбрать
| Ситуация | Что выбрать | Почему |
|---|---|---|
| Страница переехала навсегда | 301 редирект | Старый адрес людям не нужен |
| http и https, www и без www | 301 редирект | Сайт должен открываться по одному адресу |
| Сортировки и фильтры без спроса | canonical | Людям нужны все варианты, поиску — один |
| Метки рекламы и служебные параметры | Clean-param + canonical | Clean-param работает для всего сайта |
| Служебные страницы: корзина, личный кабинет, поиск по сайту | noindex или запрет в robots.txt | Это не копии, им просто нечего делать в поиске |
| Одинаковые страницы услуги для разных городов без отличий | Переписать или canonical на основную | Если страницы нужны в поиске — сделайте их разными |
Главное различие между 301 и canonical: редирект уводит и человека, и робота, а canonical оставляет человека на странице и подсказывает только роботу. О том, как правильно делать редиректы, — в статье 301 редирект: как сделать.
Если в Вебмастере у вас сотни исключённых страниц и непонятно, это норма или проблема, проще разобрать их вместе.
Как настроить canonical в Тильде и WordPress
Тильда
Тильда проставляет canonical на все страницы автоматически. Когда вы подключаете свой домен и публикуете страницы, основным становится адрес на вашем домене, а варианты со слешем на конце или с www не индексируются — это описано в ответах Тильды о каноническом адресе.
Если нужно указать другой канонический адрес вручную: настройки страницы → SEO → поле канонической ссылки. Там пишете полный адрес, сохраняете и переопубликовываете страницу.
Когда это нужно на Тильде: вы сделали копию лендинга для теста рекламы с другим адресом и не хотите, чтобы копия конкурировала с основной страницей в поиске. Ещё один случай — страницы, которые отличаются только оффером для разных кампаний.
После перехода на https в Тильде стоит включить настройку, при которой схема https используется в robots.txt, sitemap.xml и канонических адресах. Иначе canonical может указывать на http-версию.
WordPress
Сам WordPress добавляет canonical к записям и страницам. SEO-плагины расширяют это: позволяют задать адрес вручную в настройках каждой страницы и управляют canonical для архивов, рубрик и пагинации. Если у вас стоят два SEO-плагина или тема тоже выводит canonical, на странице может оказаться два тега. Проверьте код.
Свой движок
Canonical выводится шаблоном в разделе <head>. Проверьте, что шаблон:
- Выводит полный адрес с https и доменом.
- Отбрасывает параметры сортировки и меток.
- Не дублирует тег, если его добавляет ещё какой-то модуль.
- Для страниц-фильтров со спросом выводит их собственный адрес.
Как проверить, что canonical работает
- Посмотрите код страницы. В браузере: правый клик → «Просмотр кода страницы», поиск по слову
canonical. Должен быть один тег с полным адресом. - Откройте адрес из canonical. Он должен отвечать кодом 200, без редиректа. Проверить код удобно через инструмент «Проверка ответа сервера» в Вебмастере.
- Проверьте дубли. Откройте адрес с параметром, например
?sort=price. Canonical на нём должен указывать на адрес без параметра. - Загляните в Вебмастер. По справке, неканонические страницы видны в разделе «Индексирование» → «Страницы в поиске», в блоке исключённых страниц. Статус неканонической — это хорошо: значит, тег учтён.
- Ищите обратное. Если в исключённых как неканонические оказались страницы услуг или товаров, которые должны быть в поиске, — где-то ошибка в шаблоне.
Не пугайтесь, если неканонических страниц много. Для каталога с фильтрами это нормально: тысячи сочетаний фильтров склеиваются в несколько сотен категорий.
Условный пример: каталог, который ранжировался по сортировке
Пример условный, не кейс студии. Магазин мебели, 300 товаров, 15 категорий. В каталоге четыре вида сортировки и фильтры по цвету, материалу и цене. Canonical не настроен.
| Показатель | Без canonical | После настройки |
|---|---|---|
| Адресов, которые нашёл робот | несколько тысяч | те же несколько тысяч |
| Адресов в поиске | около 1 500, много сортировок и фильтров | около 350: товары, категории и фильтры со спросом |
| Адрес в выдаче по запросу «угловые диваны» | /divany/?sort=price&page=2 |
/divany/uglovye/ |
| Что видит человек из поиска | Вторую страницу каталога, отсортированную по цене | Страницу угловых диванов с заголовком и описанием |
Что сделали: canonical с сортировок и комбинаций фильтров на основную категорию, отдельные страницы для пяти фильтров со спросом, Clean-param для меток. Цифры условные, но картина типичная: робот перестаёт тратить обход на копии, а в выдаче оказываются страницы, на которые не стыдно привести человека.
Частые ошибки с canonical
- Canonical на главную со всех страниц. Страницы не копии главной, тег игнорируется или они выпадают из поиска.
- Относительный адрес.
href="/divany/"вместо полного адреса с протоколом и доменом. - Canonical на http при сайте на https. Робот получает указание на адрес с редиректом.
- Canonical на страницу с noindex. Противоречивые сигналы: «главная копия — вот эта, но её не индексируй».
- Два тега на странице. Тема и плагин выводят каждый свой.
- Canonical на страницу пагинации с другими товарами. Содержимое не совпадает.
- Canonical вместо переезда. Если страница переехала навсегда, нужен 301, а не canonical.
Пошаговая проверка canonical на сайте
- Откройте 5–10 типовых страниц: главная, услуга, категория, товар, статья.
- На каждой найдите в коде canonical. Он один, адрес полный, с https.
- Откройте эти же страницы с параметрами:
?utm_source=test,?sort=price. Canonical указывает на адрес без параметров. - Проверьте, что канонические адреса отвечают кодом 200.
- В Вебмастере откройте исключённые страницы и отфильтруйте неканонические. Среди них нет важных страниц.
- Проверьте robots.txt: есть ли Clean-param для меток рекламы.
- Если менялся протокол или домен, проверьте, что canonical обновился.
Если по результатам проверки картина непонятная, оставьте контакты. Посмотрим индексирование в Вебмастере и скажем, что поправить.
Частые вопросы
Что такое canonical простыми словами?
Это строка в коде страницы, которая говорит поисковику: «если найдёшь копии этой страницы, считай главной вот этот адрес». Копии остаются доступными людям, но в поиск попадает одна страница.
Яндекс всегда учитывает canonical?
Нет. По справке Яндекса это рекомендация, и робот может её проигнорировать. Чаще всего так происходит, когда страницы с тегом и канонический адрес отличаются по содержанию, когда тегов несколько или канонический адрес отдаёт редирект.
Что лучше для UTM-меток: canonical или Clean-param?
Для Яндекса надёжнее Clean-param в robots.txt: он описывает параметры для всего сайта сразу. Canonical на страницах при этом тоже стоит оставить — он работает как дополнительный сигнал.
Нужен ли canonical, если на сайте нет дублей?
Ставить canonical, указывающий на саму страницу, — нормальная практика. Он защищает от дублей, которые появятся позже: метки рекламы, параметры от соцсетей, адреса со слешем и без. На Тильде и в WordPress это делается автоматически.
Можно ли через canonical склеить два сайта?
Нет. Яндекс не поддерживает canonical между разными доменами. Для склейки сайтов используют 301 редирект и инструмент переезда в Вебмастере.





