StriveLab
Strony internetowe
Usługi
RealizacjeO mnieBlogPorozmawiajmy
PL
EN

Astro

Ultraszybkie projekty, łączące lekkość ze skalowalnością.

Next.js

Elastyczne i wydajne narzędzia dla biznesu, które dotrzymają kroku Twojemu rozwojowi.

React

Połączenie intuicyjności z wydajnością, które zapewnia bezproblemową skalowalność kodu.

SEO & Performance

Audyt techniczny i optymalizacja pod kątem SEO i GEO.

Automatyzacja AI

Bezpieczne automatyzacje procesów i agenci AI w n8n, Make i Claude.

QA & Automation

Testy automatyczne komponentów i E2E w Cypress.

Doradztwo produktowe

Połączenie perspektywy produktu, developera i marketingu w jednym miejscu

StriveLab
Strony internetowe
Usługi
RealizacjeO mnieBlogPorozmawiajmy
PL
EN

Astro

Ultraszybkie projekty, łączące lekkość ze skalowalnością.

Next.js

Elastyczne i wydajne narzędzia dla biznesu, które dotrzymają kroku Twojemu rozwojowi.

React

Połączenie intuicyjności z wydajnością, które zapewnia bezproblemową skalowalność kodu.

SEO & Performance

Audyt techniczny i optymalizacja pod kątem SEO i GEO.

Automatyzacja AI

Bezpieczne automatyzacje procesów i agenci AI w n8n, Make i Claude.

QA & Automation

Testy automatyczne komponentów i E2E w Cypress.

Doradztwo produktowe

Połączenie perspektywy produktu, developera i marketingu w jednym miejscu

Astro

Ultraszybkie projekty, łączące lekkość ze skalowalnością.

Next.js

Elastyczne i wydajne narzędzia dla biznesu, które dotrzymają kroku Twojemu rozwojowi.

React

Połączenie intuicyjności z wydajnością, które zapewnia bezproblemową skalowalność kodu.

SEO & Performance

Audyt techniczny i optymalizacja pod kątem SEO i GEO.

Automatyzacja AI

Bezpieczne automatyzacje procesów i agenci AI w n8n, Make i Claude.

QA & Automation

Testy automatyczne komponentów i E2E w Cypress.

Doradztwo produktowe

Połączenie perspektywy produktu, developera i marketingu w jednym miejscu

RealizacjeO mnieBlog
Porozmawiajmy
PL
EN

Nowoczesne strony internetowe dla firm, które myślą odważnie.

Przewiń do góry

Nazwa

StriveLab Maciej Sala

NIP

6772218995

REGON

524008527

E-mail

contact@strivelab.pl

Usługi główne
  • Tworzenie stron internetowych
  • Strony internetowe Next.js
  • Strony internetowe Astro
  • Strony internetowe React
Inne usługi
  • Usługi
  • SEO & Performance Sprint
  • QA & Stabilizacja
  • Konsultacje Product / Delivery
  • Automatyzacja Procesów AI
  • Aplikacje webowe Next.js
  • Współpraca ciągła
Strony
  • O mnie
  • Usługi
  • Realizacje
  • Blog

© 2026 StriveLab.pl

Polityka prywatności
Next.jsSEOAI

Techniczne SEO dla agentów AI — robots.txt, GPTBot, ClaudeBot i dostępność danych dla RAG

Jak sterować dostępem agentów AI do strony? GPTBot, ClaudeBot, PerplexityBot, Google-Extended w robots.txt, rozróżnienie training/search/user-fetch i czysty HTML dla systemów RAG.

OpublikujLinkedInFacebookWyślij
Autor
Maciej Sala
Opublikowano
30 maja 2026 10:00
Czytanie
7 min czytania
Aktualizacja
31 maja 2026 08:00

Przez dwadzieścia lat techniczne SEO oznaczało jedno: ułatwić życie Googlebotowi. W 2026 roku po Twojej stronie chodzi cała menażeria botów AI — GPTBot, ClaudeBot, PerplexityBot, Google-Extended i kilkanaście innych — a każdy ma inny cel: trenowanie modelu, indeksację pod wyszukiwanie AI albo pobranie strony na żądanie użytkownika. To zmienia techniczne SEO w grę o dwóch stawkach naraz: kontrolę nad tym, kto i po co sięga po Twoją treść, oraz dostępność tej treści dla systemów, które realnie kierują do Ciebie ruch i cytowania.

