ГлавнаяБлог
Мета-теги robots: noindex, nofollow и когда их применять

Мета-теги robots: noindex, nofollow и когда их применять

Мета-теги robots: noindex, nofollow и когда их применять — иллюстрация к статье блога SEO Мастера
Автор: SEO Мастера · агентство продвижения с 2005 года Дата: 22 июля 2026 Время чтения: 23 мин

Мета-тег robots — самый короткий и самый опасный инструмент технического SEO. Одна строка в шапке шаблона решает, будет ли страница участвовать в поиске вообще. Одна ошибка в той же строке — и из индекса вылетает весь каталог, причём вебмастер узнаёт об этом через две-три недели, когда трафик уже просел. При этом почти каждый второй сайт, который к нам приходит на аудит, использует директивы robots неправильно: закрывает не то, закрывает не тем инструментом, дублирует запрет в robots.txt и удивляется, почему страницы всё равно висят в выдаче. В этой статье разбираем директивы meta robots и X-Robots-Tag так, как мы применяем их в реальных проектах SEO-продвижения: что каждая означает, чем отличается от robots.txt, где проходят границы поддержки у Яндекса и Google и какие ошибки стоят трафика.

Коротко

  • robots.txt управляет обходом, meta robots — индексированием. Это разные слои, и они не заменяют друг друга.
  • Классическая фатальная ошибка: закрыть страницу в robots.txt и поставить на ней noindex. Робот не зайдёт, директиву не прочитает, страница останется в выдаче.
  • noindex работает только после того, как робот загрузил HTML и прочитал тег. До этого момента страница живёт в индексе как ни в чём не бывало.
  • X-Robots-Tag — то же самое, но в HTTP-заголовке: единственный способ управлять индексированием PDF, изображений и любых не-HTML файлов.
  • nofollow в meta robots и rel="nofollow" на ссылке — разные вещи с разной областью действия; ни то, ни другое давно не «сохраняет вес страницы».
  • Яндекс и Google поддерживают разный набор директив: max-snippet, max-image-preview и data-nosnippet — это про Google, у Яндекса свои механики.
  • Любую массовую правку директив robots внедряют поэтапно и с контролем: сначала небольшая группа URL, потом остальные.

Что такое мета-тег robots и как он на самом деле работает

Мета-тег robots — это HTML-элемент в секции <head> документа, который сообщает поисковым системам правила обращения с этой конкретной страницей. Выглядит он предельно просто:

<meta name="robots" content="noindex, nofollow">

Атрибут name указывает, к какому роботу обращена директива. Значение robots — это обращение ко всем сразу. Можно адресоваться точечно: name="yandex" — только робот Яндекса, name="googlebot" — только основной робот Google, name="googlebot-news" — робот новостей. Если на странице есть и общая директива, и адресная, робот выполнит свою персональную, проигнорировав общую. Это удобно, когда нужно закрыть страницу от одной системы и оставить открытой в другой — например, региональная версия, актуальная только для Яндекса.

Атрибут content содержит список директив через запятую. Регистр не важен, порядок не важен, пробелы после запятых не важны. А вот сочетание директив важно принципиально: если робот получает противоречивые указания — скажем, index и noindex одновременно, — он выберет более ограничивающее, то есть запрет. Это правило «побеждает самая строгая директива» действует и когда указания приходят из разных источников: мета-тег на странице и HTTP-заголовок X-Robots-Tag складываются, и запрет из любого из них перевесит разрешение из другого.

КЛЮЧЕВОЙ МЕХАНИЗМ

Чтобы прочитать мета-тег robots, робот обязан загрузить страницу. Мета-тег живёт в HTML — значит, HTML должен быть скачан и разобран. Отсюда следуют два практических вывода, которые ломают половину интуитивных представлений о директивах. Первый: noindex не экономит краулинговый бюджет, робот тратит запрос на страницу в любом случае. Второй: если доступ к странице запрещён в robots.txt, робот её не загрузит и noindex не увидит — запрет индексирования просто не сработает.

Значения по умолчанию

Если мета-тега robots на странице нет вообще, робот считает, что действует index, follow — страницу можно индексировать, ссылки с неё можно обходить и учитывать. Поэтому явно писать <meta name="robots" content="index, follow"> бессмысленно: это в точности поведение по умолчанию. Такая строка не вредит, но и не даёт ничего — она лишь занимает место в шаблоне и создаёт иллюзию, что «индексацией управляют». Единственный сценарий, где явный index оправдан, — когда CMS или плагин по каким-то своим правилам может подставить noindex, и вы страхуетесь от этого на уровне шаблона.

robots.txt и meta robots: разные слои, разные задачи

Это главная путаница в теме, и она стоит сайтам больше трафика, чем любая другая техническая ошибка. Разница проста, если запомнить формулировку: robots.txt управляет тем, куда робот пойдёт; meta robots управляет тем, что робот сделает с тем, что нашёл. Первое — это управление обходом, второе — управление индексом.

Директива Disallow в robots.txt не запрещает индексирование. Она запрещает загрузку. Страница, закрытая в robots.txt, всё равно может попасть в выдачу — если на неё ведут внешние ссылки, поисковик знает о её существовании и может показать URL в результатах, иногда с текстом из анкоров ссылок вместо описания. В Google Search Console такие адреса попадают в отчёт «Проиндексировано, несмотря на блокировку в файле robots.txt» — это прямой индикатор того, что инструмент выбран неверно.

