robots txt boty ai

robots.txt i boty AI: co blokować, a co wpuszczać

Plik robots.txt w 2026 roku decyduje o czymś więcej niż o crawl budgecie: rozstrzyga, czy treść serwisu trafi do modeli językowych, do odpowiedzi ChatGPT, Perplexity i Gemini oraz do Google AI Overviews. Boty AI to dziś kilkanaście różnych agentów o różnym przeznaczeniu, a jedna zbiorcza reguła blokująca odcina zarówno trening modeli, jak i cytowania, które przynoszą ruch. Poniżej rozbieramy każdego bota z osobna i podajemy gotowe zestawy reguł dla trzech typów serwisów.

W skrócie

  • Boty AI dzielą się na trzy klasy: trenujące (GPTBot, ClaudeBot, Google-Extended), wyszukujące (OAI-SearchBot, PerplexityBot, Claude-SearchBot) i pobierające na żądanie użytkownika (ChatGPT-User, Claude-User, Perplexity-User).
  • Blokada botów wyszukujących usuwa serwis z cytowań w odpowiedziach AI; blokada botów trenujących nie ma wpływu na cytowania ani na pozycje w Google.
  • Google-Extended nie steruje Googlebotem: wpis Disallow dla Google-Extended nie wypisuje strony z AI Overviews.
  • Boty pobierające na żądanie (klasa user) często ignorują robots.txt, bo działają jak przeglądarka użytkownika; do ich kontroli potrzebny jest WAF lub reguły na CDN.
  • Weryfikacja reguł to analiza logów serwera i tester robots.txt w Google Search Console, nie sam podgląd pliku.

Kto dziś odwiedza stronę: mapa botów AI

Serwis o średnim ruchu odwiedza obecnie od 10 do 15 różnych agentów AI, a większość z nich pojawiła się po 2023 roku. Każdy dostawca modeli utrzymuje osobne user-agenty dla osobnych celów, więc nazwa bota mówi więcej o tym, co się stanie z treścią, niż nazwa firmy. Ogólne zasady działania robots.txt w ekosystemie AI omawiamy w frameworku SEO pod AI na 2026 rok, tutaj skupiamy się na samych regułach.

User-agent Dostawca Klasa Skutek blokady
GPTBot OpenAI trenujący treść nie trafia do zbiorów treningowych kolejnych modeli
OAI-SearchBot OpenAI wyszukujący serwis znika z wyników i cytowań ChatGPT Search
ChatGPT-User OpenAI na żądanie ChatGPT nie pobierze strony podczas rozmowy (jeśli bot respektuje regułę)
ClaudeBot Anthropic trenujący brak treści w treningu modeli Claude
Claude-SearchBot Anthropic wyszukujący brak cytowań w wyszukiwaniu Claude
Claude-User Anthropic na żądanie brak pobrań stron na prośbę użytkownika
Google-Extended Google trenujący brak treści w treningu Gemini; AI Overviews działają dalej
Googlebot Google wyszukujący i AI wypadnięcie z indeksu Google i z AI Overviews
PerplexityBot Perplexity wyszukujący brak cytowań w Perplexity
Perplexity-User Perplexity na żądanie pobrania na prośbę użytkownika (bot deklaruje ignorowanie robots.txt)
Applebot-Extended Apple trenujący brak treści w treningu Apple Intelligence; Applebot i Siri działają dalej
Bytespider ByteDance trenujący brak treści w modelach ByteDance; bot bywa oskarżany o ignorowanie reguł
CCBot Common Crawl trenujący (pośrednio) serwis znika z otwartego zbioru, z którego korzysta wiele mniejszych modeli

Lista zmienia się co kilka miesięcy. Aktualne nazwy agentów OpenAI utrzymuje w dokumentacji botów OpenAI, a Google w wykazie własnych crawlerów w Search Central. Wpis w robots.txt bez sprawdzenia bieżącej nazwy to najczęstsza przyczyna reguł, które nic nie robią.

Boty trenujące a boty pobierające na żywo

