В браузере, бесплатно

Генератор canonical и hreflang тегов

Два тега, которые спасают от дублей и путаницы с языковыми версиями. Каноническая ссылка (canonical) говорит поисковику, какую страницу считать основной, когда есть дубли с параметрами или фильтрами. Теги hreflang указывают, какая версия предназначена для какого языка и региона, чтобы пользователю показывалась правильная. Укажите канонический URL и языковые версии — инструмент соберёт готовый код для <head> вместе с x-default. Всё считается в браузере.

Зачем нужны canonical и hreflang

Это два тега в <head>, которые помогают поисковику не запутаться. Каноническая ссылка решает проблему дублей: когда одна и та же страница доступна по нескольким адресам (с UTM-метками, параметрами сортировки, со слешем и без), canonical указывает, какую версию считать главной и показывать в выдаче. Без него поисковик может «размазать» трафик по копиям и понизить позиции. Теги hreflang решают другую задачу — мультиязычность: они сообщают, какая версия страницы предназначена для русского, английского или, скажем, немецкого пользователя, чтобы человек попадал на нужный язык, а версии не конкурировали между собой.

Как работает каноническая ссылка

Тег <link rel="canonical" href="..."> ставится в head каждой страницы и указывает на её основную версию. Если страница уникальна, canonical ведёт сам на себя — это нормально и даже рекомендуется. Если это дубль, canonical указывает на оригинал. Важно использовать абсолютные URL (с доменом и протоколом) и следить, чтобы канонический адрес отдавал код 200, а не редирект или 404. Частая ошибка интернет-магазинов — забыть про canonical на страницах фильтров и пагинации, из-за чего в индекс попадают сотни почти одинаковых страниц. Этот инструмент формирует тег за секунду: укажите нужный URL — получите готовую строку.

Правила hreflang, которые нельзя нарушать

hreflang работает только при соблюдении нескольких условий. Первое и главное: теги должны быть взаимными. Если страница A ссылается на страницу B как на английскую версию, то страница B обязана ссылаться обратно на A — иначе поисковик проигнорирует разметку. Второе: каждая страница должна перечислять все языковые версии, включая саму себя. Третье: коды языков указываются по стандарту — двухбуквенный код языка (ru, en) и при необходимости код региона (en-US, pt-BR). Четвёртое: желательно добавить x-default — версию для пользователей, чей язык не представлен. Инструмент проверяет коды на корректность и предупреждает о повторах и пропущенных URL.

Примеры значений hreflang
ЗначениеЧто означает
ruРусский язык, любой регион
en-USАнглийский для США
en-GBАнглийский для Великобритании
deНемецкий язык, любой регион
x-defaultВерсия по умолчанию для остальных
✓ Делайте
  • Абсолютные URL и код ответа 200 в canonical
  • Взаимные hreflang на всех языковых версиях
  • Добавляйте x-default для прочих языков
✕ Избегайте
  • canonical на редирект или несуществующую страницу
  • Односторонних hreflang без обратной ссылки
  • Неверных кодов языка и региона

Как это сделать

  1. Укажите канонический URL страницы — обычно это её собственный полный адрес.
  2. Перечислите языковые версии в формате «код | URL» — по одной в строке.
  3. Используйте коды вида ru, en или с регионом — en-US, ru-RU.
  4. При необходимости добавьте x-default для пользователей с другими языками.
  5. Скопируйте готовый блок тегов.
  6. Вставьте его в секцию <head> — и не забудьте про взаимность на всех версиях.

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

Да, рекомендуется ставить самоссылающийся canonical даже на уникальных страницах. Он указывает сам на себя и страхует от случайных дублей, которые часто возникают незаметно: адреса с UTM-метками из рекламы, параметры сортировки, версии со слешем и без, http и https. Самоканоникал заранее говорит поисковику, какой адрес считать эталонным, и трафик не размывается по техническим копиям. Это дешёвая страховка, которая ничего не стоит, но избавляет от частого класса проблем с индексацией.

У них разные задачи. Редирект 301 физически перенаправляет и пользователя, и робота на другой адрес — старая страница становится недоступной. Canonical же оставляет страницу доступной для пользователя, но подсказывает поисковику, какую версию индексировать. Редирект используют, когда страница переехала навсегда. Canonical — когда нужны обе версии (например, товар в разных категориях), но в выдаче должна быть одна. Путать их нельзя: редирект там, где нужен canonical, закроет пользователю доступ к нужной странице.

Поисковик их проигнорирует. Взаимность — обязательное условие: если русская страница указывает английскую как альтернативу, английская обязана указывать русскую в ответ. Это защита от чужих манипуляций — иначе любой сайт мог бы объявить себя языковой версией вашего. Поэтому при настройке проверьте, что на каждой версии перечислены все остальные, включая её саму. Односторонняя разметка не просто бесполезна — она тратит краулинговый бюджет впустую. Инструмент генерирует блок для одной страницы; такой же согласованный набор нужно поставить на каждую версию.

Не обязателен, но желателен. x-default указывает версию для пользователей, чей язык не представлен среди ваших переводов, или когда поисковик не уверен, какую версию выбрать. Например, у вас есть русская и английская версии, а на сайт заходит пользователь из Франции — x-default подскажет, что ему показать (обычно англоязычную или международную страницу). Без x-default поисковик примет решение сам, и не всегда удачно. Если языковых версий несколько, добавить x-default — хорошая практика, которая улучшает попадание пользователя на подходящую страницу.

Есть три способа: в HTML-коде страницы (теги link в head), в HTTP-заголовках (для не-HTML файлов вроде PDF) и в карте сайта sitemap.xml. Самый распространённый и удобный для большинства сайтов — теги в head, их и генерирует этот инструмент. Для очень больших сайтов с тысячами страниц иногда выбирают разметку через sitemap, чтобы не раздувать HTML. Способы можно не смешивать: выберите один и придерживайтесь его. Главное во всех случаях — соблюдать взаимность и полноту перечисления версий.

Косвенно и положительно. Напрямую canonical и hreflang не повышают позиции, но устраняют проблемы, которые их роняют. Canonical предотвращает каннибализацию, когда дубли конкурируют друг с другом и размывают сигналы. hreflang следит, чтобы в нужном регионе показывалась правильная языковая версия, а не случайная — это улучшает поведенческие факторы и снижает отказы. То есть теги не разгоняют сайт вверх, а убирают тормоза. Для мультиязычных и крупных сайтов их корректная настройка — обязательная гигиена, без которой остальное SEO работает хуже.