Artykuł w skrócie

  • Boty AI nie są jednolite — osobno trenują model (GPTBot, Google-Extended), osobno indeksują pod AI search (OAI-SearchBot, Claude-SearchBot), osobno pobierają na żądanie (ChatGPT-User, Claude-User).
  • Hurtowa blokada zwykle szkodzi — badania z końca 2025 wskazują na ~23% spadek ruchu przy blokadzie crawlerów AI, przy braku spadku cytowań.
  • Google-Extended można blokować bezpiecznie — kontroluje tylko trenowanie Gemini; ranking w Search zależy od Googlebota, który jest osobnym botem.
  • robots.txt to deklaracja, nie zapora — część botów go ignoruje; realne wymuszenie wymaga egzekwowania na poziomie sieci (WAF, Cloudflare).
  • Dostępność dla RAG = treść w źródłowym HTML — SSR/SSG i Server Components w Next.js, a nie renderowanie po stronie klienta.
  • W Next.js robots.txt generujesz przez app/robots.ts — reguły per userAgent, osobne dla botów AI, bez utrzymywania pliku statycznego.

Klasyczne techniczne SEO — sitemapy, kanonikale, czysty HTML renderowany po stronie serwera (SSR/SSG) zawiera treść w źródle dokumentu od razu. W przeciwieństwie do czystego SPA, gdzie HTML jest pustą powłoką, a treść dorysowuje JavaScript w przeglądarce. — nadal obowiązuje, ale doszła nowa warstwa decyzji: który z botów AI ma prawo czytać Twoją treść i w jakim celu. To nie jest pytanie czysto techniczne, lecz biznesowe, ponieważ część tych botów kieruje do Ciebie ruch i cytowania, a część jedynie pobiera treść do treningu — nie mamy wtedy z tego nic. Nie wrzucajmy więc wszystkich do tego samego worka.

Menażeria botów AI — kto puka do Twojej strony

Najczęstszy błąd to traktowanie „AI" jako jednej kategorii botów, podczas gdy w rzeczywistości na Twoją stronę trafiają boty o trzech różnych celach — i to rozróżnienie jest najważniejsze, by podjąć sensowną decyzję.

Pierwsza kategoria to boty trenujące model: pobierają treść, by uczyć na niej modele, i nic za to nie dają w zamian. Należą tu GPTBot (OpenAI), Google-Extended (Gemini) i ClaudeBot (Anthropic). Kategoria druga to boty indeksujące pod AI search — budują indeks pod funkcję wyszukiwania, która może Cię cytować z linkiem i kierować do Ciebie realny ruch: OAI-SearchBot, Claude-SearchBot, PerplexityBot. Trzecia to boty pobierające na żądanie: odwiedzają stronę, bo użytkownik poprosił asystenta o jej sprawdzenie — praktycznie odwiedziny w Twoim imieniu: ChatGPT-User, Claude-User.

Anthropic jest tu wzorcowym przykładem — rozdzielił swoją aktywność na trzy osobne user-agenty (ClaudeBot, Claude-User, Claude-SearchBot) właśnie po to, byś mógł podejmować decyzje per cel. Blokowanie „Anthropic" w całości oznaczałoby odcięcie się także od cytowań i odwiedzin na żądanie — czyli od ruchu.

Czy w ogóle warto blokować?

Odpowiem od razu, że hurtowa blokada zwykle Ci szkodzi. Fundamentem tego wniosku są badania opublikowane pod koniec 2025 roku przez naukowców z Rutgers Business School i The Wharton School pokazały, że wydawcy blokujący crawlery AI przez robots.txt odnotowali spadek ruchu o około 23% miesięcznie — w tym także ruchu czysto ludzkiego — przy czym blokada nie obniżała niezawodnie cytowań przez systemy AI. O ile możemy do badań naukowych i ich jakości podchodzić w różny sposób — są lepsze i gorsze — to te powinny nam dać jakiś punkt zaczepienia w dyskusji.

