Краткое саммари
Rel="canonical" — подсказка поисковым системам, какая версия страницы должна считаться основной. Canonical важен для SEO, он помогает склеивать дубли, экономить краулинговый бюджет и не распылять сигналы ранжирования между URL с похожим содержимым. Но это не директива, Яндекс и Google могут выбрать другой канонический URL, если видят противоречия в редиректах, внутренних ссылках, Sitemap, hreflang или статусах страниц.
Что важно проверить в первую очередь: канонический URL должен открываться с кодом 200, не быть закрыт от индексации, совпадать с внутренними ссылками и попадать в Sitemap только в основной версии. Для страниц с фильтрами, UTM-метками, сортировкой и пагинацией canonical настраивают по разным сценариям.
Кому стоит прочитать эту статью:
- SEO-специалистам, которые настраивают canonical для интернет-магазинов, каталогов, блогов и сайтов на CMS.
- Маркетологам и владельцам сайтов, у которых в поиске появляются дубли страниц, URL с параметрами, http/https или www/без www.
- Разработчикам, которым нужно понять, где указывать каноническую ссылку: в HTML, HTTP-заголовке, Sitemap или через редирект.
Содержание
Что такое rel canonical и для чего он нужен
Одинаковый контент на разных страницах — плохо, за это следуют санкции. Но есть случаи, когда дубли оправданы. К примеру, одна и та же страница может входить в несколько категорий, один и тот же сайт может быть доступен с www и без, а еще в каталогах товаров есть сортировка и фильтрация.
Страницы могут быть не полностью одинаковыми. К примеру, на одной включен фильтр товаров по сезона, а на другой — сортировка по цене. Тем не менее, от включенных фильтров уникальными они не станут.

В таких случаях нужно указывать, какой вариант страницы роботу считать основным, то есть каноническим, а какие дублями. Для этого придумали канонический тег — rel = "canonical", он решает проблему дублирования контента.
Каноническая страница — это основной URL. Атрибут rel = "canonical" добавляют на страницы-дубли и в нем указывают адрес канонической страницы, чтобы дать боту знать, какую страницу они повторяют.
Зачем указывать основную версию страницы
Причины указывать canonical:
избежать санкций поисковиков за дублирование контента;
корректно передавать ссылочный вес на нужную версию сайта и страницы;
из контента, доступного по нескольким URL, выбрать страницу, которая будет получать все сигналы и показываться в выдаче;
не тратить краулинговый бюджет на лишние URL с параметрами, сортировкой и техническими дублями;
помочь поисковику быстрее понять структуру сайта после переезда, смены ЧПУ или настройки HTTPS.
Краткая информация о канонических URL из первых уст есть в справке Google и Яндекса.
Например, есть страница, доступная по трем адресам:
site.ru/page?id=123
site.ru/blog/category/tema
site.ru/blog/tema
Допустим, мы хотим, чтобы страница site.ru/blog/category/tema ранжировалась в выдаче, получала весь положенный ей ссылочный вес и другие сигналы — считалась канонической.
Тогда эту страницу мы не трогаем, в коде страниц дублей site.ru/page?id=123 и site.ru/blog/tema указываем ее как каноническую. В коды дублей мы добавляем такую строчку:
<link rel="canonical" href="http://site.ru/blog/category/tema"/>
Неканонические страницы не попадут в индекс?
Страницы, отмеченные как неканонические, все равно могут попасть в выдачу. Яндекс отмечает:
«Они будут показаны в том случае, если они более релевантны запросу и их контент существенно отличался от канонической версии во время сканирования роботом».
В Вебмастере у всех страниц появилась пометка «каноническая», «неканоническая» и «каноническая страница не указана». Вы можно посмотреть неканонические страницы, попавшие в выдачу, для этого откройте «Страницы в поиске» и ищите строчки с пометкой «Неканоническая».

