Дубли на сайте появляются сами: фильтр, сортировка, utm-метка, слеш на конце — и вот у одной страницы уже восемь адресов. Ниже разбираю, какие дубли реально мешают, а какие можно не трогать, как их найти в Вебмастере, Search Console и краулере, и чем склеивать в каждом случае. С конкретными ограничениями инструментов и сроками, через которые ждать эффект.
- Часть дублей на сайте нормальна: Google прямо пишет, что это не нарушение спам-политик. Санкции есть только за копирование чужого контента (раздел Scraping).
- Краулинговый бюджет — проблема сайтов от 1 млн страниц с недельным обновлением или от 10 000 с ежедневным. Магазину на 800 карточек дубли ломают релевантность, до проблем с обходом там далеко.
- Сила сигналов у Google: редирект и rel=canonical — strong, URL в sitemap.xml — weak. robots.txt и удаление URL как способ канонизации запрещены.
- Инструмент «Параметры URL» в Search Console отключён 28 апреля 2022 года. У Яндекса с 12 декабря 2025 работает «Настройка GET-параметров» плюс Clean-param в robots.txt.
- Эффект не мгновенный: Google держит страницы в кластере дублей до двух недель после правки, Яндекс исключает страницу в течение трёх недель после визита робота.
- Оператор site: для подсчёта дублей не годится — в разобранном Мюллером случае из 180 проиндексированных URL он показал 28. Оператор cache: отключён с сентября 2024.
Какие бывают дубли и откуда они берутся
Дублем страницу назначает поисковик. Вы можете считать две карточки разными, робот сведёт их в одну группу, выберет главную и покажет в выдаче только её. Остальные уедут в исключённые с пометкой «Дубль».
Само по себе это не диагноз. Google в документации по канонизации формулирует спокойно.
«Some duplicate content on a site is normal and it's not a violation of Google's spam policies» — часть дублирующегося контента на сайте нормальна и не нарушает спам-политики Google. Документ обновлён 10 июля 2026 года.
Беда начинается, когда дубли размножаются механически. Каждый новый фильтр в каталоге рождает семейство URL, каждая рассылка добавляет метки, каждая сортировка удваивает набор. На аудитах картина повторяется: 900 страниц в поиске и 38 тысяч в исключённых, причём владелец сайта уверен, что у него «около тысячи страниц».
| Вид | Как выглядит | Откуда берётся | Чем закрывают |
|---|---|---|---|
| Зеркала | http://www.site.ru/ и https://site.ru/ | не настроены редиректы после переезда на HTTPS | 301 на всех зеркалах |
| Слеш и его отсутствие | /catalog/shoes и /catalog/shoes/ | сервер отдаёт 200 на обоих вариантах | 301 на выбранный формат |
| Индексный файл | / и /index.php | поведение CMS по умолчанию | 301 |
| Метки трекинга | /catalog/?utm_source=vk&utm_campaign=may | реклама, рассылки, партнёрские ссылки | canonical на чистый URL, Clean-param для Яндекса |
| Фильтры и сортировки | /catalog/?color=red&sort=price | фасетная навигация | robots.txt или фильтры на фрагментах URL |
| Пагинация | /blog/page/2/, /blog/page/3/ | любая лента | canonical каждой страницы на саму себя |
| Товар в нескольких категориях | /obuv/krossovki/model-x/ и /sale/model-x/ | структура каталога | canonical на основной адрес |
| Версия для печати | /article/print/ | шаблон CMS | canonical на основную версию |
| Внутренний поиск | /search/?q=кроссовки | форма поиска попала в индекс | Disallow в robots.txt |
| Тестовые копии | dev.site.ru, staging.site.ru | разработчики забыли закрыть | HTTP-авторизация на уровне сервера |
| Частичные текстовые дубли | карточки размеров, региональные подстраницы | шаблонный текст | объединение или переписывание |
Первые десять строк закрываются один раз настройками и больше не возвращаются. Последняя строка — работа руками, и именно она обычно тормозит, потому что требует решений по структуре. Технические дубли имеет смысл разбирать в связке с общим разбором сайта: как это устроено, я описывал в материале про технический аудит.
Чем дубли вредят на самом деле
Про краулинговый бюджет пугают чаще всего, и почти всегда мимо. У Google пороги прописаны цифрами: думать о бюджете имеет смысл от 1 млн уникальных страниц с обновлением примерно раз в неделю либо от 10 000 уникальных страниц с ежедневным обновлением. Сайту на 400 страниц дубли обход не ломают.
Второй механизм работает на сайтах любого размера. Внешние ссылки, внутренние переходы и поведенческие сигналы делятся между копиями. Одна страница набирает половину сигналов, вторая — вторую половину, в топ не идёт ни одна.
Третий — каннибализация. Две похожие страницы конкурируют по одному запросу, поисковик перевыбирает между ними, позиция скачет: сегодня 12, через неделю 28, потом снова 14. Владелец сайта в этот момент обычно ищет причину в ссылках или в апдейте, хотя причина внутри.
| Что происходит | Когда реально проявляется | Где проверить |
|---|---|---|
| Обход тратится на копии | от 1 млн страниц с недельным обновлением или от 10 000 с ежедневным | «Статистика сканирования» в Search Console, логи сервера |
| Сигналы размываются между копиями | на сайтах любого размера, если на дубли ведут внешние ссылки | сверка объявленного и выбранного Google каноникала |
| Каннибализация по запросу | когда две страницы отвечают на один интент | отчёт «Эффективность» → фильтр по запросу → вкладка «Страницы» |
| Индекс забит мусором | рост исключённых при стабильном числе страниц в поиске | Вебмастер: Индексирование → Страницы в поиске → Исключённые |
| Правки не дают эффекта сразу | первые две недели после исправления | повторная проверка URL в обеих панелях |
Где искать дубли: Вебмастер и Search Console
В Яндекс Вебмастере путь один: Индексирование → Страницы в поиске → Исключённые страницы, фильтр по статусу «Удалено: Дубль». В выгрузке архива этот статус приходит как DUPLICATE, так что список удобно обрабатывать скриптом. После визита робота страница исключается из поиска в течение трёх недель — до этого срока паниковать рано.
Важное ограничение Яндекса: дублями признаются страницы внутри одного сайта. Копию вашего текста на чужом домене этот отчёт не покажет никогда.
В Search Console дубли рассыпаны по четырём статусам отчёта «Индексирование страниц»: «Страница является копией. Канонический вариант не выбран пользователем», «Страница является копией. Канонические версии страницы, выбранные Google и пользователем, не совпадают», «Вариант страницы с тегом canonical» и «Страница с переадресацией». Первые два — проблемные, вторые два — нормальная работа склейки.
Таблица примеров показывает максимум 1000 URL на статус, поэтому на крупном сайте она даёт только выборку. Массово сверять «объявленный пользователем canonical» с «каноническим URL, выбранным Google» приходится через URL Inspection API: квота — 2000 запросов в сутки и 600 в минуту на один ресурс Search Console. Тысяча URL в день — рабочий темп, за неделю закрывается средний магазин. Про настройку доступа и остальные отчёты панели у меня есть отдельный разбор Search Console.
Краулер: как достать почти-дубли
Панели показывают то, что робот уже решил. Краулер показывает то, что робот увидит завтра, и находит частичные совпадения, которых в панелях нет вообще. Здесь есть одна засада, на которую попадаются почти все.
| Инструмент | Бесплатно | Платно | Что даёт по дублям |
|---|---|---|---|
| Screaming Frog SEO Spider | 500 URL за обход | £199 за лицензию в год; от 5 лицензий £189, от 10 — £179, от 20 — £169 | Точные дубли по MD5-хэшу HTML, почти-дубли по minhash с настраиваемым порогом, исключение шапки, подвала и произвольных тегов, классов, id |
| Netpeak Spider | 500 URL и 5 потоков | $20 в месяц, $193 в год, $496 пожизненно; триал 3 дня, возврат 14 дней | Отчёты по дублирующимся Title, Description, H1 и тексту, интерфейс на русском |
| URL Inspection API | входит в Search Console | — | Сверка объявленного каноникала с выбранным Google; 2000 запросов в сутки и 600 в минуту на ресурс |
Для сайта на 300–400 страниц бесплатных 500 URL хватает с запасом, покупать лицензию под разовую задачу смысла нет. Лимит начинает жать на магазинах: там фильтры генерируют десятки тысяч адресов, и обход упирается в потолок на первой же категории.
Что выбрать для склейки в каждом случае
Google ранжирует сигналы канонизации по силе: редирект — strong signal, rel=canonical — strong signal, включение URL в sitemap.xml — weak signal. Из этого следует практический вывод: класть дубль в карту сайта и надеяться на склейку бессмысленно, карта только подсказывает.
| Ситуация | Метод | Почему так |
|---|---|---|
| www / без www, http / https | 301 на всех зеркалах | Директиву Host Яндекс отменил 12 марта 2018 года и просто игнорирует; других способов нет |
| Слеш и его отсутствие, /index.php | 301 | Страница-дубль пользователю не нужна, доступной её держать незачем |
| Товар в нескольких категориях | rel=canonical на основной URL | Обе страницы должны оставаться доступными для покупателя |
| UTM и метки трекинга | canonical на чистый URL плюс Clean-param для Яндекса | Ссылку из рассылки нельзя редиректить, она потеряет метку |
| Фильтры фасетной навигации | robots.txt или фильтры на фрагментах URL | Google называет эти способы «generally more effective in the long term», про canonical пишет, что он «may decrease crawl volume over time» |
| Пустая комбинация фильтров | 404 | Прямая рекомендация документации по фасетной навигации |
| Сортировки внутри категории | noindex или robots.txt | Рекомендация из документа Google про пагинацию |
| Пагинация | canonical каждой страницы на саму себя | Google не использует rel=next/prev и запрещает канонизировать серию на первую страницу |
| Версия для печати | canonical на основную версию | Контент совпадает, страница нужна пользователю |
| Внутренний поиск | Disallow в robots.txt | Бесконечная генерация URL, индексировать нечего |
| Тестовый поддомен | HTTP-авторизация | Закрытие в robots.txt не мешает попасть в индекс по внешней ссылке |
| Синдикация на партнёрском сайте | партнёр ставит noindex | Для межсайтовых случаев Google рекомендует именно так; canonical между доменами Яндекс игнорирует |
Отдельно про noindex внутри одного сайта. Google пишет прямым текстом: «We don't recommend using noindex to prevent selection of a canonical page within a single site, because it will completely block the page from Search». Страница выпадет из поиска целиком, вместе со своими сигналами. Для межсайтовой синдикации рекомендация обратная — там noindex у партнёра как раз правильное решение. Про то, какие директивы что делают, я подробно разбирал в материале о закрытии сайта от индексации.
Метки, фильтры и пагинация: три разных случая
Здесь Яндекс и Google разошлись сильнее всего, и универсального решения нет. Google закрыл инструмент «Параметры URL» в Search Console: правила перестали учитываться 26 апреля 2022 года, сам инструмент отключили 28 апреля. Причина в анонсе прямая — полезной оказалась примерно 1% заданных конфигураций. Замены не появилось, с тех пор Google разбирается с параметрами сам.
Яндекс пошёл в другую сторону. 12 декабря 2025 года в Вебмастере появилась «Настройка GET-параметров» (Индексирование → Настройка GET-параметров). Робот сам показывает найденные на сайте параметры, для каждого вы ставите «Да» или «Нет» в колонке «Учитывать параметр?». Изменения вступают в силу в течение недели.
| Что делаем | Яндекс | |
|---|---|---|
| Инструмент в панели | «Настройка GET-параметров» с 12.12.2025, эффект в течение недели | «Параметры URL» отключены 28.04.2022, замены нет |
| Директива в robots.txt | Clean-param: до 500 символов на правило, регистр учитывается, работает только для робота Яндекса | Clean-param не поддерживается, остаётся Disallow |
| Приоритет правил | Disallow сильнее Clean-param; при конфликте панели и robots.txt побеждает запрет | Disallow в robots.txt |
| Метки utm и gclid | canonical на чистый URL плюс Clean-param | canonical на чистый URL |
| Фильтры каталога | Clean-param или Disallow по параметру | robots.txt или фрагменты URL; canonical работает медленнее |
| Пагинация | с 04.07.2019 может показать неканоническую страницу, если она релевантнее | canonical каждой страницы на себя, rel=next/prev не используется |
Про пагинацию стоит держать в голове ещё один нюанс. С 4 июля 2019 года Яндекс может показать в поиске неканоническую страницу, если её содержимое существенно отличается от канонической и она релевантнее запросу — в примерах самого Яндекса это страницы форумной темы и постраничные части литературного произведения. Приоритет у канонических страниц сохраняется, но рассчитывать на жёсткое склеивание серии не нужно.
Частые ошибки склейки
Восемь из десяти проблем с дублями на аудитах — это не отсутствие склейки. Склейка стоит, она просто не работает, потому что нарушено одно из условий. Ниже то, что встречается чаще всего.
| Ошибка | Что происходит | Как правильно |
|---|---|---|
| canonical ведёт на страницу, закрытую в robots.txt | Яндекс игнорирует указание: канонический адрес недоступен для робота | Открыть целевую страницу для обхода |
| Цепочка canonical: 1 → 2, 2 → 3 | Яндекс игнорирует всю конструкцию | Все дубли указывают напрямую на конечный URL |
| canonical на другой домен или поддомен | Яндекс межсайтовый canonical не поддерживает | 301 или noindex на стороне копии |
| Несколько canonical в коде одной страницы | Указание игнорируется целиком | Один тег, проверять после правок шаблона и плагинов |
| Фрагмент в каноническом адресе: /page/#tab2 | Прямой запрет Google | Канонический URL без якоря |
| Разные методы задают разные каноникалы | Прямой запрет Google, сигналы конфликтуют | Один источник правды: тег, редирект и sitemap согласованы |
| canonical пагинации на первую страницу | Прямой запрет Google для серий | Каждая страница канонизируется на себя |
| noindex на странице, закрытой в robots.txt | Директиву никто не прочитает: «For the noindex rule to be effective, the page or resource must not be blocked by a robots.txt file» | Сначала открыть обход, потом ставить noindex |
| noindex ради выбора каноники внутри сайта | Страница выпадает из поиска целиком | rel=canonical или 301 |
| robots.txt или удаление URL как способ канонизации | Оба варианта в списке прямых запретов Google | Редирект или canonical |
| Содержимое канонической страницы сильно отличается | Яндекс игнорирует указание | Склеивать только реально совпадающие страницы |
Отсюда практическое правило: контрольную проверку ставьте не раньше чем через три-четыре недели после внедрения. Всё, что вы увидите раньше, — промежуточная картина, по ней нельзя судить, сработало решение или нет. Ускорить переобход частично можно, про способы писал в материале про ускорение индексации.
Дубли текста между своими страницами
Технические дубли — это URL. Текстовые — это содержание, и панели их почти не ловят. Google и Яндекс могут держать обе страницы в индексе, при этом обе будут стоять плохо, потому что робот не понимает, какая из них отвечает на запрос.
Три типовых источника. Первый — карточки-вариации: одна модель кроссовок в шести размерах, у каждой свой URL и одинаковое описание на 400 знаков. Второй — региональные подстраницы, где меняется только название города в заголовке и первом абзаце. Третий — теги и категории, которые пересекаются по составу товаров и получают одинаковый SEO-текст внизу.
Порог 90% в краулере такие случаи пропускает, потому что города и размеры дают формальное различие. Опустите его до 80% и заодно исключите из анализа меню, сайдбар и блок рекомендаций — иначе отчёт утонет в шаблоне.
Дальше решение по каждой группе. Вариации собираются в одну карточку с выбором размера, лишние URL уходят на 301 или получают canonical. Региональные страницы либо наполняются реальной локальной фактурой — адреса, цены, кейсы, отзывы из этого города, — либо схлопываются в одну. Пересекающиеся теги проверяются на спрос: если под тег нет своего кластера запросов, страница закрывается. Как разводить интенты по посадочным, разбирал в материале про кластеризацию запросов.
Каннибализацию удобно ловить в отчёте «Эффективность» Search Console: фильтр по конкретному запросу, вкладка «Страницы». Если по одному запросу за квартал показывались два-три URL и все болтаются во второй-третьей десятке, вы нашли пару на объединение. Заголовки при этом тоже стоит развести — про это отдельный разбор по Title, Description и H1.
Когда контент воруют у вас
Первое, что нужно знать: инструмент «Оригинальные тексты» в Яндекс Вебмастере больше не поддерживается. Застолбить авторство текста заранее через него нельзя. Вместо этого Яндекс рекомендует сообщать о новом контенте через «Переобход страниц» или «Обход по счётчикам Метрики».
Логика простая: выигрывает тот, чью страницу робот увидел первой. Поэтому рабочая защита — скорость индексации собственных публикаций. У «Переобхода страниц» суточный лимит выделяется на основной домен и все поддомены вместе, актуальное значение показано в интерфейсе рядом с полем ввода. Заявка обрабатывается не более трёх дней, данные в поиске обновляются в течение двух недель после визита робота. Для массовой отправки Яндекс отправляет к обходу по счётчикам Метрики.
У Google дублирование само по себе в спам-политиках не выделено. Там есть отдельный раздел про скрейпинг.
«Scraping refers to the practice of taking content from other sites, often through automated means, and hosting it with the purpose of manipulating search rankings». В примерах: перепубликация без собственных дополнений и указания источника, копирование с заменой слов синонимами, воспроизведение чужих фидов и встраивание чужого контента без существенной добавленной ценности. Раздел обновлён 15 мая 2026 года.
На практике реакция зависит от того, кто украл. Копия на слабом сайте обычно не двигается вообще и внимания не стоит. Копия на сильном домене, проиндексированная раньше вашей, — повод идти по процедуре жалобы правообладателя в поиске и параллельно писать хостеру. Доказывать первенство стало сложнее: оператор cache: отключён, посмотреть дату сохранённой копии чужой страницы в Google больше нельзя, остаются собственные логи, дата публикации в вашей CMS и записи в Вебмастере о первом обходе.
Порядок работ на реальном сайте
Собираю всё в последовательность, по которой сам иду на проектах. Она рассчитана на две-три недели работы с контрольной точкой в конце.
Если после месяца исключённых стало меньше, а страниц в поиске больше или столько же — работа сделана правильно. Если исключённые продолжают расти, ищите генератор: обычно это новый фильтр, скрипт сортировки или плагин, который начал плодить URL с параметрами. Проверять такие вещи удобно в связке с регулярным разбором технической части — что смотреть, я расписывал в экспресс-аудите.
Частые вопросы
Сколько дублей на сайте допустимо?
Дубли — это фильтр или санкция?
Через сколько дубли уйдут после исправления?
Можно закрыть дубли в robots.txt?
Что выбрать: 301 или rel=canonical?
Как посмотреть, какую страницу Google считает канонической?
Помогает ли оператор site: искать дубли?
Как убрать дубли с utm-метками?
Как правильно канонизировать пагинацию?
Почему rel=canonical не сработал?
Нужен ли платный краулер, чтобы найти дубли?
Что делать, если мой текст скопировали?
Главное
Дубли — это не приговор и не санкция: Google сам пишет, что часть дублирующегося контента на сайте нормальна. Вред начинается там, где копии множатся механически и растаскивают сигналы между собой: ссылки, поведение и релевантность делятся на два, и в топ не идёт ни одна страница. Ищите их в Вебмастере по статусу «Удалено: Дубль» и в четырёх дублевых статусах Search Console, а частичные совпадения — краулером с включённым поиском почти-дублей и порогом ниже дефолтных 90%. Метод склейки выбирайте по доступности страницы: 301 для того, что пользователю не нужно, canonical для того, что должно открываться, robots.txt для фасетов, noindex только для сортировок и межсайтовой синдикации. Проверьте себя по списку запретов: цепочки canonical, межсайтовые указания, фрагменты в адресе, noindex под Disallow и robots.txt в роли канонизатора ломают склейку молча. И заложите время: до двух недель в кластере у Google, до трёх недель на исключение у Яндекса, поэтому контрольный замер ставьте через месяц после внедрения.
Веду проекты и считаю их экономику на живых цифрах, пишу об этом в Telegram. Нужен разбор вашего случая — напишите через бриф.