Параметрrobots.txt (Disallow)meta robots (noindex)X-Robots-Tag
Уровень действия Директория, паттерн URL, весь сайт Одна конкретная страница Один ответ сервера (любой файл)
Что запрещает Загрузку документа роботом Показ страницы в результатах поиска Показ любого документа в результатах
Экономит краулинговый бюджет Да, робот не делает запрос Нет, страница загружается всегда Нет, запрос выполняется
Гарантирует отсутствие в выдаче Нет — URL может показаться по ссылкам Да, после того как робот прочитал тег Да, после чтения заголовка
Работает для PDF, DOC, изображений Да (запрет загрузки) Нет — в них нет HTML-шапки Да, единственный способ
Передаёт ссылочный вес дальше Нет, ссылки не обходятся Зависит от follow/nofollow в теге Зависит от директив в заголовке
Скорость применения Часы — сутки после обновления файла Дни — недели, нужен обход каждой страницы Дни — недели, нужен обход
Риск при ошибке Высокий: одна строка убирает раздел из обхода Очень высокий: шаблонная правка вылетает на все страницы типа Очень высокий: правило nginx бьёт по маске URL
Запрет в robots.txt плюс noindex на странице — это не «двойная защита». Это гарантия того, что noindex никогда не сработает.

Практическая схема выбора инструмента выглядит так. Нужно, чтобы страницы не было в выдаче — noindex, доступ в robots.txt при этом обязательно открыт. Нужно, чтобы робот вообще не тратил обходы на бесконечное пространство URL (комбинации фильтров, календари, внутренний поиск) — robots.txt, тема подробно разобрана в материале про краулинговый бюджет. Нужно склеить несколько технически разных URL с одинаковым содержимым — не запрет, а canonical. Три разные задачи, три разных инструмента, и подмена одного другим — самая частая находка на техническом аудите.

Полный справочник директив

Директив больше, чем noindex и nofollow, и часть из них решает задачи, о которых редко вспоминают. Ниже — рабочий справочник с указанием реальной поддержки.

ДирективаЧто делаетЯндексGoogleПрактика применения
noindex Запрещает показ страницы в результатах поиска Да Да Базовый инструмент управления индексом
nofollow Робот не переходит по ссылкам со страницы Да Да Применять осторожно: обрывает обход вглубь
none Сокращение для noindex, nofollow Да Да Лучше писать явно — читаемее для команды
all Сокращение для index, follow Да Да Эквивалент отсутствия тега
noarchive Запрещает показ сохранённой копии страницы Да Да Актуально для платного контента и часто меняющихся цен
nosnippet Запрещает текстовое описание в сниппете Нет Да Резко снижает CTR — почти никогда не нужно
max-snippet:[n] Ограничивает длину сниппета n символами Нет Да −1 = без ограничений, 0 = без сниппета
max-image-preview:[val] Размер превью картинки: none / standard / large Нет Да large важен для Discover и визуальных ниш
max-video-preview:[n] Длина видеопревью в секундах Нет Да Для сайтов с видеоконтентом
notranslate Не предлагать перевод страницы в выдаче Нет Да Редкий кейс — терминология, юридические тексты
noimageindex Не индексировать изображения на странице Нет Да Теряете трафик из поиска по картинкам
unavailable_after:[дата] Убрать из индекса после указанной даты Нет Да Акции, мероприятия, вакансии с сроком
indexifembedded Разрешить индексирование во встроенном виде Нет Да Только в паре с noindex, для iframe-виджетов

Отдельно стоит устаревшая директива noyaca — запрет на использование описания из Яндекс.Каталога в сниппете. Каталог закрыт, директива смысла не имеет, но до сих пор встречается в шаблонах старых сайтов. Вреда не наносит, но её наличие — хороший маркер того, что техническую часть шаблона не трогали лет десять.

Как комбинировать директивы

Директивы перечисляются через запятую в одном теге. Правильно: <meta name="robots" content="noindex, follow, noarchive">. Неправильно и вредно — писать несколько отдельных мета-тегов robots на одной странице: формально роботы объединят их по правилу «самая строгая побеждает», но управляемость теряется, а ошибки становятся невидимыми. Особенно опасен сценарий, когда один тег ставит шаблон CMS, а второй добавляет SEO-плагин: в исходном коде оказывается index из шаблона и noindex из плагина, страница вылетает из индекса, а причину ищут неделями.

X-Robots-Tag: директивы в HTTP-заголовке

X-Robots-Tag — это тот же набор директив, только передаётся не в HTML, а в заголовке HTTP-ответа сервера. Синтаксис ответа выглядит так: X-Robots-Tag: noindex, nofollow. Можно адресоваться конкретному роботу: X-Robots-Tag: googlebot: noindex.

Зачем он нужен, если есть мета-тег. Есть три ситуации, в которых мета-тег бесполезен:

  • Не-HTML документы. PDF-прайсы, презентации, DOC-инструкции, XLS-выгрузки, изображения. В них негде разместить <head>, а индексируются они прекрасно — и регулярно оказываются в выдаче вместо посадочной страницы. Единственный способ управлять ими — X-Robots-Tag.
  • Массовые правила по маске. Закрыть тысячи URL одного паттерна проще одной директивой в конфигурации сервера, чем правкой шаблона и ожиданием пересборки кэша.
  • Нет доступа к шаблону. Бывает на legacy-системах и статических выгрузках, где HTML собирается вне вашего контроля.