Google тоже заявляет, что система признает указанный канонический URL, но не всегда, поскольку тег canonical — рекомендация, а не приказ к действию. Если неканоническая покажется ему релевантнее, она и появится в выдаче.
Но если сеошник указывает этот атрибут, уменьшается риск, что Google сам определит основной не ту версию страницы.
Канонические страницы все равно появляются в поиске чаще и имеют приоритет при показе в выдаче, а ошибки с настройкой canonical могут привести к проблемам в индексировании страниц. Разберем все варианты, когда нужно использовать канонический тег.
FAQ по разделу
Что такое canonical простыми словами?
Это ссылка в коде страницы, которая подсказывает поисковику, какой URL считать основным среди дублей.
Canonical влияет на позиции?
Только косвенно, он помогает склеивать сигналы дублей и снижает риск, что в выдачу попадет не та страница.
Поисковик обязан учитывать canonical?
Нет, для Яндекса и Google это только рекомендация.
Когда нужно прописывать канонический тег
Используйте canonical, когда одинаковый контент доступен по разным URL. Когда дублирующиеся URL создаются системой, фактически сам контент не дублируется — разные URL обслуживают одно содержимое. Тем не менее, это дубли, канонический тег стоит указать. Разберем разные случаи.
Дублирование страниц
Дублирующиеся страницы с похожим содержанием, которые генерируются CMS. Они бывают на всех сайтах интернет-магазинов, где можно настраивать параметры выбора товара. Ссылки для навигации по каталогу, сортировка товаров, фильтрация, ссылки с UTM-метками для отслеживания, другие страницы с GET-параметрами в URL.
К примеру, если в каталоге есть несколько позиций одного дивана, отличающиеся только цветом обивки, можно выбрать самый популярный вариант и указать его каноническим. Все варианты диванов будут доступны пользователям, но ссылочный вес и другие сигналы будут идти на страницу с основным вариантом.
Другой вариант — страница товара подходит сразу под несколько категорий, так что образовываются множественные URL одного предмета. Решение такое же: выбрать популярную в качестве основной и указать ее на остальных дублирующих страницах в rel = "canonical".
Страницы пагинации
Переключение страниц в каталоге рождает дубли. Иногда для всех страниц пагинации указывают первую страницу в качестве канонической — это советуют не делать, потому что тогда проиндексируется только первая страница.