Uwaga

Blokowanie botów AI to nie jest „ochrona za darmo", ponieważ częściej tracisz widoczność i ruch, niż realnie chronisz treść — bo modele i tak znają Twój materiał z innych źródeł, a Ty znikasz z odpowiedzi, które mogłyby kierować do Ciebie użytkowników.

Sensowne podejście jest selektywne: rozważ blokadę botów czysto trenujących (jeśli masz powód, by nie zasilać treningu — np. treść premium), a zostaw otwarte boty wyszukujące i odwiedzające na żądanie, ponieważ to własnie one kierują do Ciebie ruch i cytowania. Najczystszy bezpieczny ruch to zablokowanie Google-Extended, które kontroluje wyłącznie trenowanie Gemini i — co kluczowe — nie wpływa na ranking w Google Search, ponieważ za niego odpowiada osobny Googlebot.

robots.txt w Next.js — reguły per bot

W App Routerze robots.txt generujesz dynamicznie przez plik app/robots.ts — konwencja Next.js App Router. Eksportujesz funkcję zwracającą obiekt konfiguracji, a Next.js generuje z niego /robots.txt podczas buildu, bez ręcznego utrzymywania pliku statycznego., definiując osobne reguły dla różnych user-agentów:

Code
// app/robots.ts
import type { MetadataRoute } from 'next'
 
export default function robots(): MetadataRoute.Robots {
  return {
    rules: [
      // Klasyczne wyszukiwarki i boty AI-search — pełny dostęp
      {
        userAgent: '*',
        allow: '/',
        disallow: '/api/',
      },
      // Boty trenujące — przykład selektywnej blokady
      {
        userAgent: ['GPTBot', 'Google-Extended', 'ClaudeBot'],
        disallow: '/',
      },
    ],
    sitemap: 'https://strivelab.pl/sitemap.xml',
  }
}

W tym przykładzie wyszukiwarki i boty AI-search (OAI-SearchBot, PerplexityBot, Claude-SearchBot — łapane przez *) mają pełny dostęp, a boty czysto trenujące są zablokowane. To jeden z wielu możliwych kompromisów — równie dobrze możesz zostawić wszystko otwarte, jeśli zależy Ci wyłącznie na maksymalnej widoczności. Ważne, że decyzja jest świadoma i odnosi się do danej kategorii bota.

robots.txt to deklaracja, nie zapora

Trzeba to powiedzieć wprost, ponieważ łatwo o złudne poczucie kontroli: robots.txt egzekwuje tylko ten, kto chce go respektować. Innymi słowy to taka umowa dżentelmeńska, "dobrze wychowane" boty (GPTBot, Googlebot) jej przestrzegają... albo i nie o czym piszę poniżej.

W sierpniu 2025 roku Cloudflare opublikowało raport pokazujący, że Perplexity korzystał z niedeklarowanych crawlerów rotujących user-agenty i adresy IP, by omijać dyrektywy no-crawl. To pokazuje granicę robots.txt: jeśli ktoś naprawdę chce pobrać Twoją treść, po prostu zignoruje zasady i plik tekstowy go nie powstrzyma.

Top tip

Jeśli blokada musi być twarda — np. treść płatna albo rażące nadużycia — egzekwuj ją na poziomie sieci, a nie w robots.txt. Reguły WAF, blokady po ASN czy weryfikacja botów w Cloudflare działają niezależnie od dobrej woli crawlera. Plik robots.txt zostaw do komunikowania intencji "dobrze wychowanym" botom, a realne wymuszenie przenieś warstwę niżej.

Dostępność danych dla agentów i RAG

Druga stawka technicznego SEO dla AI to nie blokowanie, ale upewnienie się, że boty, które chcesz wpuścić, w ogóle widzą Twoją treść. Tutaj wraca jak bumerang fundamentalny problem renderowania.