Настраивается X-Robots-Tag на уровне веб-сервера. В Nginx — через директиву add_header внутри location-блока, в Apache — через Header set в .htaccess с условием по типу файла, в приложении — программно при формировании ответа. Ключевое предостережение: add_header в Nginx по умолчанию не наследуется во вложенных блоках, если в них есть свои add_header. Это источник ситуаций «мы поставили заголовок, а он применился не везде» — проверять нужно каждый паттерн URL отдельно.

ЧЕМ ОПАСЕН X-ROBOTS-TAG

Заголовок не виден в исходном коде страницы. Открыв «Просмотр кода» в браузере, вы не найдёте ни следа запрета — и будете искать причину выпадения страниц в шаблонах, в плагинах, в robots.txt, где угодно, кроме конфигурации сервера. Мы регулярно встречаем сайты, где на всём разделе висит noindex из наследованного правила Nginx, оставшегося со времён разработки на тестовом контуре. Проверяется одной командой curl -I по адресу страницы или вкладкой Network в инструментах разработчика — сделайте это привычкой при разборе любой проблемы с индексацией.

noindex: когда действительно нужен и когда это ошибка

noindex — инструмент точечный. Его задача — убрать из выдачи страницу, которая обязана существовать для пользователя, но не должна конкурировать за запросы, портить статистику качества сайта или показывать посторонним служебную информацию.

Закрывать

Служебные страницы аккаунта

Корзина, оформление заказа, личный кабинет, история заказов, страница «спасибо за заказ». Для пользователя нужны, в поиске бесполезны и часто содержат персональные данные.

Закрывать

Результаты внутреннего поиска

Страницы /search/?q=… формально уникальны, а по сути — бесконечное пространство низкокачественных списков. Классический источник претензий к качеству сайта.

Закрывать

Технические и юридические страницы

Страницы благодарности, формы подписки, версии для печати, страницы авторизации. Отдельно — тестовые контуры и стейджинги, если они доступны публично.

Закрывать

Пустые и незаполненные категории

Категории без товаров и теги с одной записью в блоге. Ставьте noindex автоматически по условию «меньше N позиций» и снимайте, когда контент появится.

НЕ закрывать

Страницы пагинации

Вторые и последующие страницы списков — путь робота вглубь каталога. noindex на них с течением времени приводит к тому, что робот перестаёт обходить и ссылки с них.

НЕ закрывать

Дубли, которые нужно склеить

Для дублей есть canonical: он объединяет сигналы и сохраняет вес. noindex просто выбрасывает страницу, а её накопленные показатели уходят в никуда.

Отдельный разговор о страницах фильтров. В фасетной навигации одна и та же механика порождает и мусор, и ценные посадочные. Комбинация «бренд + категория» с реальным спросом в Вордстате — это полноценная посадочная страница, которую надо открывать, наполнять текстом и продвигать. Комбинация из четырёх фильтров с сортировкой по возрастанию цены — мусор, которого не должно быть ни в индексе, ни в обходе. Ошибка — закрывать всё скопом директивой noindex на весь паттерн URL с параметрами: вместе с мусором вы теряете десятки, а на крупных каталогах сотни трафиковых страниц.

Сколько ждать эффекта

noindex начинает действовать не в момент публикации, а в момент, когда робот пришёл на страницу и прочитал тег. Значит, скорость зависит от частоты обхода конкретного URL. Главная и категории верхнего уровня обходятся часто — эффект будет за считанные дни. Карточка на пятом уровне вложенности может ждать обхода неделями. На практике мы закладываем 2–4 недели на выпадение основной массы страниц и до 2–3 месяцев на длинный хвост. Ускорить можно: отправить URL на переобход через Яндекс.Вебмастер или инструмент проверки URL в Search Console, а на больших объёмах — через API переобхода. Механика ускорения подробно разобрана в статье про индексацию сайта.

И ещё одна тонкость, о которой мало кто помнит: если страница долго стоит с noindex, поисковик со временем начинает воспринимать её как малоценную и снижает частоту обхода. Google при длительном noindex фактически перестаёт следовать ссылкам с такой страницы, даже если в теге указан follow. Практический вывод: не используйте noindex, follow как долгосрочную схему передачи веса — на дистанции она деградирует до noindex, nofollow.

nofollow: что он делает и чего давно не делает

Здесь путаницы почти столько же, сколько в паре robots.txt/noindex. Нужно чётко разделить два разных механизма с одинаковым названием.

Первое: <meta name="robots" content="nofollow"> — директива уровня страницы. Она говорит: не переходи ни по одной ссылке на этом документе. Действует на все ссылки разом, включая ссылки в навигации, в меню и в футере.

Второе: rel="nofollow" — атрибут отдельной ссылки. Действует только на неё. У Google к нему добавились уточняющие значения rel="sponsored" для рекламных и оплаченных ссылок и rel="ugc" для пользовательского контента: комментариев, отзывов, форумов.

