Техника
robots.txt для Яндекса и Google: готовые примеры и разбор строк
Андрей Скворцов · 2026-10-21 · 11 мин
robots.txt — первый файл, который читает робот. В нём легко запретить всё и не заметить. Разбираем рабочие примеры построчно.
robots.txt — текстовый файл в корне сайта, который говорит роботам, что обходить можно, а что нет. Его читают первой строкой любого захода, и одна ошибка в нём способна закрыть сайт целиком — без понижений, санкций и писем: просто тишина в выдаче. При этом хороший robots.txt — это 20–30 строк, которые решают три задачи: экономят краулинговый бюджет, убирают дубли параметров и открывают сайт ИИ-краулерам.
Короткий ответ: берите пример под свою платформу из этой статьи, замените домен и сверьтесь с таблицей разбора строк. Затем обязательно прогоните файл через «Анализ robots.txt» в Яндекс.Вебмастере — он показывает, как правила видит робот, а не как вам кажется.
Синтаксис: семь директив, которые нужно знать
| Директива | Пример | Что делает |
| User-agent | User-agent: * | Для кого правило (звёздочка — все роботы) |
| Disallow | Disallow: /cart | Запретить путь |
| Allow | Allow: /catalog | Разрешить путь внутри запрещённого |
| Sitemap | Sitemap: https://site.ru/sitemap.xml | Где карта сайта |
| Clean-param | Clean-param: utm_source&utm_medium | Склеивать дубли с параметрами (только Яндекс) |
| Host (устарела) | — | Не используется: главное зеркало выбирается 301-редиректом |
| Crawl-delay | Crawl-delay: 2 | Пауза между запросами (нужна редко, на слабом хостинге) |
Правила приоритета: более длинное правило побивает более короткое; отдельный блок User-agent перекрывает общий целиком для конкретного робота. Это второе — источник половины ошибок: если вы завели блок User-agent: Yandex, то все правила из User-agent: для Яндекса перестают действовать, и их надо продублировать.
Пример 1. Корпоративный сайт или лендинг (универсальный)
```
User-agent: *
Disallow: /cart
Disallow: /checkout
Disallow: /my-account
Disallow: /*?s=
Disallow: /*?search
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://vash-site.ru/sitemap.xml
```
Разбор: закрыты корзина, оформление, аккаунт и внутренний поиск — это служебные страницы, которые не должны попадать в выдачу и съедать бюджет обхода. admin-ajax разрешён, потому что без него ломаются формы WordPress. Sitemap в конце — робот узнаёт карту из robots, даже если вы забыли отправить её в панели.
Пример 2. Интернет-магазин (с фильтрами и параметрами)
```
User-agent: *
Disallow: /cart
Disallow: /checkout
Disallow: /my-account
Disallow: /*?sort=
Disallow: /*?filter
Disallow: /*?from=
Disallow: /*?PAGE_
Disallow: /*?
Allow: /*?page=
Clean-param: utm_source&utm_medium&utm_campaign&utm_term&utm_content&yclid&gclid&_openstat&from
User-agent: Yandex
Disallow: /cart
Disallow: /checkout
Disallow: /my-account
Disallow: /*?sort=
Disallow: /*?filter
Clean-param: utm_source&utm_medium&utm_campaign&utm_term&utm_content&yclid&gclid&_openstat&from
Sitemap: https://magazin.ru/sitemap.xml
```
Здесь три идеи. Первая: сортировки и фильтры закрыты (?sort=, ?filter), чтобы тысячи комбинаций не попали в индекс — подробная логика «какие фильтры можно открывать» разобрана в статье про SEO интернет-магазина. Вторая: Clean-param дублирован в блоке Яндекса — если у вас есть отдельный блок Yandex, общие правила надо повторить в нём. Третья: разрешение Allow: /?page= внутри глобального Disallow: /? показывает работу приоритета длинных правил — пагинация открыта, остальное с параметрами закрыто.
Пример 3. С открытыми ИИ-ботами (GEO-ready)
```
User-agent: *
Disallow: /cart
Disallow: /checkout
User-agent: GPTBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: PerplexityBot
Allow: /
Sitemap: https://vash-site.ru/sitemap.xml
```
Технически блоки с Allow: / избыточны — боты и так работают по общему правилу. Но они полезны как самодокументация («мы осознанно открыты для ИИ») и как страховка: если завтра в общий блок добавится широкий Disallow, ИИ-боты останутся открытыми. Кому стоит закрыть ИИ-ботов — платному контенту и базам данных — мы разбирали в статье об ИИ-краулерах, включая живую проверку «пускает ли сайт ботов».
Разбор частых ошибок
| Ошибка | Симптом | Как правильно |
| Disallow: / после запуска | Сайт целиком вне индекса | Убрать; в тестовом окружении держать отдельно |
| Отдельный блок Yandex без дубля общих правил | Яндекс обходит закрытое | Дублировать правила в каждый блок |
| Disallow + noindex одновременно | noindex не читается | Разрешить обход, noindex оставить в мета-теге |
| Относительный Sitemap | Часть CMS игнорирует | Абсолютный URL с https и доменом |
| Русские буквы без кодирования | Непредсказуемое поведение | Использовать punycode или латиницу путей |
| Закрыт /wp-content/ целиком | Картинки вне поиска по картинкам | Закрывать точечно, не весь каталог |
Как проверять robots.txt
1. Яндекс.Вебмастер → Инструменты → Анализ robots.txt. Показывает файл глазами робота и позволяет проверить любой URL: запрещён или разрешён. Это главный инструмент — доверяйте ему, а не глазам.
2. Search Console → robots.txt-отчёт — покажет ошибки синтаксиса и статус файла у Google.
3. Живая проверка ИИ-ботов: заход на сайт с User-Agent каждого бота — ловит WAF, который режет роботов независимо от robots. В INSONT это кнопка в разделе «Боты».
4. После каждого релиза перечитывайте файл: переезды и обновления CMS любят перезаписывать robots. Контроль в один взгляд — часть ежемесячной гигиены из техаудита.
Clean-param: недооценённая строка
Для Яндекс-трафика Clean-param — самая денежная директива. Без неё страницы /catalog/sofas?utm_source=telegram, ?gclid=123, ?from=instagram — тысячи отдельных URL с одинаковым контентом. Яндекс либо тратит бюджет на дубли, либо сам решает, что главное, — и не всегда угадывает. С Clean-param робот склеивает параметры автоматически, показы собираются на чистом URL. Формат: Clean-param: param1¶m2 — перечисляются имена без значений, через амперсанд.
Google работает иначе: он игнорирует Clean-param и склеивает дубли через canonical — поэтому canonical на чистый URL обязателен независимо от robots.txt. Связка «Clean-param для Яндекса + canonical для Google» закрывает дубли для обоих поисковиков.
Частые вопросы
Нужен ли robots.txt, если запрещать нечего? Да, минимальный: пустой Disallow и строка Sitemap. Отсутствие файла — тоже «всё разрешено», но карта из robots ускоряет находждение новых страниц.
Crawl-delay ставить? Только если хостинг реально захлёбывается (большие 5xx в статистике обхода). На нормальном VPS он не нужен, а для Google вообще игнорируется.
Как запретить один конкретный URL? Disallow: /specific-page$ — знак доллара фиксирует конец адреса, иначе запрет сработает и на все вложенные пути.
robots.txt кэшируется? Да, роботы читают его раз в сутки-несколько. После правок не паникуйте день-два — и отправьте файл на перепроверку в Вебмастере.
robots.txt — это не «галочка из чек-листа», а первый контакт робота с сайтом, и от него зависит, увидит ли поисковик всё остальное. Пятнадцать минут на файл по примеру + проверка в Вебмастере — и вы закрыли целый класс проблем, о которых конкуренты читают в блогах годами.
Мини-кейс: как один Disallow съел половину каталога
Магазин сантехники: трафик из Яндекса плавно падал два месяца при живом Google. В панике начали закупать ссылки. Разбор нашёл причину в robots.txt: при обновлении CMS файл перезаписался шаблонным, и в нём оказалось правило Disallow: /*? без исключений — под него попала вся пагинация каталога, а вместе с ней перестали обходиться страницы 2, 3, 4 каждой категории, где жили половина товаров.
Правка: возврат исключения Allow: /*?page= плюс переобход категорий. Через три недели индекс вернул 900 страниц, трафик восстановился к прежнему уровню за месяц. Потрачено на диагностику и правку — сорок минут. Потрачено на ссылки до диагностики — 60 тысяч рублей, впустую.
| Действие | Результат |
| Проверка robots в Вебмастере (10 мин) | Найдено правило-убийца пагинации |
| Возврат Allow + переобход | 900 страниц вернулись в индекс |
| Месяц спустя | Трафик восстановлен |
Мораль не «не обновляйте CMS», а «после любого обновления — проверка robots глазами робота»: анализ robots.txt в Вебмастере покажет проблему за минуту, пока она не сгрызла индекс.
Связь с остальной техникой
robots.txt работает в связке, а не один: Clean-param склеивает UTM-дубли у Яндекса, canonical — у Google; sitemap показывает роботу, что вы считаете важным; noindex в мета-тегах точечно исключает страницы из выдачи. Как раскладывать задачи между этими инструментами — мы разобрали в статье о проверке и увеличении индексации: robots отвечает за «пускать/не пускать на обход», остальное — за «брать в выдачу или нет».
И не забывайте про ИИ-контур: в том же файле решается судьба ваших цитат в GigaChat и Perplexity. Роботы моделей должны быть открыты на содержательных разделах — как проверить живым заходом, мы показывали в статье об ИИ-краулерах.
Частые вопросы и тонкие правила
Пустой robots.txt лучше отсутствующего? Практически равноценны (всё разрешено), но файл лучше: роботы не тратят запрос на 404, а вы всегда можете добавить правило без «создания файла с нуля» в спешке.
Как запретить файлы (PDF, картинки) из индекса? PDF: Disallow: /*.pdf$ — если они служебные; содержательные PDF лучше оставить (они ранжируются). Картинки закрывать каталогом целиком не стоит — потеряете поиск по картинкам; точечные запреты по правилам из примеров.
Мобильная версия на поддомене m. Закройте её в robots.txt полностью и настройте 301/rel-alternate — современные мобильные схемы не требуют отдельного робота, а дубль-зеркало только мешает.
Crawl-delay: кто поддерживает? Яндекс — да, Google — игнорирует. Если хостинг захлёбывается, лучше чинить хостинг (кэш): Crawl-delay лечит симптом замедлением обхода, а кэш — причину.
После правки robots — что сразу? Проверка в «Анализе robots.txt» (как видит робот), затем проверка 5–10 ключевых URL на «разрешён/запрещён». Только убедившись глазами робота, считайте правку применённой. И добавьте файл в послерелизный чек-лист: обновления CMS любят его перезаписывать.
robots.txt — редкий случай, когда «потратить 20 минут один раз» почти правда: файл стабилен годами, если платформа не перезаписывает его. Храните его в репозитории/бэкапе рядом с sitemap — и любые переезды будут проходить без сюрпризов, о которых сообщает падающий график индексации.
Глоссарий и порядок внедрения
User-agent — блок правил для конкретного робота. Disallow/Allow — запрет и разрешение путей. Clean-param — яндексовская склейка дублей с параметрами. Sitemap-директива — адрес карты сайта в robots. Приоритет длинного правила — более конкретный путь побивает общий. Белый список ИИ-ботов — явные Allow для GPTBot, ClaudeBot, PerplexityBot.
Порядок внедрения на новом сайте: взять пример под свою платформу → заменить домен → проверить в «Анализе robots.txt» Вебмастера глазами робота → добавить Clean-param → убедиться в открытости ИИ-ботов → сохранить файл в репозиторий/бэкап. Шесть шагов, и самый короткий файл вашего сайта начинает работать как диспетчер: роботы ходят туда, куда надо, и не тратят бюджет туда, где им делать нечего.
Финальная проверка зрелости вашего robots.txt: он лежит в бэкапе рядом с кодом сайта; после каждого релиза кто-то смотрит на него глазами робота; ИИ-боты открыты осознанно, а не «случайно»; Clean-param актуален под текущие рекламные каналы; sitemap указан абсолютным адресом. Пять «да» — файл работает на вас. Любое «нет» — вы знаете, что чинить в первую очередь. Такой маленький файл, а дисциплины вокруг него требуется больше, чем вокруг многих разделов сайта, — потому что цена ошибки в нём измеряется всем индексом сразу.
Мини-FAQ по robots.txt
Google и Яндекс понимают robots одинаково? База синтаксиса общая, различия в деталях: Clean-param — только Яндекс, Crawl-delay Google игнорирует, приоритеты длинных правил работают у обоих. Проверяйте файл в обоих кабинетах.
Что делать при переезде домена? Старый домен: robots остаётся, Disallow не ставится (роботу нужно видеть 301), sitemap старый — с адресами редиректов. Новый: полный robots со свежим sitemap. Через 3–6 месяцев старый домен можно закрывать полностью.
Запретил раздел, а он в выдаче с описанием «данные недоступны». Это поведение Disallow: робот не читает страницу, но адрес известен по ссылкам. Полное исключение из выдачи — только noindex при открытом обходе.
Как часто пересматривать файл? После релизов — всегда; раз в квартал — сверка со списком рекламных параметров и служебных разделов. Живой файл живёт в бэкапе рядом с кодом.
Преимущества
Почему блог пишем как рабочую тетрадь, а не как медиа
Каждая статья должна менять, что вы сделаете на сайте на этой неделе. Иначе её нет.
Пишем разбор, а не десять трендов
Медиа плодят списки. Мы разбираем Вебмастер, карточку, срез по России. Уносите чек-лист. Не ощущение, что «надо быть в ИИ».
Цифры берём со среза, а не из чужого отчёта США
Западные графики по ChatGPT плохо описывают Яндекс и GigaChat. Решения для своего рынка. Меньше ложных приоритетов.
Статья стыкуется с очередью работ
Прочитали про закрытый блог — в кабинете это пункт, не «интересный факт». Чтение кончается правкой. Это редкость для SEO-блогов.
Не продаём схему в тексте
Многие блоги агентств подводят к пакету ссылок. Мы подводим к витрине и тарифу. Можно читать скептику. Метод не меняется в конце статьи.