Różnica między klasami botów jest ważniejsza niż różnica między dostawcami. Bot trenujący pobiera stronę raz, na potrzeby zbioru danych, z którego model korzysta miesiące później i bez podania źródła. Bot wyszukujący buduje indeks, z którego asystent AI odpowiada na bieżąco i wskazuje adres strony jako źródło. Bot na żądanie pobiera konkretny adres w chwili, gdy użytkownik wkleja link albo zadaje pytanie wymagające świeżej treści.

Z punktu widzenia ruchu liczą się dwie ostatnie klasy: cytowanie generuje kliknięcia, a pobranie na żądanie oznacza, że konkretny człowiek chciał przeczytać tę stronę przez asystenta. Blokada bota trenującego niczego z tego nie zabiera.

Ważne zastrzeżenie dotyczy botów na żądanie: OpenAI oficjalnie przyznało, że ChatGPT-User może nie respektować robots.txt, bo działa w imieniu użytkownika, podobnie jak przeglądarka. Opisaliśmy to w tekście o stanowisku OpenAI wobec robots.txt i ChatGPT-User. Perplexity-User deklaruje to samo wprost. Reguła w pliku pozostaje więc sygnałem, a nie blokadą; twardą kontrolę dają dopiero reguły WAF, na przykład w Cloudflare.

Co tracisz, blokując dostęp

Zbiorcza blokada wszystkich botów AI kosztuje najwięcej serwisy, które dopiero budują autorytet, bo odcina je od jedynego kanału, w którym młoda domena może konkurować z dużymi wydawcami. W odpowiedziach generatywnych liczy się dopasowanie fragmentu do pytania, a nie wyłącznie profil linków. Utrata tego kanału ma cztery konkretne konsekwencje.

  1. Brak cytowań. Serwis nie pojawia się jako źródło w ChatGPT Search, Perplexity ani Claude. Konkurent, który wpuszcza boty wyszukujące, przejmuje te wzmianki.
  2. Brak ruchu z asystentów. Odsyłacze z odpowiedzi AI stanowią zwykle 1–3% sesji, ale ich współczynnik konwersji bywa wyższy niż z organicznego Google, bo użytkownik trafia po przefiltrowaniu przez model.
  3. Zniekształcony obraz marki w modelu. Model, który nie widzi serwisu, opisuje firmę na podstawie cudzych treści: katalogów, opinii, wpisów konkurencji.
  4. Utrata świeżości. Bez botów na żądanie asystent podaje użytkownikowi stary opis produktu albo nieaktualny cennik z zapamiętanej wersji.

Odwrotna sytuacja, czyli wpuszczanie wszystkiego, kosztuje przede wszystkim transfer i obciążenie serwera. Bytespider i niektóre boty trenujące potrafią wygenerować kilkadziesiąt tysięcy żądań dziennie na serwisie z rozbudowaną nawigacją fasetową. Wtedy blokada jest po prostu higieną, o czym więcej w tekście o tym, kiedy crawl budget faktycznie krzywdzi serwis.

Gotowe reguły dla wydawcy treści

Wydawca żyje z uwagi czytelnika, więc jego interes jest dwojaki: zablokować trening (treść nie ma zasilać cudzych modeli za darmo) i wpuścić boty wyszukujące oraz boty na żądanie, bo te przynoszą cytowania i ruch. Poniższy zestaw realizuje dokładnie to.

# Trening: blokada
User-agent: GPTBot
User-agent: ClaudeBot
User-agent: Google-Extended
User-agent: Applebot-Extended
User-agent: Bytespider
User-agent: CCBot
User-agent: Meta-ExternalAgent
Disallow: /

# Wyszukiwanie i pobrania na żądanie: dostęp
User-agent: OAI-SearchBot
User-agent: ChatGPT-User
User-agent: Claude-SearchBot
User-agent: Claude-User
User-agent: PerplexityBot
User-agent: Perplexity-User
Allow: /
Disallow: /wp-admin/
Disallow: /szukaj/

Sitemap: https://twojadomena.pl/sitemap_index.xml

