Студия дизайна в ТОПе Google и Яндекса, а ChatGPT про их услуги молчит. В robots.txt - только запрет /wp-admin/, Allow для Googlebot и YandexBot, но GPTBot и PerplexityBot не прописаны. Cloudflare резал PerplexityBot по IP, хотя файл ничего не запрещал. Боль: страшно запретить GPTBot и потерять GEO, или открыть кабинет всем краулерам. За 30-60 минут разделите SEO-роботов и AI-агентов, пропишете Allow/Disallow и проверите robots.txt, WAF и HTML на сервере.
robots.txt - текстовый файл в корне сайта: он говорит роботам, какие папки обходить. Для сайта услуг это первый рычаг видимости в ChatGPT, Perplexity и Google AI Overviews. Ниже - чек-лист без паники «закрыть всех ИИ» и без слепого Allow всем.
Разделите SEO-роботов и AI-краулеры: разные User-agent, разные задачи

Боль: в одну кучу свалили Googlebot, YandexBot и «боты ChatGPT», а потом удивляются, что что-то перестало индексироваться. Решение - держать в голове две группы.
SEO-роботы - Googlebot и YandexBot. Они кладут страницы в поиск Google и Яндекса. Их трогать при настройке AI-правил не нужно: отдельные блоки User-agent: Googlebot и User-agent: YandexBot с Allow: /.
AI-краулеры - отдельные токены с собственными именами в robots.txt. У OpenAI это GPTBot (обучение моделей) и OAI-SearchBot (поиск в ChatGPT). У Anthropic - ClaudeBot, Claude-SearchBot и Claude-User. У Perplexity - PerplexityBot (индекс поиска) и Perplexity-User (запросы пользователей). У Google - Google-Extended (обучение Gemini), это не отдельный HTTP-заголовок, а control token поверх обычного Googlebot.
| User-agent | Задача | Читает robots.txt |
|---|---|---|
| Googlebot / YandexBot | Классический поиск | Да |
| GPTBot | Training OpenAI | Да |
| OAI-SearchBot | ChatGPT search | Да |
| ClaudeBot / Claude-SearchBot | Training / search Anthropic | Да |
| PerplexityBot | Индекс Perplexity | Да |
| Perplexity-User | Запросы пользователей | Часто игнорирует |
| Google-Extended | Training Gemini | Да (не влияет на Search) |
Типичная ошибка: шаблон 2024 года без OAI-SearchBot. Актуальный список - ai.robots.txt на GitHub.
Выберите политику training vs search: без страха «убить цитирование»

Боль: «если запретить GPTBot, ChatGPT нас забудет». На практике OpenAI разделила training и search: GPTBot и OAI-SearchBot - независимые токены. Можно Disallow GPTBot (контент не идет в обучение) и Allow OAI-SearchBot (остаетесь в ChatGPT search). Это официально описано в документации OpenAI по ботам.
Для сайта услуг разумный сценарий: видимость в AI search без отдачи контента на training. В результате вы получите цитирование в ChatGPT и Perplexity и сможете держать training-ботов закрытыми.
| Бот | Типовая политика для B2B-услуг | Зачем |
|---|---|---|
| OAI-SearchBot, PerplexityBot, Claude-SearchBot | Allow: / | Цитирование в нейропоиске |
| GPTBot, ClaudeBot, Google-Extended | Disallow: / | Не отдавать контент на обучение моделей |
| Googlebot, YandexBot | Allow: / (без изменений) | SEO как раньше |
Итоговый вердикт: если цель - чтобы ChatGPT и Perplexity знали ваши услуги, но вы не хотите кормить training, закрывайте GPTBot и открывайте OAI-SearchBot. Это не взаимоисключающие настройки.
У Anthropic ClaudeBot, Claude-User и Claude-SearchBot читают robots.txt. ChatGPT-User у OpenAI может не применять файл - для search смотрите OAI-SearchBot.
Пропишите User-agent блоки и Sitemap: по одному боту, без запятых

