Почему вопрос «разрешить или запретить» неверно поставлен для AI-краулеров?
Полезный вопрос — что каждый краулер делает с вашим контентом. Одни AI-краулеры собирают материалы, которые могут использоваться для обучения моделей. Другие загружают страницы, чтобы ассистент мог искать, читать и цитировать их, когда пользователь задаёт вопрос. Если относиться к ним как к одной категории, возникает компромисс, которого на самом деле можно избежать.
Для B2B-команды издержки чрезмерной блокировки обычно выше, чем издержки разрешения поискового доступа. Если ваши страницы продукта, сравнения и документация невидимы для answer-движков, покупатели, которые просят ассистентов подобрать список поставщиков, никогда не увидят ваш бренд. Задача — решать для каждого краулера отдельно, с какой целью вы согласны на его доступ.
Рабочая схема состоит из трёх уровней: доступ для обучения, доступ для поиска и цитирования и запросы, инициированные пользователем. Сформулируйте одно решение на каждом уровне, а затем пропишите его в robots.txt. Пересматривайте решения, когда поставщики обновляют документацию, поскольку названия краулеров и их поведение могут меняться.
Что такое GPTBot, OAI-SearchBot и ChatGPT-User и какие из них стоит разрешить?
GPTBot — краулер OpenAI, связанный со сбором данных для обучения. OAI-SearchBot связан с поиском ChatGPT, то есть индексирует контент, который может появляться в ответах поиска. ChatGPT-User используется, когда человек просит ChatGPT открыть страницу во время диалога. У каждого из них своя цель и, согласно документации OpenAI по краулерам, управляются они по-разному.
Типичное решение для B2B-брендов: запретить GPTBot, разрешить OAI-SearchBot и рассматривать ChatGPT-User как запрос, инициированный пользователем. Перед тем как окончательно прописывать правила, проверьте актуальную документацию OpenAI, поскольку детали того, как каждый агент обрабатывает robots.txt, — это то, что поставщики регулярно пересматривают.
| Краулер | Основная цель | Типичное решение для B2B-сайта | Что даёт блокировка |
|---|---|---|---|
| GPTBot | Сбор данных для обучения | Запретить, если вы отказываетесь от обучения | Останавливает сбор для обучения; сама по себе не убирает видимость в поиске |
| OAI-SearchBot | Индексация для поиска ChatGPT | Разрешить, если хотите цитирования | Блокировка может не пускать ваши страницы в результаты поиска ChatGPT |
| ChatGPT-User | Загрузка страницы по запросу пользователя | Обычно решение продуктового характера, а не связанное с обучением | Может не регулироваться robots.txt так же, как обычные краулеры |
Влияет ли блокировка Google-Extended на обычный поиск Google и AI Overviews?
Блокировка Google-Extended не удаляет ваши страницы из обычного поиска Google и, согласно документации Google, не влияет на включение в AI Overviews. Google-Extended — это токен в robots.txt, который определяет, может ли просканированный Google контент использоваться для обучения моделей Gemini и для некоторых сценариев заземления ответов. Это не отдельный краулер, который загружает ваши страницы.
Риск возникает, когда Google-Extended путают с Googlebot. Если вы запретите Googlebot, ваши страницы выпадут из поиска и из AI-функций, которые опираются на поиск. Запрет для Google-Extended лишь сигнализирует, что ваш контент не следует использовать для обучения Gemini и связанных с ним сценариев.
Прежде чем что-либо менять, явно проверьте правила для Googlebot. Широкий Disallow для всех user-agent, скопированный из старого шаблона, — самая частая причина, по которой сайт исчезает из Google, когда команда хотела лишь отказаться от обучения AI.
Как написать правила robots.txt, которые разрешают цитирование, но отключают обучение?
Создайте отдельную группу User-agent для каждого AI-краулера, который хотите контролировать, а группы для Googlebot и Bingbot оставьте для обычного поиска. Правила сопоставляются по группам, поэтому Disallow в группе GPTBot не влияет на OAI-SearchBot. Держите файл в корне каждого хоста, так как правила robots.txt не распространяются на поддомены.
Приведённые ниже правила — стартовый шаблон для команды, которая отказывается от обучения, но хочет попадать в цитирование. Подстройте их под свою позицию по вопросам обучения и не копируйте без проверки, какие разделы вы действительно хотите защитить.
- User-agent: GPTBot / Disallow: /
- User-agent: Google-Extended / Disallow: /
- User-agent: OAI-SearchBot / Allow: /
- User-agent: PerplexityBot / Allow: /
- User-agent: Googlebot / Allow: /
- User-agent: * / Disallow: /account/ and /staging/
- Проверьте текущий robots.txt и отметьте все широкие правила для user-agent со звёздочкой, так как они также действуют на AI-краулеры.
- Добавьте группу для GPTBot с Disallow: /, если вы отказываетесь от обучения OpenAI.
- Добавьте группу для Google-Extended с Disallow: /, если вы отказываетесь от обучения Gemini. Оставьте Googlebot без ограничений.
- Добавьте группу для OAI-SearchBot и PerplexityBot с Allow: /, чтобы их доступ к поиску был задан явно.
- Закройте служебные разделы, такие как личные кабинеты, staging-папки и внутренние результаты поиска, правилами Disallow для всех агентов.
- Проверьте файл в инструментах для веб-мастеров и в тестировщике robots.txt, затем опубликуйте и перепроверяйте после каждого релиза сайта.
Какие AI-краулеры соблюдают robots.txt, а какие могут его игнорировать?
Крупные AI-компании, которые публикуют документацию по своим краулерам, как правило, заявляют, что их объявленные краулеры соблюдают robots.txt. Такие заявления служат отправной точкой, но это именно обещания, а не гарантии, поэтому формулировки каждого вендора стоит проверять в его собственной документации.
Robots.txt носит рекомендательный характер. Он работает потому, что добросовестные краулеры сами решают его читать. Некоторые запросы, инициированные пользователем, и некоторые обращения через сторонние инструменты могут не следовать тем же правилам. В сторонних отчётах также утверждалось, что некоторые ответные поисковые системы загружали контент, используя user agent, который не совпадал с их заявленными названиями. Относитесь к любой строке user agent как к утверждению, пока не проверили её самостоятельно.
Если нужно реально ограничить доступ, одного robots.txt недостаточно. Для закрытого контента используйте авторизацию, для агрессивного трафика — ограничение частоты запросов или web application firewall, и честно признайте внутри команды, что опубликованное правило — это сигнал, а не замок.
Как проверить, что запрос PerplexityBot или GPTBot действительно настоящий?
Проверка означает, что запрос пришёл с IP-адреса, принадлежащего заявленному оператору. Строку user agent легко подделать, поэтому сама по себе она ничего не доказывает. Крупные операторы, которые используют выделенные краулеры, публикуют списки IP-диапазонов, а Google описывает, как проверить Googlebot с помощью обратного DNS-запроса с последующим прямым.
Такую проверку несложно выполнить из командной строки или инструмента для анализа логов. Сверьте IP-адреса в ваших логах с опубликованным оператором списком и считайте неподтверждённым любой запрос, который называет себя известным краулером, но приходит из-за пределов этих диапазонов. Фиксируйте дату, когда вы загрузили каждый список, потому что диапазоны со временем меняются.
- Выгрузите из серверных логов запросы, в user agent которых есть GPTBot, OAI-SearchBot, PerplexityBot, Perplexity-User или Googlebot.
- Соберите уникальные исходные IP-адреса для каждого заявленного имени.
- Для каждого оператора, который публикует диапазоны, проверьте, входит ли IP в опубликованные диапазоны.
- Для Googlebot выполните обратный DNS-запрос по IP и убедитесь, что имя хоста принадлежит Google, затем выполните прямой DNS-запрос и убедитесь, что он возвращает тот же IP.
- Пометьте каждый источник как подтверждённый, неподтверждённый или без опубликованного списка, и доверяйте данным о сканированиях только от подтверждённых источников.
- Повторяйте проверку ежемесячно, поскольку новые IP-адреса и новые user agent появляются со временем.
Как подтвердить по серверным логам, что AI-краулеры доходят до ключевых B2B-страниц?
Серверные логи показывают, какие запросы отправляли краулеры, когда и какой код статуса вернул ваш сервер. Для B2B-сайта отфильтруйте эти запросы до страниц, которые приносят воронку продаж, например страниц продукта, тарифов, интеграций, безопасности и сравнений, и проверьте, доходят ли до них AI-краулеры. Если краулер ни разу не запросил ключевую страницу, он не сможет использовать её для цитирования, какой бы ни была ваша настройка robots.txt.
Смотрите на три вещи: какие пользовательские агенты AI встречаются, какие пути URL они запрашивают и возвращают ли эти запросы статус 200. Частые ответы 403, 404 или 5xx для подтверждённых AI-краулеров указывают на проблемы с доступом, например на правило файрвола или сломанный шаблон, а не на решение, принятое в robots.txt.
- Выгрузите сырые логи доступа хотя бы за репрезентативный период и убедитесь в часовом поясе.
- Отфильтруйте пользовательские агенты AI и отделите подтверждённые запросы от неподтверждённых по описанному выше методу.
- Посчитайте запросы по путям URL, сгруппировав их по типу страницы: продукт, статья, документация, юридические документы.
- Проверьте коды статуса, которые получает каждый подтверждённый краулер, и устраните любой шаблон 4xx или 5xx.
- Сравните запрошенные пути с страницами, которые вы хотите видеть в цитатах, и соотнесите пробелы с перелинковкой и файлом sitemap.
- Фиксируйте результаты, чтобы сравнивать их после каждого изменения robots.txt или структуры сайта.
Где в этом помогает Rixe
Ручной анализ логов полезен для первичного аудита, но он не показывает, как ответные системы описывают ваш бренд по вопросам, которые задают покупатели. Платформа AI-видимости, такая как Rixe, измеряет, как ассистенты упоминают и цитируют бренд по набору промптов, что позволяет проверить, превращается ли доступ краулеров в видимость.