---
title: "Robots.txt w 2026 roku: jak skonfigurować plik pod crawlery AI (GPTBot, ClaudeBot, PerplexityBot)"
slug: "robots-txt-crawlery-ai-2026"
date: 2026-04-28
lastUpdated: 2026-10-26
description: "Dowiedz się, jak wdrożyć selective blocking w robots.txt zgodnie z RFC 9309. Blokuj boty trenujące LLM-y i wpuszczaj crawlery wyszukiwarek AI, chroniąc content i serwer."
author: "Jakub Krysmalski"
canonical: "https://krysmalski.pl/blog/robots-txt-crawlery-ai-2026"
tags:
  - "AI"
  - "SEO"
  - "Webdev"
---

Całkowite zablokowanie crawlerów odcina Twoją domenę od ruchu z AI Search, a brak jakichkolwiek reguł oznacza darmowe oddanie bazy wiedzy na pożarcie modelom LLM. W 2026 roku jedyną opłacalną taktyką jest *selective blocking*. Polega na twardym odcięciu botów treningowych (takich jak GPTBot czy ClaudeBot) przy jednoczesnym wpuszczeniu botów wyszukiwawczych (OAI-SearchBot, PerplexityBot czy Claude-SearchBot). Dzięki temu chronisz własność intelektualną, obniżasz obciążenie serwera nawet o 60% i zabezpieczasz swoją widoczność w silnikach AI Overviews oraz w cytowaniach [AEO](/blog/aeo-kontra-seo-jak-zyskac-widocznosc-w-wyszukiwarkach-i-wynikach-ai).

## Czym różnią się boty treningowe AI od agentów wyszukiwawczych?

Najczęstszy błąd techniczny, jaki widzę w audytach, polega na wrzucaniu każdego bota od OpenAI czy Anthropic do jednego worka. Te narzędzia realizują dwa zupełnie różne zadania biznesowe:

1. **Boty treningowe** (np. GPTBot, ClaudeBot) pobierają terabajty danych, żeby zasilić bazę wiedzy przyszłych modeli LLM. Nie dają Ci w zamian linka, nie generują ruchu i nie podpisują źródła.
1. **Boty wyszukiwawcze** (np. OAI-SearchBot, Claude-SearchBot, PerplexityBot) działają jak klasyczne wyszukiwarki internetowe. Przeszukują sieć w czasie rzeczywistym, by zacytować Twoją stronę w odpowiedzi AI Search i odesłać użytkownika bezpośrednio do Ciebie.

| Nazwa bota | Typ bota | Cel działania | Rekomendacja |
| :--- | :--- | :--- | :--- |
| GPTBot | Treningowy | Uczenie przyszłych modeli OpenAI | Zablokować |
| ClaudeBot | Treningowy | Uczenie modeli Anthropic | Zablokować |
| Google-Extended | Treningowy / Token kontrolny | Uczenie modeli Google (Gemini) oraz grounding w Vertex AI | Zablokować |
| OAI-SearchBot | Wyszukiwawczy | Indeksowanie do OpenAI Search | Dopuścić |
| PerplexityBot | Wyszukiwawczy | Tworzenie odpowiedzi i cytowań (AEO) | Dopuścić |
| Claude-SearchBot | Wyszukiwawczy | Real-time search dla Claude | Dopuścić |

Jeśli zablokujesz wszystko hurtem, znikniesz z odpowiedzi asystentów AI. Jeśli nie zablokujesz niczego, oddasz swój unikalny content korporacjom bez żadnego zysku biznesowego. Dokładną analizę logów pod kątem tych wizyt opisałem w poradniku o [AI crawlability](/blog/ai-crawlability-ruch-botow-optymalizacja-ai-search).

## Granice robots.txt: standard RFC 9309 a trening modeli

Wielu webmasterów żyje w przekonaniu, że dopisując własne dyrektywy, zmuszą systemy AI do uszanowania praw autorskich. Jak przypomniał Gary Illyes z Google w materiale omówionym przez Search Engine Journal, `robots.txt` jest protokołem preferencji dostępu (*access preference protocol*) zdefiniowanym w oficjalnym standardzie RFC 9309. Reguluje wyłącznie to, jakie adresy URL bot ma prawo pobrać z serwera, a nie to, co system zrobi z danymi po ich zindeksowaniu.

Oznacza to wprost: jeśli crawler pobierze Twoją treść, żaden robots.txt nie nakaże mu usunięcia jej ze zbioru treningowego. Wymyślanie własnych komend w stylu `No-AI-Training: true` nic nie da. Parsery Google i innych dostawców wspierają wyłącznie cztery dyrektywy: `User-agent`, `Allow`, `Disallow` oraz `Sitemap`. Nierozpoznane linie są po cichu ignorowane.