Главное, что нужно понимать про nofollow в 2026 году: он не является инструментом «сохранения веса страницы». Схема PageRank sculpting — когда часть внутренних ссылок закрывали nofollow, чтобы вес перетёк на оставшиеся, — не работает больше пятнадцати лет. Вес страницы делится на все исходящие ссылки, и доля, приходящаяся на закрытую ссылку, просто теряется. Закрывая половину внутренних ссылок, вы не концентрируете вес — вы его сжигаете. Управлять распределением веса нужно структурой, а не атрибутами: об этом материал про внутреннюю перелинковку.

Второй важный момент: с 2019 года Google трактует nofollow как подсказку, а не как жёсткое указание. Робот может пройти по закрытой ссылке и учесть её при построении карты сайта. Если задача — гарантированно закрыть доступ, nofollow её не решает; для этого нужен robots.txt или отсутствие ссылки как таковой.

ГДЕ NOFOLLOW ДЕЙСТВИТЕЛЬНО НУЖЕН

Три сценария, в которых атрибут оправдан. Первый — исходящие ссылки, за которые вы получили деньги: партнёрские, рекламные, любые размещения (для них корректнее rel="sponsored"). Второй — пользовательский контент, который вы не модерируете вручную: комментарии, отзывы, профили (rel="ugc"). Третий — ссылки на страницы, которые вы не хотите отдавать роботу как приоритетные: логин, выход, служебные действия. Всё остальное — включая ссылки на партнёров, поставщиков и источники — должно быть открытым: исходящие ссылки на авторитетные ресурсы не вредят, а являются нормальным сигналом качества документа.

Управление сниппетом: noarchive, nosnippet, max-snippet

Эта группа директив не про индексирование, а про то, как страница выглядит в результатах поиска. Её недооценивают, хотя влияние на CTR прямое.

noarchive запрещает показ сохранённой копии. Поддерживается и Яндексом, и Google. Реальные сценарии: интернет-магазин с часто меняющимися ценами (чтобы пользователь не видел старую цену из кэша), контент за подпиской, страницы с данными, актуальными только «на сейчас». Для обычного коммерческого сайта директива не нужна — сохранённая копия скорее полезна.

nosnippet полностью убирает текстовое описание из результата: остаётся только заголовок и URL. CTR при этом падает многократно. Директива имеет смысл в исчезающе редких случаях — например, когда фрагмент текста нельзя показывать по лицензионным причинам. Практически всегда, когда мы находим nosnippet на коммерческом сайте, это следствие непонимания, а не осознанного решения.

max-snippet:[число] — куда более тонкий инструмент. Значение -1 снимает ограничение и разрешает поисковику формировать сниппет любой длины; 0 эквивалентно nosnippet; конкретное число ограничивает описание указанным количеством символов. Наиболее частая рабочая связка для контентных проектов:

<meta name="robots" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1">

Она разрешает Google показывать развёрнутые сниппеты, крупные превью изображений и полные видеопревью — то есть максимально заметный результат в выдаче. Для сайтов, которые претендуют на попадание в Google Discover, значение max-image-preview:large практически обязательно: без него карточка в ленте не получит крупного изображения. Как формируется сам сниппет и что на него влияет помимо директив — в материале про сниппет и CTR, а работа с заголовками и описаниями — в статье про Title и Description.

Отдельно — атрибут data-nosnippet. Он ставится не в head, а прямо на элемент в теле страницы: <span data-nosnippet>текст</span>. Google не будет использовать содержимое этого элемента при построении сниппета. Полезно, чтобы в описание не попадали дисклеймеры, хлебные крошки, служебные подписи и прочий текст, который выталкивает из сниппета полезную информацию.

Различия Яндекса и Google: где заканчивается совместимость

Расширенный набор директив — max-snippet, max-image-preview, max-video-preview, nosnippet, notranslate, noimageindex, unavailable_after, indexifembedded — это территория Google. Яндекс их не документирует и на них не реагирует. Прописывать их можно и нужно (они не мешают Яндексу), но рассчитывать на эффект в Яндексе не стоит.

Есть и обратная асимметрия, о которой часто забывают. У Яндекса исторически существовал HTML-тег <noindex> для закрытия части текста внутри страницы — нестандартная конструкция, которая позволяла спрятать от индексации фрагмент контента: счётчик, цитату, кусок чужого текста. Валидный вариант записи — <!--noindex-->текст<!--/noindex-->. Google этот тег не понимает и никогда не понимал. Полагаться на него как на инструмент управления релевантностью сегодня не стоит: любые попытки «спрятать» переспамленный кусок текста вместо того, чтобы его переписать, решаются алгоритмами против сайта, а не в его пользу — механики разобраны в статье про алгоритмы Яндекса.

Практический подход к мультипоисковой работе: базовые директивы (noindex, nofollow, noarchive) пишем общим тегом name="robots", расширенные Google-директивы — там же (они безвредны), а адресные теги name="yandex" и name="googlebot" используем только тогда, когда поведение систем действительно должно различаться. Плодить адресные теги без необходимости — верный способ получить противоречивые правила через полгода, когда шаблон будет править другой человек. Особенно осторожно с этим на мультиязычных проектах, где директивы накладываются на hreflang: страница с noindex выпадает из кластера языковых версий, и разметка перестаёт работать корректно.