Gotowe reguły dla sklepu

Sklep ma odwrotny interes niż wydawca: chce, żeby modele znały jego katalog, bo agentowe zakupy w ChatGPT i Perplexity opierają się na produktach, które model potrafi znaleźć i opisać. Blokowanie treningu ma tu sens tylko dla treści redakcyjnych, nie dla kart produktów. Więcej o tym, jak dane produktowe powinny wyglądać dla modeli, piszemy w przewodniku po danych strukturalnych pod AI.

# Wszystkie boty AI: katalog dostępny, filtry i koszyk zamknięte
User-agent: GPTBot
User-agent: OAI-SearchBot
User-agent: ChatGPT-User
User-agent: ClaudeBot
User-agent: Claude-SearchBot
User-agent: Claude-User
User-agent: PerplexityBot
User-agent: Perplexity-User
User-agent: Google-Extended
Allow: /produkt/
Allow: /kategoria/
Disallow: /koszyk/
Disallow: /zamowienie/
Disallow: /moje-konto/
Disallow: /*?orderby=
Disallow: /*?filter_
Disallow: /*&filter_

# Agresywne boty bez wartości dla sklepu
User-agent: Bytespider
User-agent: CCBot
Disallow: /

Kluczowy element to blokada parametrów filtrowania. Na sklepie z 5 000 produktów i 12 filtrami nawigacja fasetowa generuje setki tysięcy adresów, a bot AI, w odróżnieniu od Googlebota, nie ma dobrych heurystyk deduplikacji.

Gotowe reguły dla firmy usługowej

Firma usługowa (kancelaria, agencja, gabinet, biuro rachunkowe) nie ma czego chronić przed treningiem, a zyskuje najwięcej z bycia opisaną w modelu: gdy użytkownik pyta asystenta o polecanego specjalistę w mieście, model sięga po firmy, których strony zna. Rekomendacja to pełny dostęp z wyłączeniem stref technicznych.

User-agent: *
Allow: /
Disallow: /wp-admin/
Disallow: /wp-content/uploads/faktury/
Disallow: /panel-klienta/
Allow: /wp-admin/admin-ajax.php

Sitemap: https://twojadomena.pl/sitemap_index.xml

Jedyna świadoma decyzja dotyczy stron z danymi klientów albo cennikami pod NDA. Blokada w robots.txt nie jest zabezpieczeniem, bo plik jest publiczny; dane wrażliwe chroni logowanie, nie Disallow.

Jak zweryfikować, że reguły działają

Wdrożenie kończy się dopiero po potwierdzeniu w logach, bo trzy rzeczy psują się częściej niż sam plik: literówka w nazwie agenta, cache CDN serwujący starą wersję pliku i bot, który reguły ignoruje. Procedura weryfikacji zajmuje około godziny.

  1. Sprawdź składnię. Tester robots.txt w Google Search Console pokaże, czy Googlebot i Google-Extended widzą plik tak, jak zakładacie. Specyfikację składni Google opisuje w dokumentacji Search Central, w tym zasadę, że przy konflikcie wygrywa dłuższa, bardziej szczegółowa reguła.
  2. Pobierz plik jak bot. Polecenie curl -A "GPTBot" https://twojadomena.pl/robots.txt pokaże, czy CDN nie serwuje innej wersji dla różnych user-agentów.
  3. Zweryfikuj adresy IP. OpenAI, Anthropic i Perplexity publikują zakresy IP swoich botów. Żądania z nazwą GPTBot spoza tych zakresów to podszywanie się i powinny trafić do reguł WAF.
  4. Policz żądania po wdrożeniu. Po 7 dniach porównajcie liczbę żądań per user-agent z tygodniem przed zmianą. Bot zablokowany w robots.txt powinien pobierać wyłącznie sam plik robots.txt.
  5. Odczytaj wyjątki. Jeśli ChatGPT-User albo Perplexity-User nadal pobierają strony objęte Disallow, to działa zgodnie z ich deklaracją. Decyzja o twardej blokadzie należy wtedy do WAF.

Szczegółową metodę pracy z logami, łącznie z filtrami dla poszczególnych agentów, opisaliśmy w poradniku analiza logów pod boty AI: GPTBot i ClaudeBot. Bez tego etapu nie wiadomo, czy plik robots.txt cokolwiek zmienił.

Najczęstsze błędy

  • Jedna reguła User-agent: * z Disallow: / „dla AI”. Blokuje Googlebota i Bingbota, a więc cały ruch organiczny.
  • Blokada Google-Extended jako sposób na AI Overviews. Nie działa; AI Overviews korzystają z Googlebota. Jedyna droga to nosnippet albo max-snippet na poziomie strony.
  • Nieaktualne nazwy agentów. Reguła dla „ChatGPT” albo „OpenAI” nie pasuje do żadnego bota; nazwy muszą być dosłowne.
  • Brak Allow dla botów wyszukujących przy blokadzie treningu. Jeśli sekcja dla OAI-SearchBot nie istnieje, bot stosuje sekcję *, co często oznacza nieplanowaną blokadę.

FAQ: najczęstsze pytania

Czy blokada GPTBot obniży pozycje w Google?

Nie. GPTBot należy do OpenAI i nie ma żadnego związku z indeksem Google. Blokada dotyczy wyłącznie treningu modeli OpenAI. Pozycje w Google zależą od Googlebota, którego reguły dla GPTBot nie dotykają. Jedyny bot Google, który można bezpiecznie zablokować bez wpływu na wyszukiwarkę, to Google-Extended.

Czym różni się GPTBot od OAI-SearchBot?

GPTBot zbiera treść do treningu przyszłych modeli i nie generuje ruchu. OAI-SearchBot buduje indeks ChatGPT Search i to on decyduje, czy serwis pojawi się jako cytowane źródło w odpowiedziach z linkiem. Wydawca, który chce ruchu, ale nie chce zasilać treningu, blokuje pierwszego i wpuszcza drugiego. Oba mają osobne sekcje w robots.txt i osobne zakresy IP.

Czy da się wypisać stronę z AI Overviews przez robots.txt?

Nie przez robots.txt. AI Overviews korzystają z indeksu Googlebota, więc jedyna blokada w pliku oznaczałaby wypadnięcie z całego Google. Zamiast tego stosuje się dyrektywy na poziomie strony: nosnippet usuwa stronę z podsumowań, a max-snippet ogranicza długość cytowanego fragmentu. Google udostępnia też ustawienie w Search Console, które wypisuje serwis z AI Overviews bez utraty pozycji.

Co zrobić, gdy bot ignoruje robots.txt?

Najpierw potwierdzić w logach, że żądania pochodzą z oficjalnych zakresów IP dostawcy; wiele „botów AI” to skrypty podszywające się pod znane nazwy. Prawdziwe boty na żądanie (ChatGPT-User, Perplexity-User) deklarują, że mogą omijać plik. Twardą blokadę daje reguła w WAF albo na CDN, na przykład blokowanie po zakresie IP lub po user-agencie w Cloudflare, gdzie od 2025 roku dostępny jest gotowy przełącznik dla botów AI.

Jak często aktualizować listę botów?

Co kwartał, a po większych premierach modeli od razu. W ciągu 2025–2026 OpenAI, Anthropic i Perplexity rozdzieliły swoje boty na klasy, a Google dodało osobne fetchery dla Gemini Notebook. Reguła zapisana w 2024 roku pod jedną nazwą agenta dziś obejmuje ułamek ruchu tej firmy. Przegląd logów pod kątem nowych user-agentów z ostatnich 30 dni wystarcza, by wychwycić zmiany.

Co dalej

Po wdrożeniu reguł warto sprawdzić, jak modele widzą treść, którą wpuszczacie: dobrze ustawione dane strukturalne i czytelna struktura sekcji decydują o tym, czy pobrana strona zostanie zacytowana. Punktem wyjścia jest framework SEO pod AI, a kolejnym krokiem analiza logów, która pokaże, które boty faktycznie wróciły po zmianie.