Wyjątkiem korporacyjnym jest token `Google-Extended`. Nie ma on własnego bota (Google pobiera dane standardowym Googlebotem), ale Google honoruje go na poziomie wewnętrznej platformy do blokowania treningu Gemini i groundingu w Vertex AI, bez wpływu na pozycję strony w Google Search. W Search Engine Journal czytamy również, że Gary Illyes wspólnie z Martinem Thomsonem z Mozilli przygotowali roboczy projekt IETF (Internet-Draft ważny do 2027 roku) wprowadzający dyrektywę `Content-Usage` (np. `train-ai=n`). Dopóki jednak ten standard nie wejdzie oficjalnie w życie, jedynym twardym mechanizmem pozostaje blokowanie dostępu na poziomie User-Agenta.

## Zasady składni RFC 9309: emoji i kodowanie URL-i

W drugim odcinku serii Google *The Non-Canonical Cabinet* Gary Illyes i Cherry Prommawin zwrócili uwagę na błędy składniowe, które często psują reguły w robots.txt:

- **Token User-Agent tylko z liter i myślników**: w nazwie bota nie możesz używać emoji ani znaków spoza alfabetu łacińskiego. Wielobajtowe znaki UTF-8 natychmiast psują definicję User-Agenta w parserach zgodnych z RFC 9309.
- **Percent-encoding dla polskich znaków i emoji w ścieżkach**: jeśli blokujesz URL zawierający polskie litery (np. `/zażółć/`) lub emoji, zapisz go w postaci zakodowanej procentowo (np. `%C5%BC`). Jak zauważył serwis Search Engine Roundtable, parser Google radzi sobie z surowym UTF-8, ale starsze boty i crawlery innych silników AI gubią się na niezakodowanych ścieżkach i ignorują regułę blokady.

Jeśli potrzebujesz fundamentów poprawnej struktury tego pliku, rzuć okiem na poradnik [co to jest plik robots.txt](/blog/co-to-jest-plik-robots-txt).

## Na czym polega selective blocking w pliku robots.txt?

Selective blocking to precyzyjne rozdzielenie uprawnień w pliku robots.txt na poziomie konkretnych User-Agentów. Zostawienie ogólnej reguły `User-agent: *` w 2026 roku to proszenie się o kłopoty. Agresywne roboty potrafią ignorować generyczne blokady i generować niepotrzebne koszty infrastruktury.

Wdrożenie selektywnej blokady minimalizuje tak zwany *Cost of Retrieval* (CoR). Twój serwer nie traci zasobów na obsługę zapytań od botów, które nigdy nie przyniosą konwersji ani odwiedzin. Zamiast tego całą moc obliczeniową kierujesz na crawlery wyszukiwawcze, które szybko pobierają świeże dane do cytowań w odpowiedziach generative AI.

## Gotowy kod robots.txt dla botów AI w 2026 roku

Oto gotowy zestaw reguł do wklejenia do Twojego pliku `robots.txt`. Szablon odcina roboty scrapujące treść do treningu modeli, a jednocześnie zostawia zielone światło dla crawlerów generujących wejścia na stronę:

```text
##### Zezwolenie dla botów AI Search (Generują ruch i cytowania)

User-agent: OAI-SearchBot
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: Claude-SearchBot
Allow: /

##### Standardowe wyszukiwarki

User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /

##### Blokada botów AI Training (Kradną dane bez cytowania)

User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: anthropic-ai
Disallow: /

User-agent: Amazonbot
Disallow: /

User-agent: FacebookBot
Disallow: /

User-agent: Applebot-Extended
Disallow: /

User-agent: Bytespider
Disallow: /
```

Ta konfiguracja pozwala odciąć niechciany ruch scraperów przy zachowaniu pełnej widoczności w silnikach generatywnych.

## Dlaczego sam robots.txt nie wystarczy i jak podpiąć WAF?

`robots.txt` to wyłącznie deklaratywny plik tekstowy. Działa na zasadzie dżentelmeńskiej umowy, którą tak zwane *rogue bots* nagminnie łamią. Prawdziwą barierę buduje się dopiero piętro wyżej - na poziomie WAF (Web Application Firewall), na przykład w Cloudflare.

Zabezpieczenie na brzegu sieci chroni Cię przed zjawiskiem IP spoofingu, kiedy nieautoryzowane skrypty scrapujące podszywają się pod oficjalne User-Agenty (np. pod Googlebota):

- **Włącz Bot Fight Mode** lub moduł Cloudflare Bot Management, aby automatycznie odfiltrowywać podejrzane żądania z farm serwerowych.
- **Skonfiguruj reguły WAF (Custom Rules)**, które natychmiast ucinają połączenie dla zapytań zawierających w nagłówku tokeny GPTBot czy ClaudeBot, zanim bot w ogóle dotknie Twojego hostingu.
- **Wymuś weryfikację Reverse DNS lookup** dla crawlerów deklarujących się jako Google czy OpenAI. Pozwala to potwierdzić, czy zapytanie faktycznie pochodzi z autoryzowanej puli adresów IP.