Типичные ошибки: проблема, причина, решение

Ниже — ошибки, которые мы находим на аудитах чаще всего, в порядке убывания урона.

ПроблемаПричинаПоследствиеРешение
noindex на всём сайте после релиза Тестовый контур выкатили на прод вместе с настройкой «закрыть от индексации» Полное выпадение сайта из выдачи за 2–4 недели Снять галочку, отправить главную и ключевые разделы на переобход, добавить проверку в чек-лист релиза
noindex + Disallow одновременно «Закроем понадёжнее» — попытка перестраховаться Страницы остаются в выдаче: робот не может прочитать тег Убрать Disallow, оставить только noindex, дождаться обхода
noindex вместо canonical на дублях Непонимание разницы между «убрать» и «склеить» Теряются накопленные сигналы дублей вместо передачи основной странице Заменить на rel="canonical" с указанием основного URL
Закрыта пагинация Борьба с «дублями» списочных страниц Робот перестаёт доходить до карточек глубже второй страницы Открыть пагинацию, оставить index, follow, настроить структуру списков
nofollow на внутренних ссылках Устаревшая методика PageRank sculpting Вес не концентрируется, а теряется; часть страниц теряет входящие ссылки Снять nofollow с внутренних ссылок, управлять весом структурой
X-Robots-Tag из старой конфигурации Правило Nginx/Apache со стейджинга осталось в проде Раздел не индексируется, в HTML-коде причины не видно Проверить заголовки через curl -I, вычистить правило, запросить переобход
Два мета-тега robots на странице Шаблон CMS и SEO-плагин пишут свои теги независимо Побеждает самая строгая директива — обычно noindex Оставить один источник истины, отключить дублирующий вывод
noindex ставится через JavaScript SPA или клиентская логика подставляет тег после загрузки Директива применяется непредсказуемо и с задержкой на рендеринг Отдавать директиву в исходном HTML или через X-Robots-Tag
Директивы в <body> вместо <head> Ошибка вёрстки или вставка через визуальный редактор Тег игнорируется, страница индексируется вопреки ожиданиям Перенести в head, проверить валидность разметки
Отдаётся 404 или 5xx вместо noindex Попытка «убрать страницу» отключением вместо директивы Потеря ссылочного веса и накопленных сигналов, рост ошибок в логах Вернуть 200 с noindex либо поставить 301 на релевантную страницу

Первая строка таблицы заслуживает отдельного комментария. Массовая потеря индекса после релиза — не редкость и не экзотика: это одна из самых частых причин, по которым сайт внезапно теряет трафик. Коварство в том, что падение не мгновенное: страницы выпадают постепенно, по мере обхода, и первые дни всё выглядит нормально. Когда падение становится очевидным, с момента ошибки прошло уже 2–3 недели. Как разбирать такие ситуации системно — в материале про то, почему сайт упал в выдаче. И отдельная сложность у сайтов на фреймворках: если директивы формируются на клиенте, поведение робота становится непредсказуемым — подробности в статье про JavaScript-SEO.

Пошаговый аудит директив robots на сайте

Порядок действий, который мы применяем при разборе индексации на проекте любого размера.

1

Полный скан сайта краулером

Screaming Frog или аналог: собираем для каждого URL значение мета-тега robots, значение X-Robots-Tag, код ответа, canonical. Обязательно включаем рендеринг JavaScript — иначе не увидите директивы, которые подставляет клиентский код.

2

Сверка с robots.txt

Ищем пересечения: URL, одновременно закрытые в robots.txt и помеченные noindex. Каждое такое пересечение — неработающий запрет. Отдельно проверяем, не закрыт ли в robots.txt доступ к CSS и JS: без них робот не увидит страницу так, как её видит пользователь.

3

Проверка HTTP-заголовков по паттернам

Берём по 3–5 URL из каждого типа страниц (главная, категория, карточка, фильтр, статья, PDF) и снимаем заголовки командой curl -I. Так вскрываются серверные правила, которых нет в HTML.

4

Сопоставление с реальным индексом

Выгружаем список проиндексированных страниц из Вебмастера и Search Console, сравниваем с картой директив. Ищем два расхождения: страницы с noindex, которые всё ещё в индексе (робот не дошёл), и страницы в индексе без noindex, которых там быть не должно (директива не поставлена).

5

Сверка с sitemap.xml

В карте сайта не должно быть ни одного URL с noindex — это прямое противоречие сигналов: вы одновременно просите проиндексировать и запрещаете. Такие URL из sitemap убираем.

6

Стыковка с трафиком

Присоединяем к списку закрываемых URL данные визитов из Метрики за последний квартал. Если на странице, помеченной к закрытию, есть поисковый трафик и конверсии, решение пересматривается: возможно, это ценная посадочная, а не мусор.

7

Поэтапное внедрение

Массовые правки директив никогда не выкатываются одним релизом на весь сайт. Сначала 5–10% URL типа, две недели наблюдения за индексом и трафиком, затем остальное. Цена ошибки в этом блоке слишком высока, чтобы проверять гипотезы сразу на всём каталоге.

8

Постоянный мониторинг

Регулярный скан по расписанию с алертом на появление noindex там, где его быть не должно. Плюс обязательный пункт в чек-листе релиза: проверка главной, шаблона категории и шаблона карточки на наличие запрещающих директив.