Боль: один блок User-agent: GPTBot, ClaudeBot, PerplexityBot через запятую - часть краулеров его не поймет. Решение - отдельный блок на каждый токен. Закройте служебные пути, оставьте публичные лендинги открытыми.
- Скачайте текущий файл: curl -s https://YOUR_DOMAIN/robots.txt и выпишите все User-agent блоки.
- Добавьте SEO-роботов первыми: Googlebot и YandexBot с Allow: / - чтобы при правке AI-правил не задеть поиск.
- Пропишите AI-ботов по одному: для каждого - свой User-agent и Allow или Disallow.
- Закройте служебное для User-agent: *: Disallow: /wp-admin/, /wp-json/, /cart/, /my-account/, /cabinet/, /draft/.
- Добавьте Sitemap: Sitemap: https://YOUR_DOMAIN/sitemap.xml в конце файла.
- Выложите в корень: robots.txt только по адресу https://YOUR_DOMAIN/robots.txt, ответ HTTP 200.
Пример политики «видимость в AI search, без training» (замените домен). Рекомендуем скопировать блок целиком и править только домен в Sitemap:
Фрагмент robots.txt - training закрыт, search открыт:
User-agent: Googlebot
Allow: /User-agent: YandexBot
Allow: /User-agent: GPTBot
Disallow: /User-agent: OAI-SearchBot
Allow: /User-agent: ClaudeBot
Disallow: /User-agent: Claude-SearchBot
Allow: /User-agent: Claude-User
Allow: /User-agent: PerplexityBot
Allow: /User-agent: Google-Extended
Disallow: /User-agent: *
Disallow: /wp-admin/
Disallow: /wp-json/
Allow: /Sitemap: https://example.com/sitemap.xml
На WordPress часто ломается связка: Disallow: / для User-agent: *, потом точечный Allow только Googlebot - AI-боты не доходят до услуг. Не делайте так: лучше отдельный Allow для каждого search-бота. YandexBot держите отдельным блоком: при User-agent: Yandex правила * для Яндекса не действуют (справка Яндекса).
Не путайте robots.txt с llms.txt: Google Search читает только robots
Боль: подрядчик ставит llms.txt, а robots.txt с Disallow для всех AI-ботов оставляет как был. Решение - разделить задачи.
robots.txt - политика обхода: что краулеру можно скачивать. llms.txt - опциональный markdown-индекс из 10-20 приоритетных страниц для агентов. Google в AI optimization guide пишет: для Google Search и AI Overviews llms.txt не обязателен; достаточно базового SEO и crawlable контента. Google-Extended управляет training Gemini и не влияет на позиции в обычном поиске.
llms.txt для не-Google агентов - отдельно; гайд: как создать llms.txt. Советуем сначала настроить robots.txt - иначе боты не дойдут до страниц. Избегайте подмены: llms.txt не заменяет Disallow и Allow.
Проверьте curl, логи и WAF: robots.txt - только первый слой
Боль: robots.txt «правильный», а в access.log GPTBot и PerplexityBot получают 403. Часто ломается не файл, а Cloudflare Bot Fight Mode, CDN или WAF. Нужны три слоя проверки.
Схема доступа AI-ботов:
robots.txt (разрешение на обход) -> WAF/CDN (IP и bot score) -> HTML на сервере (SSR, не пустой div после JS)
AI real-time боты не рендерят JavaScript как браузер. Если текст услуги появляется только после React, в ответе будет пустая оболочка. Важно: проверьте «Просмотр кода страницы» - текст услуги должен быть в HTML. Решение - server-side rendering или статический HTML для money-страниц.
- curl robots.txt: curl -sI https://YOUR_DOMAIN/robots.txt - ждете HTTP 200.
- curl под ботом: curl -A «GPTBot» https://YOUR_DOMAIN/uslugi/ и curl -A «PerplexityBot» на 2-3 money-URL - в ответе видимый текст услуги в HTML.
- Яндекс Вебмастер: инструмент «Анализ robots.txt» - нет ли конфликтов с YandexBot.
- Логи за 14 дней: grep по GPTBot|ClaudeBot|PerplexityBot|OAI-SearchBot - коды 200, не 403.
- WAF whitelist: при 403 добавьте IP из gptbot.json и perplexitybot.json Perplexity.
- Подождите: OpenAI и Perplexity указывают около 24 часов на применение robots.txt после правки.
На Habr типовой кейс: robots разрешал, AI-боты с 403 из-за WAF. После whitelist IP Perplexity цитирования пошли с лагом около двух недель.
Как понять, что все сработало (итог): curl robots.txt - 200 OK; отдельный User-agent на каждый AI-бот; Googlebot и YandexBot без Disallow: /; /wp-admin/ закрыт, услуги открыты; в логах за 14 дней GPTBot и PerplexityBot - 200 на money-страницах; GPTBot Disallow + OAI-SearchBot Allow зафиксированы в таблице политики. Убедитесь, что Яндекс не закрыт вместе с AI-ботами - это главный критерий готовности.
Полный GEO-спринт: чек-лист GEO для ИИ-поиска. На calmopsai.com - разбор одного процесса за неделю.
Редакционная проверка: Елена Ковалева, эксперт по SEO/GEO.
Источники на дату: официальные docs OpenAI, Anthropic, Perplexity, Google Search Central и Яндекс Вебмастер (2026-08-02). Показы Wordstat в этом прогоне не верифицированы (AUTH_WARNING).
Частые вопросы
Блокировка GPTBot убивает цитирование в ChatGPT?
Нет, если открыт OAI-SearchBot. GPTBot отвечает за training, OAI-SearchBot - за поиск в ChatGPT. Настройки независимы: Disallow для GPTBot и Allow для OAI-SearchBot - официально допустимый сценарий. Обновление robots.txt у OpenAI занимает около суток.
Нужен ли llms.txt, если robots.txt уже настроен?
Для Google Search и AI Overviews - нет, Google llms.txt не использует для ранжирования. robots.txt для Googlebot - главный рычаг. llms.txt опционален для других агентов как короткий навигатор по 10-20 URL, но не заменяет crawl policy.
Как не закрыть Яндекс вместе с AI-ботами?
Добавьте отдельный блок User-agent: YandexBot с Allow: /. Если в файле есть User-agent: Yandex, правила из User-agent: * для роботов Яндекса не применяются. Не ставьте Disallow: / в общем блоке, рассчитывая «потом разрешим только поисковикам».
PerplexityBot ходит, а Perplexity-User - нет. Это нормально?
Да. PerplexityBot индексирует сайт для поиска и читает robots.txt. Perplexity-User часто игнорирует файл - это описано в официальной документации Perplexity. Для индексации важен PerplexityBot плюс отсутствие 403 на WAF.
Закрытие Google-Extended уберет сайт из Google Search?
Нет. Google-Extended - control token для training и grounding Gemini. На обычную индексацию Googlebot и позиции в поиске он не влияет. Для AI Overviews Google смотрит crawlable и indexed контент через Googlebot.
Сколько ждать после правки robots.txt?
OpenAI и Perplexity указывают около 24 часов на применение изменений. Реальное появление цитирований в нейропоиске может занять 1-2 недели после того, как логи покажут стабильные 200 на money-страницах. Проверяйте access.log, а не только дату правки файла.
Где взять актуальный список AI user-agent?
Первоисточник - официальные docs OpenAI, Anthropic, Perplexity и Google. Для сверки: ai.robots.txt и ai-crawlers-reference. Раз в квартал проверяйте переименования ботов.