Wiele RAG (Retrieval-Augmented Generation) — technika, w której system AI najpierw pobiera fragmenty treści ze źródeł (Twojej strony), a potem generuje odpowiedź opartą na tym kontekście. Jakość pobrania zależy od tego, czy treść jest dostępna w źródłowym HTML. i botów pobierających stronę na żądanie nie wykonuje pełnego renderowania JavaScriptu albo robi to nie tak jak trzeba. Jeśli kluczowa treść pojawia się dopiero po wykonaniu JS — jak w czystym SPA — agent może zobaczyć pustą powłokę zamiast odpowiedzi. To ta sama bolączka, która latami szkodziła SEO aplikacji klienckich, a teraz dotyczy też silników AI.

Rozwiązanie leży po stronie architektury: treść powinna renderować się na serwerze — w Next.js przez Server Components, SSR albo SSG — tak by istotny tekst był już w źródłowym HTML, zanim bot w ogóle dotknie JavaScriptu. Semantyczny HTML robi resztę: czytelna hierarchia nagłówków, sensowne <article> i <main>, właściwe listy — agent parsuje strukturę, nie wygląd. Trzecia zasada jest prosta i trudna do przeoczenia: nigdy nie chowaj kluczowej treści za interakcją - jest to stara zasada jeszcze z początków SEO. To, co pojawia się dopiero po kliknięciu albo przy lazy-loadzie, bywa dla bota niewidoczne.

To domyka obraz: techniczne SEO dla AI to z jednej strony kontrola dostępu (kogo wpuszczam i po co), a z drugiej dostępność treści (czy wpuszczony bot w ogóle ją zobaczy). Pierwsze robisz w robots.txt i na poziomie sieci, a drugie — w architekturze renderowania.

Jak to poukładać w praktyce

Sensowna kolejność wdrożenia dla typowej strony w Next.js zaczyna się od otwartego dostępu — domyślnie wpuszczasz wszystko i blokujesz tylko jeśli jest na to konkretny powód. Jeśli już blokujesz to boty trenujące (GPTBot, Google-Extended), a nie wyszukujące i odwiedzające na żądanie, ponieważ właśnie te drugie kierują do Ciebie użytkowników. robots.txt generujesz przez app/robots.ts, gdzie reguły per userAgent są wersjonowane w repo, a nie ręcznie edytowane. Jednocześnie upewniasz się, że treść żyje w źródłowym HTML — SSR/SSG dla wszystkiego, co ma być widoczne dla agentów i systemów RAG. Twardą blokadę, jeśli naprawdę musisz ją wprowadzić, przenosisz do sieci: WAF lub Cloudflare.

Werdykt Labu

Techniczne SEO dla agentów AI jest związane z dwoma kluczowymi rzeczami - kontrolą dostępu i dostępnością treści. Po pierwsze — boty AI są zróżnicowane: osobno trenują model, osobno indeksują pod wyszukiwanie i osobno pobierają stronę na żądanie. Decyzje podejmuj indywidualnie do danej kategorii botów. Hurtowa blokada zwykle szkodzi na co wskazują dane z końca 2025 wskazują na ~23% spadek ruchu bez niezawodnego spadku cytowań. Bezpieczny wyjątek to Google-Extended, które kontroluje tylko trenowanie Gemini i nie rusza rankingu w Search.

Po drugie — robots.txt to plik deklaratywny, a nie narzędzie blokady — jeśli musisz jej użyć, to rób to na poziomie sieci, a energię włóż raczej w to, by wpuszczone boty w ogóle widziały treść. Innymi słowy treść w źródłowym HTML przez SSR/SSG w Next.js, semantyczna struktura i nic kluczowego schowanego za JavaScriptem. Jeśli chcesz świadomie poukładać dostęp agentów AI do swojej strony — tak, by była cytowana tam, gdzie to korzystne, a chroniona tam, gdzie trzeba — pomogę zaprojektować tę strategię albo zobacz, jak realizuję projekty w Next.js. Warto to spiąć z optymalizacją GEO/AEO i generowaniem sitemap oraz robots.txt w App Routerze.

  • Menażeria botów AI — kto puka do Twojej strony1 min
  • Czy w ogóle warto blokować?1 min
  • robots.txt w Next.js — reguły per bot1 min
  • robots.txt to deklaracja, nie zapora1 min
  • Dostępność danych dla agentów i RAG2 min
  • Jak to poukładać w praktyce1 min
  • Werdykt Labu1 min