Карта директив по типам страниц

Рабочая шпаргалка, от которой мы отталкиваемся на коммерческих проектах. Значения не догма — их корректируют под задачи конкретного сайта, но как отправная точка схема закрывает большинство ситуаций.

Тип страницыДирективыrobots.txtКомментарий
Главная, разделы, посадочные Тег не нужен (или index, follow) Открыто Плюс max-image-preview:large для визуальных ниш
Карточки товаров и услуг Тег не нужен Открыто Отсутствующие товары — 200 + noindex либо 301 на аналог
Пагинация списков index, follow Открыто Не закрывать: это магистраль обхода вглубь
Ценные комбинации фильтров index, follow Открыто Только при подтверждённом спросе и уникальном контенте
Мусорные фильтры и сортировки Директива не нужна Disallow Задача — не пустить робота, а не убрать из индекса
Внутренний поиск /search/ noindex, follow Disallow после выпадения Сначала noindex, дождаться выпадения, потом закрыть обход
Корзина, оформление, кабинет noindex, nofollow Disallow Тут дублирование оправдано: страницы уже не в индексе
Страницы «спасибо» и подтверждений noindex, nofollow Открыто Нужны для целей аналитики — доступ роботу не блокируем
Теги и метки блога index, follow либо noindex Открыто Открывать только осмысленные теги с наполнением
Версии для печати, AMP-дубли canonical на основную Открыто Склеивать, а не выбрасывать
PDF-прайсы и документы X-Robots-Tag по решению По решению Если PDF конкурирует с посадочной — закрывать
Тестовый контур, стейджинг noindex, nofollow Плюс HTTP-авторизация Директив мало: закрывайте паролем на уровне сервера

ПОРЯДОК ДЕЙСТВИЙ ПРИ УДАЛЕНИИ ИЗ ИНДЕКСА

Если страница уже проиндексирована и её нужно убрать, последовательность имеет значение. Сначала ставим noindex и оставляем доступ открытым. Ждём, пока страницы выпадут из индекса — контролируем по Вебмастеру и Search Console. Только после этого, если нужно ещё и сэкономить обход, добавляем Disallow в robots.txt. Обратный порядок — сначала Disallow, потом noindex — не работает: страницы зависают в выдаче на месяцы, потому что робот больше не может прочитать директиву и не получает сигнала об удалении.

Как проверять: инструменты и приёмы

Проверка директив robots — процедура из нескольких взаимодополняющих шагов, потому что ни один инструмент не покрывает картину целиком.

Быстрая проверка одной страницы

Открыть исходный код (Ctrl+U) и найти в head строку с name="robots" — это покажет мета-тег, но не покажет заголовок. Поэтому вторым действием — curl -I https://site.ru/page/ в терминале или вкладка Network в DevTools с просмотром Response Headers. Третьим — инструмент проверки URL в Search Console и «Проверка страницы» в Яндекс.Вебмастере: они показывают, как страницу видит именно робот после рендеринга, а не то, что отдаёт сервер в первичном HTML. Расхождение между этими тремя источниками — сама по себе находка.

Массовая проверка

Краулер с включённым рендерингом даёт колонки Meta Robots и X-Robots-Tag по всем URL сайта. Отчёты «Индексирование» в Search Console и «Страницы в поиске» в Вебмастере показывают, какие адреса исключены и по какой причине — сопоставление этих выгрузок со сканом даёт полную карту. На больших проектах к этому добавляется анализ логов: он показывает, доходит ли робот до страниц, на которых вы поменяли директивы, — без этого вы не знаете, применилась правка или ещё нет.

Регулярный контроль

Минимальный набор для коммерческого проекта: еженедельный автоматический скан ключевых шаблонов (главная, категория, карточка, статья) с проверкой на неожиданный noindex, алерт на резкое изменение числа страниц в поиске и обязательный пункт в чек-листе перед каждым релизом. Стоит это дешевле, чем один разбор ситуации «мы потеряли треть трафика и не понимаем почему». Полный перечень технических проверок собран в материале про SEO-аудит сайта, а сводный список — в SEO чек-листе. Примеры перестройки индексации на крупных каталогах есть в нашем портфолио, а стоимость работ — на странице цен.

Что важно запомнить

Директивы robots — это не «настройка», которую делают один раз при запуске. Это работающий слой управления индексом, который живёт вместе с сайтом: появляются новые типы страниц, меняется структура каталога, релизы приносят непредусмотренные правила. Три принципа, которые снимают большую часть рисков.

Инструмент под задачу. Убрать из выдачи — noindex. Не пустить робота — robots.txt. Склеить дубли — canonical. Управлять не-HTML файлами — X-Robots-Tag. Подмена одного другим не работает и создаёт проблемы, которые потом трудно диагностировать.

Меньше запретов — лучше. Каждая закрытая страница должна иметь обоснование. Ситуация, когда «закрыли на всякий случай», в сумме по сайту даёт потерю десятков посадочных, о существовании которых никто уже не помнит. Открытая по умолчанию структура, из которой точечно убраны служебные страницы, надёжнее, чем закрытая структура с точечными разрешениями.

