Перейти до основного вмісту
БЛОГ

Керування ШІ-краулерами в robots.txt: GPTBot, ClaudeBot та інші

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

Автор: IMozzОновлено 2026-06-05
Control AI crawlers in robots.txt — aiSiteReady

ШІ-краулери — це не один загальний рубильник. Це матриця дозволів. Великі оператори розділяють ботів на окремі завдання: один для пошуку й цитування, один для навчання моделей і один для завантаження за запитом користувача. Блокування одного імені зазвичай не перекриває весь доступ ШІ. Практичне питання не «якого бота заблокувати?», а «яку функцію я хочу дозволити?».

У цьому й увесь сенс. Можна лишатися видимим у ШІ-пошуку й водночас відмовитися від навчання. Можна пускати звичайні пошукові системи, але не пускати ваш контент у відкритий корпус 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-SearchBotOpenAIПоказує й посилається на ваші сторінки в пошуку ChatGPTВи випадаєте з відповідей пошуку ChatGPT
GPTBotOpenAIЗбирає контент, який може навчати базові моделіВи відмовляєтеся від навчання моделей OpenAI
ChatGPT-UserOpenAIЗавантажує сторінку за запитом користувачаrobots.txt може не застосовуватися
ClaudeBotAnthropicЗбирає публічний веб-контент для покращення моделейМайбутні сторінки виключаються з навчальних наборів
Claude-SearchBotAnthropicПокращує якість пошуку всередині ClaudeМенше видимості в пошукових відповідях Claude
Claude-UserAnthropicЗавантажує сторінку за запитом у ClaudeClaude не підтягне вашу сторінку за запитом
PerplexityBotPerplexityПоказує й посилається на ваш сайт у пошуку PerplexityВи випадаєте з результатів Perplexity
Perplexity-UserPerplexityЗавантаження за запитом користувача (зазвичай ігнорує robots.txt)Часто не залежить від robots.txt
Google-ExtendedGoogleТокен: дозволити контент для навчання/заземлення GeminiВідмова від навчання Gemini; на Search не впливає
CCBotCommon 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).

robots.txt — це контроль обходу; noindex — контроль індексації. Сторінка, закрита в robots.txt, ніколи не завантажується, тому її тег noindex не видно, і URL усе одно може з'явитися у видачі

Далі йдуть завантажувачі за запитом користувача. 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, сканер лише для читання, який перевіряє, чи може ШІ-агент прочитати сайт. Сканер серверно рендерить власний контент як робочий приклад.

Часті запитання

Як заблокувати GPTBot у robots.txt?
Додайте в корені хоста (https://example.com/robots.txt) групу з User-agent: GPTBot і Disallow: / на наступному рядку. Це сигнал OpenAI не використовувати ваш контент для навчання базових моделей. Це не прибирає вас із пошуку ChatGPT — за нього відповідає окремий бот, OAI-SearchBot. Якщо хочете лишатися в пошуку, але відмовитися від навчання, заблокуйте GPTBot і дозвольте OAI-SearchBot. Зміни можуть враховуватися приблизно за 24 години.
Чи шкодить блокування Google-Extended моєму ранжуванню в Google?
Ні. Документація Google зазначає, що Google-Extended не впливає на присутність сайту в Google Search і не є сигналом ранжування. Google-Extended — це токен robots.txt, а не окремий краулер. Він керує лише тим, чи можна вже зібраний контент використовувати для навчання Gemini і для заземлення в Gemini Apps та Vertex AI. Ваша присутність у Google Search і AI Overviews залежить від звичайної індексованості та придатності для сніпета, а не від Google-Extended.
Яка різниця між GPTBot і OAI-SearchBot?
Це незалежні налаштування. OAI-SearchBot показує й посилається на ваші сторінки в пошуку ChatGPT; дозвольте його, якщо хочете, щоб вас знаходили й цитували там. GPTBot збирає контент, який може використовуватися для навчання базових моделей OpenAI; блокуйте його, якщо хочете відмовитися від навчання. ChatGPT-User — третій агент, який завантажує сторінку, коли людина явно просить ChatGPT її переглянути. Блокування одного не змінює інших.
Чи може robots.txt заборонити ШІ показувати мою сторінку?
Не надійно. robots.txt керує обходом, а не індексацією. Google пише, що це не механізм, щоб прибрати сторінку з видачі, і заблокований URL усе одно може з'явитися, якщо на нього посилаються інші сайти. Щоб прибрати саму сторінку, використовуйте мета-тег noindex або заголовок X-Robots-Tag і переконайтеся, що сторінка не закрита водночас у robots.txt, інакше краулер не побачить noindex. Завантажувачі за запитом користувача, такі як Perplexity-User і ChatGPT-User, можуть зовсім ігнорувати robots.txt, тому живим завантаженням часто потрібен шар WAF або авторизації.