Często zadawane pytania

ŹródłaZweryfikowano: 30 maja 2026

Dokumentacja botów AI, raport Cloudflare i badania nad wpływem blokady crawlerów zweryfikowane podczas redakcji artykułu.

  • OpenAI — GPTBot i boty OpenAI - Anthropic — Does Anthropic crawl the web? (ClaudeBot)
  • Google — Google-Extended i kontrola treningu
  • Next.js — robots.ts
Maciej Sala

O autorze

Maciej Sala

Maciej Sala — Product Manager i Frontend Developer z bogatym doświadczeniem w marketingu internetowym oraz SEO. Na co dzień pracuje z Reactem, Next.js i TypeScriptem, a ostatnio także z Astro i narzędziami do automatyzacji procesów AI. Sprawnie łączy perspektywę produktową z praktycznym podejściem do kodu. Przez kilka lat był związany z branżą gier wideo jako project manager i game designer. Absolwent historii na Uniwersytecie Jagiellońskim oraz studiów podyplomowych z marketingu internetowego na AGH w Krakowie. Po godzinach trenuje na siłowni, maluje figurki i rozwija własne projekty side-projecty.

Moje artykułyWięcej o mnie

Pomagam przekładać takie tematy na konkretne wdrożenia w frontendzie, SEO, analityce i procesie produktowym.

Skontaktuj się ze mną

Biblioteka wiedzy

Czytaj dalej

Zobacz więcej wpisów
GEO — Generative Engine Optimization, czyli jak optymalizować treści pod AI
GEO — Generative Engine Optimization, czyli jak optymalizować treści pod AI

Czym jest GEO i jak zwiększyć szansę, że Twoje treści będą cytowane przez ChatGPT, Perplexity i Google AI Overviews? Praktyczny przewodnik dla developerów: treść, architektura, boty, schema, pomiar i realne ograniczenia.

Maciej Sala

Maciej Sala

Founder Strivelab

26 marca 2026
Plik llms.txt: jak wdrożyć i sformatować go w Next.js i Astro w 2026
Plik llms.txt: jak wdrożyć i sformatować go w Next.js i Astro w 2026

Kompletny przewodnik po standardzie llms.txt — dokumencie referencyjnym dla modeli AI. Czym różni się od robots.txt, jak go poprawnie sformatować i jak wygenerować go automatycznie w Next.js i Astro.

Maciej Sala

Maciej Sala

Founder Strivelab

28 maja 2026
Next.js Sitemap i robots.txt — automatyczna generacja z App Routera
Next.js Sitemap i robots.txt — automatyczna generacja z App Routera

Jak generować sitemap.xml i robots.txt w Next.js App Router? Natywne API konwencji plików vs next-sitemap — dynamiczne sitemaps, lastmod, changefreq i priorytety.

Maciej Sala

Maciej Sala

Founder Strivelab

10 kwietnia 2026
Poprzedni wpisWordPress, Astro czy Next.js? Matryca decyzyjna, zanim ruszysz z migracjąZanim zaczniesz migrację, musisz wiedzieć dokąd. Matryca pięciu zmiennych (rozmiar serwisu, wydajność, e-commerce, model edycji treści, częstotliwość zmian) pokazuje, czy Twój następny stack to Astro, Next.js, czy nadal WordPress — zanim wydasz złotówkę na przepisywanie strony.
Maciej Sala

Maciej Sala

Founder Strivelab

29 maja 2026
Następny wpisAudyt SEO to nie lista zadań — dlaczego zalecenia techniczne muszą zamieniać się w PR-yWiększość audytów SEO kończy się jako PDF, którego nikt nie wdraża. Pokazuję, dlaczego techniczna optymalizacja działa dopiero, gdy zalecenia zamieniają się w pull requesty, i jak zorganizować ten proces.
Maciej Sala

Maciej Sala

Founder Strivelab

30 maja 2026