Любая правка проверяется. После внедрения — скан, проверка заголовков, контроль индекса через 2–4 недели. Директивы robots — та область, где ошибка не даёт никакого сигнала в момент совершения: сайт продолжает работать, пользователи ничего не замечают, а последствия проявляются через недели. Именно поэтому здесь дисциплина проверки важнее скорости внедрения.

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

Чем noindex отличается от Disallow в robots.txt?

Disallow запрещает роботу загружать страницу, noindex — показывать её в результатах поиска. Закрытая в robots.txt страница может остаться в выдаче, если на неё ведут внешние ссылки: поисковик знает URL и показывает его без описания. И наоборот, noindex гарантирует выпадение из индекса, но не экономит ни одного обхода — робот всё равно скачивает страницу, чтобы прочитать директиву. Использовать оба инструмента на одном URL нельзя: Disallow не даст роботу увидеть noindex, и запрет индексирования не сработает.

Сколько времени проходит от установки noindex до выпадения страницы?

Столько, сколько роботу нужно, чтобы дойти до страницы и прочитать тег. Для главной и разделов верхнего уровня — от нескольких дней. Для карточек на глубоких уровнях вложенности — недели. Практический ориентир: 2–4 недели на основную массу и до 2–3 месяцев на длинный хвост. Ускорить можно отправкой URL на переобход через Яндекс.Вебмастер и Search Console, а при больших объёмах — через API переобхода. Если через месяц страница всё ещё в выдаче, проверьте, не закрыт ли к ней доступ в robots.txt.

Нужно ли писать index, follow на обычных страницах?

Нет. Отсутствие мета-тега robots и запись index, follow означают ровно одно и то же — это поведение по умолчанию. Строка не вредит, но не даёт ничего. Единственный разумный сценарий явной записи — когда CMS или плагин по своим правилам может подставить noindex и вы страхуетесь на уровне шаблона. Гораздо полезнее в этом теге прописать расширенные директивы для Google: max-snippet:-1, max-image-preview:large, max-video-preview:-1 — они реально влияют на вид результата в выдаче.

Что использовать для дублей: noindex или canonical?

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

Как закрыть от индексации PDF-файл или изображение?

Только через X-Robots-Tag в HTTP-заголовке — мета-тег в них поставить некуда. В Nginx это add_header внутри location для нужного расширения, в Apache — Header set в .htaccess с условием FilesMatch. Вариант с Disallow в robots.txt тоже возможен, но он лишь запрещает загрузку: если на файл ведут внешние ссылки, URL может остаться в выдаче. Проверить результат можно командой curl -I по адресу файла — заголовок должен быть виден в ответе сервера.

Правда ли, что nofollow на внутренних ссылках сохраняет вес страницы?

Нет, это устаревшее заблуждение. Методика PageRank sculpting перестала работать более пятнадцати лет назад. Вес страницы делится на все исходящие ссылки, и доля, приходящаяся на ссылку с nofollow, не перераспределяется между остальными, а просто теряется. Закрывая часть внутренних ссылок, вы уменьшаете общий вес, который проходит по сайту. Управлять распределением веса нужно структурой: уровнем вложенности, количеством и расположением ссылок, сквозными блоками перелинковки.

Почему страница с noindex всё ещё показывается в поиске?

Три основные причины. Первая — робот ещё не заходил на страницу после установки тега: нужно просто подождать или отправить URL на переобход. Вторая — доступ к странице закрыт в robots.txt, робот не может загрузить HTML и прочитать директиву; уберите Disallow. Третья — тег стоит не там: в body вместо head, или подставляется JavaScript уже после загрузки документа. Проверьте исходный HTML до рендеринга и HTTP-заголовки: возможно, серверный X-Robots-Tag с директивой index перебивает то, что вы видите в коде.

Стоит ли закрывать страницы пагинации директивой noindex?

Не стоит. Страницы пагинации — основной путь робота вглубь каталога: через них он добирается до карточек, которых нет в других списках. При длительном noindex поисковик со временем перестаёт следовать ссылкам с такой страницы даже при указанном follow, и часть ассортимента фактически выпадает из обхода. Правильная схема — оставить пагинацию открытой с index, follow, обеспечить на каждой странице уникальный title и корректный canonical на саму себя, а бороться с низкой ценностью глубоких страниц через структуру каталога и разумный размер списка.

SEO-продвижение сайтов с 2005 года

Наведём порядок в индексации вашего сайта

Проверим директивы robots и X-Robots-Tag по всем шаблонам, найдём страницы, которые выпали из индекса без причины, и те, которых в поиске быть не должно. Соберём карту директив по типам страниц, внедрим правки поэтапно и проконтролируем результат. Прозрачный договор, отчёты каждую неделю.

  • Пакет «Старт» от 55 000 ₽/мес
  • Пакет «Стандарт» 75 000 ₽/мес
  • Пакет «Премиум» 95 000 ₽/мес
  • Бесплатный аудит и прогноз
  • Договор с гарантией результата
  • Отчёты каждую неделю

Комментарии (14)

Артём Соколов

Формулировка «robots.txt управляет тем, куда робот пойдёт, а meta robots — что он сделает с найденным» наконец-то уложила это в голове. До этого читал десяток статей и везде было размыто.

Ирина_В

