Керування ШІ-краулерами в robots.txt: GPTBot, ClaudeBot та інші
Точні правила robots.txt для GPTBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot. Готові сніпети allow, block і вибіркові, плюс безкоштовний скан 0–100.

ШІ-краулери — це не один загальний рубильник. Це матриця дозволів. Великі оператори розділяють ботів на окремі завдання: один для пошуку й цитування, один для навчання моделей і один для завантаження за запитом користувача. Блокування одного імені зазвичай не перекриває весь доступ ШІ. Практичне питання не «якого бота заблокувати?», а «яку функцію я хочу дозволити?».
У цьому й увесь сенс. Можна лишатися видимим у ШІ-пошуку й водночас відмовитися від навчання. Можна пускати звичайні пошукові системи, але не пускати ваш контент у відкритий корпус Common Crawl. Можна не чіпати Google Search і все ж заборонити Google навчати Gemini на ваших сторінках. Якщо правильно працювати з іменами ботів, robots.txt стає інструментом керування, а не сокирою.
Ключові висновки
- ШІ-боти розділені за функціями. У OpenAI це
OAI-SearchBot(пошук),GPTBot(навчання) іChatGPT-User(запит користувача); у Anthropic —Claude-SearchBot,ClaudeBotіClaude-User; у Perplexity —PerplexityBotіPerplexity-User.Google-Extended— не краулер. Це токенrobots.txt, який керує навчанням і заземленням Gemini і ніяк не впливає на присутність у Google Search чи на ранжування.- Ви керуєте токеном
robots.txt(ім'я післяUser-agent:), а не повним HTTP-заголовком на кшталтGPTBot/1.3.robots.txtкерує обходом, а не індексацією. Щоб прибрати сторінку з видачі, використовуйтеnoindexі не закривайте її водночас уrobots.txt, інакше бот не побачить директиву.- Завантажувачі за запитом користувача (
Perplexity-User,ChatGPT-User) можуть ігноруватиrobots.txt. Після правки правил проскануйте домен 0–100, щоб побачити, що насправді може кожен ШІ-бот.
Які user-agent у ШІ-краулерів і хто ними керує?
Коли люди шукають «точні user-agents», зазвичай їм потрібен токен robots: канонічне ім'я, яке ви ставите після User-agent:. Повний HTTP-заголовок часто містить версію (GPTBot/1.3, OAI-SearchBot/1.3, CCBot/2.0), але в robots.txt ви зіставляєте токен, а не весь рядок. У Google-Extended HTTP-заголовка немає взагалі.
Ось карта десяти user-agent від п'яти операторів, які шукають найчастіше:
| User-agent (токен robots) | Оператор | Що робить | Що означає блокування |
|---|---|---|---|
OAI-SearchBot | OpenAI | Показує й посилається на ваші сторінки в пошуку ChatGPT | Ви випадаєте з відповідей пошуку ChatGPT |
GPTBot | OpenAI | Збирає контент, який може навчати базові моделі | Ви відмовляєтеся від навчання моделей OpenAI |
ChatGPT-User | OpenAI | Завантажує сторінку за запитом користувача | robots.txt може не застосовуватися |
ClaudeBot | Anthropic | Збирає публічний веб-контент для покращення моделей | Майбутні сторінки виключаються з навчальних наборів |
Claude-SearchBot | Anthropic | Покращує якість пошуку всередині Claude | Менше видимості в пошукових відповідях Claude |
Claude-User | Anthropic | Завантажує сторінку за запитом у Claude | Claude не підтягне вашу сторінку за запитом |
PerplexityBot | Perplexity | Показує й посилається на ваш сайт у пошуку Perplexity | Ви випадаєте з результатів Perplexity |
Perplexity-User | Perplexity | Завантаження за запитом користувача (зазвичай ігнорує robots.txt) | Часто не залежить від robots.txt |
Google-Extended | Токен: дозволити контент для навчання/заземлення Gemini | Відмова від навчання Gemini; на Search не впливає | |
CCBot | Common Crawl | Сканує для відкритого веб-архіву Common Crawl | Ви лишаєтеся поза відкритим датасетом |
Два оператори заслуговують пильнішого погляду. OpenAI прямо вказує, що GPTBot — навчальний краулер, OAI-SearchBot обслуговує пошук ChatGPT, а ChatGPT-User — це дія користувача, а не автоматичний обхід. Для таких ініційованих користувачем запитів OpenAI зазначає, що robots.txt може не застосовуватися (OpenAI). Anthropic повторює цей поділ. Їхні боти поважають robots.txt і навіть підтримують нестандартну директиву Crawl-delay (Anthropic). Perplexity повідомляє, що PerplexityBot призначений для пошуку і не використовується для збору контенту під базові ШІ-моделі, тоді як Perplexity-User — це завантажувач за запитом користувача, який зазвичай ігнорує robots.txt (Perplexity).
Google-Extended стоїть осібно. Google прямо заявляє, що це не окремий краулер і в нього немає власного user-agent у HTTP-запиті. Реальний обхід виконують наявні боти Google, а Google-Extended — лише токен, який керує тим, чи можна вже зібраний контент використовувати для навчання майбутніх моделей Gemini і для заземлення в Gemini Apps та Vertex AI (Google). CCBot, своєю чергою, належить Common Crawl — некомерційній організації, яка підтримує відкритий, загальнодоступний репозиторій веб-сканів (Common Crawl).
Які правила robots.txt дозволяють або блокують ШІ-краулерів?
Ставтеся до сніпетів нижче як до явних policy-заяв, а не як до мінімальної конфігурації. За замовчуванням обхід дозволено навіть без правил, але перелічити імена явно набагато простіше для аудиту, і машинні перевірки на кшталт aiSiteReady шукають точні правила для кожного бота. Файл має лежати в корені хоста (https://example.com/robots.txt), а не в підкаталозі.
Дозволити всі основні ШІ-боти
User-agent: GPTBot
Allow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Google-Extended
Allow: /
User-agent: CCBot
Allow: /
Заблокувати всі основні ШІ-боти
User-agent: GPTBot
Disallow: /
User-agent: OAI-SearchBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Claude-SearchBot
Disallow: /
User-agent: PerplexityBot
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: CCBot
Disallow: /
Це блокує лише перелічені токени. Це не глобальний блок User-agent: *, тому інші краулери не зачіпаються.
Дозволити ШІ-пошук, заборонити навчання
Це найсильніша й найреалістичніша політика: лишатися цитованим у пошуку ChatGPT, Claude і Perplexity, але тримати контент поза навчальними корпусами.
# Відмова від навчання + відкритого датасету
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: CCBot
Disallow: /
# Лишитися видимим у ШІ-пошуку
User-agent: OAI-SearchBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
Сповільнити замість блокування
Якщо ви хочете просто сповільнити Anthropic, а не блокувати, є проміжний варіант, бо Anthropic документує підтримку Crawl-delay (Anthropic):
User-agent: ClaudeBot
Crawl-delay: 1
Чому robots.txt не керує індексацією та запитами користувачів
Найчастіша помилка тут — плутати контроль обходу з контролем індексації. Google прямо пише, що robots.txt керує трафіком краулерів і не є механізмом, щоб прибрати сторінку з індексу. Заблокований URL усе одно може з'явитися у видачі, якщо на нього посилаються інші сайти (Google). RFC 9309, стандарт за robots.txt, теж не є механізмом авторизації доступу (RFC 9309). Коротко кажучи, robots.txt — це policy-файл для добросовісних краулерів, а не замок на приватний контент.
Якщо ваша мета — «хай боти обходять, але не індексують і не показують сніпет», вам потрібна директива рівня сторінки або відповіді. Використовуйте мета-тег noindex для HTML-сторінок або заголовок X-Robots-Tag для PDF, зображень та інших не-HTML файлів:
<meta name="robots" content="noindex">
X-Robots-Tag: noindex
Є одна пастка, про яку варто повторити: щоб noindex спрацював, краулер повинен мати змогу його побачити. Якщо той самий URL закрито в robots.txt, бот ніколи не завантажить сторінку й не прочитає директиву, тому сторінка все одно може зринути. Google також пише, що noindex усередині robots.txt не підтримується (Google). Та сама логіка стосується ШІ-пошуку. OpenAI радить видавцям використовувати noindex, якщо вони не хочуть, щоб зринало навіть посилання, і краулер повинен мати змогу його прочитати (OpenAI).
Далі йдуть завантажувачі за запитом користувача. Claude-User вкладається в модель Anthropic, що поважає robots.txt, але OpenAI попереджає, що robots.txt може не застосовуватися до ChatGPT-User, а Perplexity пише, що Perplexity-User зазвичай його ігнорує, бо завантаження ініціювала людина. Якщо ваша справжня мета — зупинити живі завантаження за запитами користувачів, самого robots.txt не вистачить. Зазвичай знадобиться WAF, авторизація або контроль на мережевому рівні.
Чим ви насправді жертвуєте, блокуючи ботів?
Блокування навчального бота дає вам контроль, не обов'язково коштуючи видимості, якщо ви тримаєте функції окремо. OpenAI розділяє GPTBot і OAI-SearchBot, Anthropic розділяє ClaudeBot і Claude-SearchBot, а Perplexity ясно каже, що PerplexityBot живить пошук, а не навчання. Тому редакційна позиція «не навчайте на наших нових матеріалах, але продовжуйте нас цитувати» відображається у вибіркові правила, а не в тотальний блок.
Найбільш контрінтуїтивний випадок — Google. Оскільки Google-Extended не впливає на присутність у Search чи на ранжування, а AI Overviews і AI Mode спираються на сторінки, які вже проіндексовані й придатні для сніпета, блокування Google-Extended не має викидати вас з AI Overviews. Цією поверхнею насправді керує звичайна гігієна Search: індексованість, придатність для сніпета й відсутність noindex (Google).
CCBot — це знову інший важіль. Його блокування насправді не про те, чи процитує вас чат-бот сьогодні. Воно про те, чи потрапить ваш сайт у відкритий корпус Common Crawl і його подальше повторне використання. Common Crawl публікує простий opt-out (User-agent: CCBot + Disallow: /) і документує, що це відкритий датасет, тому вважайте це рішенням про відкриті дані, а не про конкретного асистента (Common Crawl).
Як перевірити свої правила?
Три механічні факти збивають людей з пантелику. По-перше, robots.txt діє лише на свій точний хост, протокол і порт. Кожному субдомену потрібен власний файл, і Anthropic прямо просить робити opt-out для кожного субдомену. По-друге, зміни не миттєві: OpenAI і Perplexity вказують затримку до приблизно 24 годин, а Google кешує robots.txt близько доби. По-третє, рядок User-agent легко підробити, тому Google і Common Crawl радять перевіряти справжність запитів через зворотний DNS і опубліковані діапазони IP, а не довіряти заголовку (Common Crawl).
Перевіряти все це вручну — по кожному субдомену й на кожному релізі — не масштабується. Це й робить aiSiteReady: він завантажує ваш домен так, як це зробив би агент, читає вашу політику доступу robots.txt для ШІ-краулерів і перевіряє точні правила для GPTBot, ClaudeBot і PerplexityBot. Це напряму стосується категорії керування ботами — однієї з приблизно 15–20 перевірок з виявності, доступності контенту, керування ботами, протоколів і комерції, що об'єднуються в оцінку Agent Readiness Score від 0 до 100. Точні перевірки й ваги описано на сторінці методології. Для ширшої картини подивіться, що означає готовність до ШІ-агентів. Про шар контенту за успішним скануванням — як зробити JavaScript-сайт читабельним для ШІ і що таке llms.txt.
Після правки robots.txt запустіть безкоштовне сканування: ви побачите, які саме правила для ШІ-ботів сканер знайшов для GPTBot, ClaudeBot і PerplexityBot, де сайт усе ще частково закритий для ШІ-пошуку, і отримаєте задачу для розробника замість абстрактних порад, англійською, українською чи російською. Оцінка — це діагностика готовності, а не гарантія ранжування.
У IMozz 20 років у розробці ПЗ, а останній рік він будує продукти за допомогою LLM. Він розвиває aiSiteReady, сканер лише для читання, який перевіряє, чи може ШІ-агент прочитати сайт. Сканер серверно рендерить власний контент як робочий приклад.