Вариант 1
Если на странице есть «Показать все», страница со всеми вариантами и будет канонической. На каждой из страниц пагинации укажите ее в атрибуте rel = "canonical".
Например, для страницы https:="" <="" a>category1="" page-2"="">https://site.ru/category1/page-2 нужно прописать канонический URL:
<link rel="canonical" href="http://site.ru/category1/show-all">
Вариант 2
Если «Показать все» нет, для каждой страницы пагинации советуют указывать эти же страницы как канонические.
Например, на странице https://site.ru/category1/page2 нужно указать каноническую ссылку:
<link rel="canonical" href="http://site.ru/category1/page2">
Вариант 3
Если у всех страниц пагинации одинаковые Title и Description, лучше не склеивать их canonical на первую страницу, а привести метаданные в порядок: добавить номер страницы, уточнить заголовок и оставить самоканонический URL. Закрывать пагинацию от индексации стоит только после анализа, потому что иногда такие страницы помогают роботу находить товары и старые материалы.
Если страницы пагинации точно не должны попадать в поиск, используйте meta robots noindex, follow. Не закрывайте такие URL в robots.txt до того, как робот увидит noindex. Если обход запрещен, поисковик может не прочитать метатег на странице.
<meta name="robots" content="noindex, follow"/>
Meta robots noindex понимают и Google, и Яндекс. А вот HTML-тег
HTTPS, HTTP, www
Один сайт может быть доступен по трем вариантам: http://site.ru и http://www.site.ru и https://www.site.ru. Но поисковые системы будут рассматривать все три как наборы отдельных страниц, если не указать canonical. Из-за чего могут быть проблемы со сканированием и индексацией сайта.
Мобильный URL
Google завершил переход на Mobile-First Indexing, и при индексировании он ориентируется прежде всего на мобильную версию сайта. Поэтому canonical, alternate, hreflang, контент и метаданные на мобильной версии должны быть согласованы с десктопной.
Если у вас есть отдельная мобильная версия m.site.ru, на мобильной странице укажите rel="canonical" на соответствующую десктопную, а на десктопной — rel="alternate" на мобильную. Важно, чтобы пары URL совпадали один к одному. Карточка товара должна ссылаться на мобильную карточку того же товара, а не на главную или категорию.
URL страны
Бывает, что для конкретной страны у сайта есть несколько версий с разными URL. При этом язык один и контент одинаковый с несущественными отличиями. Тогда нужно выбрать каноническую и сделать отсылки к ней на всех дублях.
Но если речь идет о разных языковых версиях, нужно использовать hreflang, чтобы поисковики выдавали отдельные результаты. Атрибут hreflang нужен для указания дополнительных URL с аналогичным или похожим содержимым на других языках или для отдельных регионов.
Для международных и мобильных версий hreflang настраивают аккуратно, десктопные hreflang-ссылки ведут на десктопные URL, мобильные — на мобильные. Canonical при этом не должен конфликтовать с hreflang. Если страница участвует в hreflang-наборе, она обычно должна быть канонической сама на себя или на эквивалентную версию того же содержания.
Верхний и нижний регистр
Поисковик может посчитать разными два адреса, написанные в разном регистре. При назначении URL система должна применять только нижний регистр, чтобы одни и те же ссылки были действительно одинаковыми.
Материал по теме:
Htaccess для перенаправления верхнего регистра на нижний
FAQ по разделу
Нужно ли ставить canonical на все страницы?
Нет, тег нужен только там, где есть одинаковый или очень похожий контент по разным URL.
Что делать с URL с UTM-метками?
Каноническим указывают чистый URL без меток, а меточные страницы оставляют доступными для аналитики.
Можно ли канонизировать страницы фильтров?
Да, если фильтр не дает самостоятельной ценности для поиска. Полезные посадочные страницы лучше не склеивать без анализа спроса.
Rel=canonical или 301 редирект
Canonical и 301 редирект сообщают поисковым системам разную информацию:
Rel canonical: «Среди нескольких похожих страниц эта — главная». Существует несколько URL с одинаковым или похожим контентом, но индексировать нужно только один. При этом все версии страницы остаются доступными. Использование canonical оправдано, когда необходимо сохранить доступность всех URL.
301 редирект: «Старая страница переехала на новый адрес». Страница существует, но теперь находится по новому URL, который и нужно индексировать. Старый URL становится недоступным и удаляется из индекса. 301 редирект используется, когда старая страница удалена, а вместо нее создана новая.
Общее у canonical и 301 редиректа то, что оба передают сигналы ранжирования (ссылочный вес и, возможно, поведенческие факторы, хотя это официально не подтверждено) от одной страницы к другой.
Как настроить canonical правильно: 6 способов указать основной URL
Для использования канонического тега нужно выбрать среди дублей основной URL, вписать его в атрибут:
<link rel="canonical" href="http://site.ru/page/">
и добавить ко всем неосновным страницам.
Для добавления есть несколько способов.
С помощью плагина CMS
Большинство CMS имеют встроенную функцию или плагины, которые позволяют автоматизировать настройку канонического URL.
К примеру:
настроить canonical на WordPress можно с помощью плагинов Yoast SEO, Rank Math, All in One SEO или встроенных функций темы;
в OpenCart в настройках товара можно задать SEO URL и проверить, как модуль формирует canonical для дублей;
в Joomla версии от 3 и выше можно включить функцию SEF. Тогда в код технических страниц вида /index.php?option добавится атрибут rel = "canonical" с указанием основной страницы с ЧПУ.
Для примера подробнее рассмотрим WordPress как самую популярную CMS среди наших подписчиков.
Настройка canonical WordPress
Все просто: установите плагин Yoast SEO, чтобы канонические теги добавлялись автоматически.
Настроить теги для конкретной страницы можно в разделе «Дополнительно» («Advanced»), там нужно указать основной URL:

Yoast SEO делает так, что если на странице появляется noindex или nofollow, тег canonical пропадает, чтобы не было проблем с представлением сайта в выдаче.
Если вы не используете CMS и не можете реализовать канонический тег плагинами, можно сделать все иначе.
Прописать между тегами любой HTML-страницы
Основной способ — прописать rel = "canonical" в секцию < head > любой страницы-копии.
Например, если для страницы https://site.ru/*utm_content= канонической будет https://site.ru/, на страницу https://site.ru/*utm_content= нужно добавить код:
<link rel="canonical" href="http://site.ru/">
В заголовке HTTP
У PDF и других не HTML документов нет секции < head >, так что использовать предыдущий способ не получится. Если у вас есть доступ к настройкам сервера, можно указать канонический тег в заголовке HTTP с использованием .htaccess или PHP.
При запросе дублирующего файла сервер должен отдавать в заголовке ссылку на оригинальный файл:
Link: <http://example.com/file.pdf>; rel="canonical"
К примеру, вы составили руководство, выложили его в блог и отдельно оформили в PDF-файл для скачивания, который разместили в подкаталоге http://site.ru/blog/*. HTTP-заголовок для этого руководства в PDF может выглядеть так:
HTTP/1.1 200 OK
Content-Type: application/pdf
Link: <http://site.ru/blog/canonical-tags/>; rel="canonical"
С другими страницами так тоже можно.
В файле Sitemap
Поисковики по умолчанию думают обо всех ссылках в XML-файле как о канонических. У Google есть требование включать в Карту сайта только канонические адреса страниц. Но Карта не свод правил для поисковых ботов, а список рекомендаций, который поисковики могут проигнорировать.
Материал по теме:
Как составить Sitemap
Через 301 редирект
Отвести трафик и ссылочный вес от дублей к канонической страницы можно с помощью 301 редиректа. Этот способ можно использовать, если сайт, к примеру, доступен по нескольким адресам:
https://site.ru/
http://site.ru/
http://www.site.ru/
https://www.site.ru/
Можно выбрать в качестве основного https://site.ru/, а со всех остальных настроить перенаправление.
Материал по теме:
Как настроить 301 редирект самостоятельно
Дополнительный сигнал — ссылки
В документации Google перечислены сигналы, которые поисковик использует для выбора канонического адреса: редиректы, rel="canonical", URL в Sitemap, внутренние ссылки, HTTPS, качество и близость контента.
К примеру, между HTTPS и HTTP Google обычно предпочтет HTTPS, если остальные сигналы не противоречат этому выбору. Внутренние ссылки тоже важны: если в canonical указан один URL, а меню, хлебные крошки и Sitemap ведут на другой, поисковик может выбрать не тот адрес, который вы хотели.
FAQ по разделу
Где прописывать canonical?
Для HTML-страниц — в секции , для PDF и других файлов — в HTTP-заголовке Link.
Нужно ли указывать абсолютный URL?
Да, лучше использовать полный адрес с https и нужным доменом, без относительных путей.
Можно ли добавить canonical через CMS?
Да, в WordPress, OpenCart, Joomla и других CMS это обычно делают встроенными настройками или SEO-плагинами.
Неправильно указан canonical: топ-8 популярных ошибок настройки
Чтобы правильно использовать канонические ссылки, нужно следовать нескольким простым правилам:
Каноническая страница должна быть доступна и возвращать код ответа сервера 200.
Ссылка должна вести на страницу в пределах того же домена.
На странице допускается только одна каноническая ссылка.
Цепочки канонических ссылок недопустимы. Например, неправильно, если страница 1 указывает на неканоническую страницу 2, а страница 2 ссылается на страницу 3 через rel="canonical".
2 Настройка разных канонических URL одной странице
Похожий пункт, но речь идет не о нескольких канонических адресах для одной страницы, а в о разных, указанных разными способами.
Если вы используете несколько способов указать канонический тег, например, в HTTP-заголовке и в секции < head >, ссылка на основную страницу должна быть одна и та же.
3. Настройка цепочки канонических URL
Бот не будет учитывать канонический адрес, если для страницы, которую вы указали основной, настроена какая-то своя основная страница. Например, для адреса site.ru/1 канонической ссылкой указана site.ru/2, а для нее указана site.ru/3.
4. Размещение rel = "canonical" не в секции head
Тег rel = "canonical" должен находиться только в секции < head >. Если указать его в < body > документа, боты его проигнорируют. Или даже могут проигнорировать всю страницу.
Лучше перепроверить: даже если вы поставили canonical ближе к началу документа, секция < head > может закрыться раньше, например, из-за вставок JavaScript, контейнеров < iframe > или незакрытых парных тегов. Тогда canonical окажется за пределами < head > в секции < body >.
5. Указание первой страницы пагинации как канонической
Если для всех страниц пагинации канонической указать первую, бот не проиндексирует остальные. Выше мы писали, как лучше сделать, есть три варианта:
сделать канонической страницу «Показать все», если она есть;
для каждой страницы поставить ее же URL в качестве канонической, если нет общей страницы.
Ошибкой будет указать главную страницу в качестве канонической для всего сайта. Боты могут проигнорировать все страницы, кроме главной.
8. Закрытие канонической страницы от индексирования
Если канонический URL закрыт от индексирования или по другой причине недоступен для поискового бота, он не сможет участвовать в формировании выдачи. В этом случае бот возьмет доступный неканонический URL.
FAQ по разделу
Какая ошибка самая серьезная?
Указать canonical на закрытую, удаленную или редиректящую страницу. Так робот может проигнорировать сигнал.
Можно ли ставить несколько canonical?
Нет, для одной страницы должен быть только один канонический URL.
Почему Google выбрал не мой canonical?
Так происходит из-за разных ссылок в Sitemap и HTML, цепочек canonical, редиректов, noindex или слабого сходства контента.
Как проверить canonical
Проверить, для каких страниц вы настроили canonical и какие канонические страницы указали, можно с помощью сервиса Screaming Frog SEO Spider, российского SiteAnalyzer, а также инструментов PR-CY для аудита страниц.

Узнать, какую страницу Google считает основной для конкретного URL, можно через инструмент проверки URL в Google Search Console.
Проверить, как поступил Яндекс, можно в Яндекс Вебмастере. Откройте отчеты по индексированию и страницам в поиске. Если страницу исключили из результатов как дубль или неканоническую, она появится среди исключенных URL с соответствующей причиной.

Как вернуть неканоническую страницу в поиск
Иногда страница ошибочно помечается как неканоническая и пропадает из поиска. Чаще всего причина — rel="canonical" на другой URL, конфликт с Sitemap, внутренними ссылками или редиректом. Чтобы вернуть страницу в результаты, удалите ошибочный canonical или укажите саму страницу как каноническую, проверьте, что она открывается с кодом 200 и не закрыта от индексации. После повторного обхода поисковик переоценит URL.
Список неканонических и исключенных страниц можно найти в Яндекс Вебмастере в отчетах по индексированию. После исправления отправьте важные URL на переобход и проверьте, не осталось ли внутренних ссылок на неправильную версию страницы.
Рассказывайте, о каких необходимых вариантах использования canonical мы забыли, и какие еще ошибки настройки вы встречали в своей практике!