noindexrobots.txtтехникаиндексация

noindex vs robots.txt: когда какой инструмент использовать для блокировки

Многие путают noindex и robots.txt — и нечаянно открывают приватное в индекс или закрывают важное от Google. Объясняю с примерами.

Главная разница в одном предложении

robots.txt запрещает сканирование страницы. noindex запрещает её индексацию.

Это разные процессы:

  • Сканирование — поисковый бот зашёл на страницу, прочитал
  • Индексация — содержимое страницы попало в поисковую базу

Можно сканировать, но не индексировать. Нельзя индексировать без сканирования (за редкими исключениями).

robots.txt — на уровне «бот не зайдёт»

User-agent: *
Disallow: /admin/
Disallow: /api/
Disallow: /cart/

Поисковый бот не заходит на эти страницы. Не видит их содержимое.

Что важно: если на страницу есть ссылка с другого сайта или с самого вашего, Google всё равно может проиндексировать URL — без содержимого, только с anchor-текстом ссылки.

В выдаче появится:

> URL: https://example.com/admin/dashboard > Описание: «Нет информации. Заблокировано в robots.txt».

То есть закрытие в robots.txt не гарантирует отсутствия URL в индексе.

noindex — на уровне «не показывать в выдаче»

<meta name="robots" content="noindex, follow" />

Или HTTP-заголовок:

X-Robots-Tag: noindex

Поисковик сканирует страницу, читает содержимое, но не добавляет в индекс. В выдаче её нет.

Важно: чтобы noindex сработал, поисковик должен сначала просканировать страницу. То есть не должна быть закрыта в robots.txt.

Главное правило

Если хотите гарантированно убрать страницу из выдачи — используйте noindex, а НЕ robots.txt.

Самая частая ошибка: «закрою от индексации через robots.txt». Это не работает. Страница остаётся в индексе как «closed» URL.

Когда использовать robots.txt

1. Технические пути, на которые точно не должен заходить бот

Disallow: /api/
Disallow: /static/data/
Disallow: /admin/

Сюда поисковику и так нечего делать. Закрытие — гигиена + экономия crawl budget.

2. Динамические URL с параметрами (для Яндекса)

Clean-param: utm_source&utm_campaign&sort

Чистит дубли с UTM-метками и параметрами сортировки. Google использует canonical.

3. Медиа-серверы, не нужные для индексации

Disallow: /uploads/temp/

4. Указание sitemap

Sitemap: https://example.com/sitemap.xml

Когда использовать noindex

1. Технические страницы, которые должны быть доступны пользователю

  • Страница «Спасибо» после формы
  • Страница оплаты успешной
  • Страница 404 (хотя обычно автоматически noindex)
  • Внутренний поиск с результатами
<meta name="robots" content="noindex, follow" />

2. Дубли по контенту

Если у вас есть похожие страницы, которые технически нужны пользователю, но не должны конкурировать в поиске:

  • Страницы фильтров с малым числом результатов
  • Архивы по дате
  • Страницы тегов с дублями

3. Целевые страницы рекламы (PPC landings)

Часто landing-страницы для контекстной рекламы не оптимизированы под органику. Лучше noindex.

4. Тонкий контент

Если у вас 100 карточек на сайте, и 30 из них тонкие — лучше noindex на них до улучшения.

Подробнее про индексацию карточек →

Когда использовать оба

В редких случаях — для двойной защиты:

Disallow: /private/

+ на самой странице:

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

Но: если вы закрыли через robots.txt, noindex не сработает — поисковик не зайдёт и не увидит метатег.

То есть либо одно, либо другое, не оба.

Анти-паттерны

❌ noindex для всех «приватных» страниц без HTTP-аутентификации

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

Поисковик не отображает её в выдаче, но может проиндексировать содержимое.

Решение: HTTP-аутентификация (требует пароль) + noindex.

❌ Disallow в robots.txt + ссылки с сайта на эти страницы

Поисковик увидит ссылки → попытается зайти → не сможет (Disallow) → но проиндексирует URL по анкору.

Решение: убрать ссылки или использовать rel="nofollow" + noindex.

❌ noindex на странице, которая закрыта в robots.txt

Disallow: /private/

И на странице:

<meta name="robots" content="noindex" />

Не работает. Бот не зайдёт → не увидит метатег → если есть ссылки извне, страница может остаться в индексе.

❌ noindex на главной

Изменение CMS, тестирование, релиз — кто-то случайно ставит noindex на главную → через 2-7 дней главная вылетает из индекса → катастрофа.

Решение: в DevOps добавить проверку, что главная никогда не имеет noindex в production.

❌ Disallow всего сайта в production

User-agent: *
Disallow: /

Часто остаётся с этапа разработки. После релиза в production забывают убрать.

Через 7-30 дней сайт выпадает из индекса.

Решение: при деплое в production автоматическая проверка robots.txt.

Чек-лист

  • [ ] robots.txt для технических путей, не для блокировки от поиска
  • [ ] noindex для приватных и тонких страниц
  • [ ] Не сочетать robots.txt Disallow с noindex
  • [ ] Главная страница в production без noindex
  • [ ] Production robots.txt не имеет Disallow: /
  • [ ] Регулярная проверка GSC «Покрытие индексирования»
  • [ ] HTTP-аутентификация для реально приватных страниц

Итог

noindex — для гарантированного удаления из выдачи. robots.txt — для экономии crawl budget. Они решают разные задачи и не заменяют друг друга.

Прогнать SEO-аудит с проверкой robots.txt →

Получить SEO-аудит своего сайта

Бесплатно. Без регистрации. Топ-проблемы и план роста позиций за 60 секунд.

Проверить сайт →