## Jak plik llms.txt współpracuje z robots.txt?

Oba standardy świetnie się uzupełniają. Podczas gdy `robots.txt` pełni funkcję bramkarza odrzucającego niechciane boty treningowe, standard Markdown dostarcza zatwierdzonym crawlerom wyszukiwawczym skondensowane, czyste informacje. Dokładną strukturę wdrożenia opisuję w poradniku o [pliku llms.txt](/blog/plik-llms-txt-praktyczny-poradnik-wdrozenia).

Plik `llms.txt` to dokument umieszczony w katalogu głównym serwera. Nie zawiera szumu w postaci kodu HTML, skryptów JS czy ciężkiego drzewa DOM. Kiedy wpuszczony przez WAF i robots.txt PerplexityBot trafia na Twoją domenę, może sięgnąć bezpośrednio po `llms.txt`. Zmniejsza to zapotrzebowanie na moc obliczeniową i ułatwia silnikowi wyciągnięcie dokładnych faktów do zacytowania w odpowiedzi.

## Które User-Agenty botów AI są już przestarzałe w 2026 roku?

Przejrzyj swój obecny plik i usuń zdezaktualizowane wpisy. Twórcy modeli uporządkowali nazewnictwo swoich crawlerów, a trzymanie starych tokenów zaśmieca plik i niepotrzebnie wydłuża czas parsowania:

- **Claude-Web** został całkowicie wycofany - w jego miejsce funkcjonują ClaudeBot (trening) oraz Claude-SearchBot (wyszukiwanie w czasie rzeczywistym).
- **anthropic-ai** oraz inne dawne tokeny badawcze zastąpiono dedykowanymi agentami dla konkretnych zastosowań.
- **Wczesne eksperymentalne roboty OpenAI** zostały zunifikowane w przejrzysty podział: GPTBot do zbierania danych na potrzeby modeli oraz OAI-SearchBot do indeksacji w wyszukiwarce.

## Jak wdrożyć selective blocking i przeprowadzić audyt serwera?

Przejrzyj logi serwera, sprawdź, które roboty generują puste zapytania i zaktualizuj plik `robots.txt` według powyższego schematu. Upewnij się, że nie stosujesz nieobsługiwanych dyrektyw i poprawnie kodujesz znaki specjalne zgodnie z RFC 9309. Następnie uzupełnij reguły w WAF, żeby realnie wymusić ograniczenia na brzegu sieci. W ten sposób zablokujesz niechciane scrapowanie Twoich materiałów i zachowasz pełną kontrolę nad widocznością w wyszukiwarkach AI.

## Źródła

- Search Engine Roundtable: [Google On robots.txt Rules For AI Crawlers, Emojis, International URLs & More](https://www.seroundtable.com/google-video-robots-txt-rules-42355.html)
- Search Engine Journal: [Google Explains The Limit Of Robots.txt For AI Content Use](https://www.searchenginejournal.com/google-illyes-robots-txt-crawling-ai-training/593957/)

## Często zadawane pytania (FAQ)

### Czy robots.txt może zabronić trenowania AI na danych, które bot już pobrał?

Nie. Zgodnie ze standardem RFC 9309 robots.txt kontroluje jedynie uprawnienia do pobierania adresów URL (crawling). Nie reguluje późniejszego przetwarzania ani trenowania modeli na pozyskanych wcześniej danych.

### Jak poprawnie blokować URL-e z polskimi znakami w robots.txt?

Ścieżki zawierające polskie znaki diakrytyczne lub emoji należy zapisać przy użyciu percent-encoding (np. %C5%BC zamiast ż). Google rozumie surowy UTF-8, ale inne crawlery AI mogą zignorować taką regułę.

### Jak zablokować ChatGPT, żeby nie czytał mojej strony do trenowania modeli?

Wystarczy dodać do pliku robots.txt dyrektywę User-agent: GPTBot z komendą Disallow: /. Pamiętaj, aby nie blokować agenta OAI-SearchBot, jeśli zależy Ci na obecności serwisu w wynikach wyszukiwania SearchGPT.

### Dlaczego sam robots.txt nie chroni w pełni przed botami AI?

Plik robots.txt stanowi jedynie dobrowolną dyrektywę, którą agresywne crawlery mogą świadomie ignorować. Skuteczna ochrona przed niechcianym scrapingiem i podszywaniem się pod inne boty (IP spoofing) wymaga dodatkowego zabezpieczenia na poziomie zapory WAF, np. w Cloudflare.

### Czym różni się Google-Extended od zwykłego crawlera?

Google-Extended to wyłącznie token kontrolny, a nie niezależny crawler sieciowy. Pozwala zablokować wykorzystanie treści do treningu modeli Gemini i groundingu w Vertex AI bez blokowania indeksowania w wyszukiwarce Google.

---

*Wpis pochodzi z serwisu [krysmalski.pl](https://krysmalski.pl/blog/robots-txt-crawlery-ai-2026)*
