Техническое SEO

Как правильно настроить canonical

Как работает canonical, где он нужен и какие ошибки в нём приводят к выпадению страниц из индекса.

11 мин чтения

Зачем нужен canonical

Тег rel="canonical" в <head> страницы указывает поисковику: «основная версия этого контента — вот по этому URL». Это рекомендация, а не приказ, но при корректной настройке Google и Яндекс обычно следуют ей.

Canonical решает проблему дублей без удаления URL. Фильтр «красные диваны» остаётся доступным пользователю, но в индексе участвует либо категория «Диваны», либо отдельная посадочная — в зависимости от вашей стратегии.

В отличие от 301, canonical не перенаправляет пользователя. Человек видит URL с параметрами, а поисковик понимает, какую версию ранжировать. Это удобно для UTM-меток, сортировок и сессионных параметров.

Canonical также помогает при синдикации контента: если статья опубликована на нескольких площадках, canonical на оригинал указывает источник. Без него копии могут конкурировать с вашим сайтом.

Проверять canonical нужно на каждой шаблонной странице: категории, товары, статьи, пагинация. Одна ошибка в шаблоне CMS размножается на тысячи URL.

Где он особенно важен

Интернет-магазины — главный потребитель canonical. Каталог с фильтрами генерирует комбinatorial explosion URL: цвет × размер × материал × сортировка. Без canonical каждая комбинация — отдельная страница в индексе.

UTM и рекламные параметры (?utm_source=...) не должны создавать дубли. Canonical на «чистый» URL без параметров — стандартная практика. То же для параметров сортировки ?sort=price, если нет отдельной посадочной под «дешёвые».

Пагинация: для классической схемы canonical на странице /page/2/ указывает на себя или на view-all — зависит от стратегии. Главное — единообразие и отсутствие одинакового canonical на всех страницах пагинации, указывающего на page/1.

Версии для печати (/print/), мобильные зеркала, AMP-страницы — canonical на основную версию. HTTPS и HTTP: canonical всегда на https-версию.

Мультиязычные сайты: canonical не заменяет hreflang. На каждой языковой версии canonical указывает на себя, а hreflang связывает альтернативы.

  • Каталоги с фильтрами и сортировками
  • Страницы с UTM и другими параметрами
  • Пагинация и версии для печати

Правила корректного canonical

Canonical должен быть абсолютным URL с протоколом https://, а не относительным путём. Относительные canonical (/category/) интерпретируются непредсказуемо.

Целевой URL должен отдавать код 200, быть индексируемым (без noindex) и содержать тот же или очень похожий контент. Canonical на пустую категорию с другой страницы — ошибка.

На странице — один canonical. Несколько противоречивых тегов сбивают поисковик с толку. То же в HTTP-заголовке Link: rel="canonical" — не дублируйте противоречащие указания.

Canonical на себя (self-referencing) — хорошая практика даже когда дублей нет. Это защита от параметров в URL, которые могут появиться извне.

Не используйте canonical для несвязанного контента в надежде «передать вес». Google может проигнорировать или понизить доверие к разметке на всём сайте.

Частые ошибки

Canonical всех страниц на главную — катастрофа для SEO. Категории, товары и статьи исключаются из индекса, сайт теряет трафик по всем запросам кроме брендовых. Так бывает при ошибке в шаблоне или «совете из форума».

Canonical на 404 или редирект — поисковик проигнорирует указание. Проверяйте целевые URL краулером.

Конфликт canonical и noindex на одной странице — противоречивые сигналы. Определитесь: страница нужна в индексе (canonical на себя или главную версию) или нет (noindex).

Canonical между разными доменами возможен (cross-domain), но используйте его осознанно — для синдикации, а не для «слива» трафика с поддоменов.

В Search Console смотрите отчёт «Страница с перенаправлением» и «Дубли без выбранной canonical» — там видны проблемные URL. SEOSCANUM при аудите проверяет canonical на всех обнаруженных страницах и выделяет конфликты с noindex и редиректами.

Canonical vs другие методы

301 — когда старый URL больше не нужен. Canonical — когда URL нужен пользователям, но не нужен в индексе как отдельная единица.

noindex — когда страницу нужно убрать из индекса полностью (результаты поиска, корзина). Canonical — когда контент дублирует другую страницу, но URL должен работать.

robots.txt Disallow — не замена canonical. Заблокированная страница может остаться в индексе, а робот не увидит canonical внутри неё.

Для Яндекса дополнительно работает Clean-param в robots.txt — альтернатива canonical для параметров, которые не меняют контент. Можно комбинировать с canonical.

Частые вопросы

Canonical гарантирует склейку?
Нет, это рекомендация. При явных различиях контента или противоречивых сигналах поисковик может выбрать другую версию. Для жёсткой склейки технических дублей надёжнее 301.
Нужен ли canonical на каждой странице?
Да, self-referencing canonical — хорошая практика. Он защищает от дублей с параметрами и помогает поисковику определить предпочтительный URL.
Canonical в HTTP-заголовке или в HTML?
Оба варианта валидны. Главное — не дублировать противоречащие указания. Для PDF и других не-HTML файлов canonical задаётся только в заголовке.

Проверьте свой сайт за пару минут

Запустите бесплатное демо-аудита — увидите главные проблемы без оплаты и без подписки.