У нас как раз обратная ситуация из вашего блока про порядок действий: сначала закрыли раздел в robots.txt, потом добавили noindex в шаблон. Страницы висят в выдаче уже давно. Правильно понимаю, что нужно убрать Disallow и просто ждать обхода?

AdminSEO Мастер

Ирина, всё верно: сначала снимаем Disallow, чтобы робот смог загрузить HTML и увидеть noindex, и отправляем часть URL на переобход через Вебмастер. Дальше ждём выпадения и только потом, если нужно экономить обход, возвращаем запрет в robots.txt. Если раздел большой, имеет смысл посмотреть логи — доходит ли робот до этих адресов вообще.

dev_kostya

Про X-Robots-Tag из старой конфигурации — прямо про нас. Искали причину в шаблоне, в плагине, в robots.txt, а заголовок прилетал из наследованного location в Nginx со времён разработки. curl -I теперь первое, что делаю при любом разговоре об индексации.

Марат Ю.

Насчёт того, что nofollow стал подсказкой, соглашусь, но добавлю: на практике это ещё и означает, что закрытая ссылка может утянуть краулинговый бюджет. То есть вреда от массового nofollow больше, чем просто «вес теряется».

Ольга Реутова

Не совсем согласна с категоричным «пагинацию не закрывать». У нас в каталоге списки по 12 товаров, страниц пагинации получается под сотню на категорию, и они реально мусорят в отчётах. Или проблема тут не в директивах?

AdminSEO Мастер

Ольга, проблема действительно не в директивах, а в размере списка: сто страниц пагинации на категорию — это сигнал, что стоит увеличить количество товаров на странице и добавить промежуточные подкатегории. Закрытие noindex уберёт их из отчётов, но со временем оборвёт роботу путь к карточкам с глубоких страниц. Лечится структурой, а не запретом.

Виктор_ИМ

Вопрос по фасетным фильтрам. В таблице «карта директив» вы делите комбинации на ценные и мусорные. А как на практике определить границу, если комбинаций тысячи и вручную их не пересмотреть?

AdminSEO Мастер

Виктор, обычно работает правило одного-двух параметров: открываем комбинации, у которых есть подтверждённый спрос в Вордстате и достаточное число товаров в выдаче фильтра, всё, что глубже двух параметров или пересекается с сортировкой, закрываем от обхода. Список кандидатов собирается выгрузкой всех комбинаций и сверкой с частотностью, руками смотрят уже только верхушку. Если хотите, разберём вашу структуру фильтров на бесплатном аудите.

Настя_контент

Спасибо за связку с max-snippet:-1 и max-image-preview:large. Прописали её на статьях блога, картинки в выдаче Google стали крупнее — визуально сниппет теперь заметно отличается от соседей.

Григорий Панов

У нас PDF-прайсы висят в выдаче выше самой страницы с ценами. Понял, что нужен X-Robots-Tag, но не уверен: закрывать полностью или лучше как-то оставить их в индексе?

AdminSEO Мастер

Григорий, если PDF перебивает посадочную по коммерческим запросам — закрывайте его через X-Robots-Tag: noindex и оставляйте доступным по прямой ссылке для пользователей. Перед этим посмотрите в Метрике, есть ли на файл заходы из поиска и приводят ли они к обращениям, иногда прайс работает как самостоятельная точка входа. Правило в Nginx делайте через FilesMatch или location по расширению и обязательно проверьте curl -I по нескольким файлам, а не по одному.

lena_web

Таблицу с картой директив по типам страниц распечатала и повесила рядом с монитором. Особенно ценно, что для внутреннего поиска расписана последовательность: сначала noindex, дождаться выпадения, потом уже Disallow.

Тимур Насыров

Пункт про два мета-тега robots на странице — недооценённая беда. У нас тема выводила свой тег, а SEO-плагин свой, в коде было и index, и noindex одновременно. Пока не открыли исходник глазами, ни один отчёт на это не указывал.

Женя_аналитик

А что если сайт на React и мета-теги проставляются на клиенте? В исходном HTML пусто, в отрендеренном всё на месте. Насколько это критично для Яндекса?

AdminSEO Мастер

Женя, критично: директива в этом случае применяется только после рендеринга, а он у роботов отложенный и не гарантированный, поэтому поведение становится непредсказуемым. Надёжный вариант — отдавать robots в первичном HTML через серверный рендеринг либо вообще вынести управление в X-Robots-Tag на уровне сервера. И проверяйте страницы через инструмент проверки URL в Search Console и «Проверку страницы» в Вебмастере — расхождение с исходным кодом там сразу видно.

Полина С.

Отдельное спасибо за пошаговый аудит. Шаг со стыковкой списка закрываемых URL с трафиком из Метрики спас нам несколько посадочных, которые разработчики уже записали в мусор.

Роман Дьяков

Тезис про деградацию noindex, follow в noindex, nofollow встречаю не впервые, но он всегда идёт без ссылки на что-то проверяемое. Есть способ увидеть это на своём сайте, а не принимать на веру?

Светлана Р.

Полезла проверять шаблон после раздела про устаревшие директивы и нашла в head noyaca. Сайту много лет, никто уже не помнит, кто её туда поставил. Маркер и правда рабочий.

Оставить комментарий

Спасибо! Ваш комментарий отправлен на модерацию и появится после проверки.