Yapay zekâ botları ve robots.txt: GPTBot, ClaudeBot ve diğerleri nasıl yönetilir?

Yapay zekâ botları, yapay zekâ şirketlerinin model eğitimi, kendi arama dizinleri ya da bir kullanıcının o anki sorusu için web sayfalarını getiren tarayıcılarıdır; robots.txt'te her birine kendi adıyla (GPTBot, ClaudeBot, OAI-SearchBot gibi) ayrı karar verilir. Şirketlerin belgelerine göre eğitim botunu engellemek o şirketin aramasındaki görünürlüğü etkilemez, arama botunu engellemek etkiler.

Güncellendi: Okuma süresi: 11 dkHazırlayan: md9

Kısaca

  • Üç tür bot var: eğitim (GPTBot, ClaudeBot), arama (OAI-SearchBot, Claude-SearchBot, PerplexityBot) ve kullanıcı tetiklemeli (ChatGPT-User, Claude-User, Perplexity-User). Sonuncuların bir kısmı robots.txt'e uymayabilir.
  • RFC 9309'a göre kendi adıyla bir grup bulan bot yalnızca o grubu uygular; * grubundaki Disallow satırlarını devralmaz.
  • Google-Extended'ı engellemek içeriği AI Overviews'tan çıkarmaz. Google'ın arama içindeki yapay zekâ özellikleri Googlebot ve snippet ayarlarıyla yönetilir.
  • robots.txt bir ricadır, zorlama CDN'de yapılır. Cloudflare'de 15 Eylül 2026'dan sonra eklenen alan adlarında eğitim ve ajan botları reklam gösteren sayfalarda varsayılan olarak engelli; eğitimi engelleyen ayar Googlebot gibi karma botları da etkiliyor.
Bu sayfada
  1. Yapay zekâ botları hangi türlere ayrılır?
  2. robots.txt eşleşmesi nasıl işler? RFC 9309'un kuralları
  3. Görünürlük isteyen site için örnek robots.txt
  4. GPTBot ve ClaudeBot nasıl engellenir? Eğitimi kapatıp aramada kalmak
  5. Cloudflare kullanıyorsanız: AI bot ayarları ve varsayılanlar
  6. Hangi botun geldiğini nasıl ölçersiniz?
  7. Hangi amaç için hangi ayar?

robots.txt'teki her grup bir tarayıcıya hitap eder ve yapay zekâ şirketleri tek bir tarayıcıyla gelmiyor. OpenAI'nin, Anthropic'in, Perplexity'nin ve Google'ın farklı işler için farklı adları (token) var. Bu yüzden "yapay zekâyı engellemek" tek satırlık bir karar değil: hangi işe izin verdiğinizi seçmeniz gerekiyor. Konunun görünürlük tarafı GEO sayfamızda.

Yapay zekâ botları hangi türlere ayrılır?

Şirketlerin belgelerinde üç iş öne çıkıyor. Eğitim botları içeriği model eğitimi için toplar. Arama botları, yanıt motorunun cevaplarında kaynak gösterebileceği bir dizin kurar. Kullanıcı tetiklemeli getiriciler (fetcher), bir kullanıcı soru sorduğunda ya da bağlantı verdiğinde sayfayı o an açar. Bunlara ek olarak hiç tarama yapmayan, yalnızca robots.txt'te anılan kontrol token'ları var.

TokenŞirketİşrobots.txtNot
GPTBotOpenAIEğitimUyarEngellemek, içeriğin temel modellerin eğitiminde kullanılmaması gerektiğini bildirir.
OAI-SearchBotOpenAIAramaUyarEngellenen site ChatGPT arama cevaplarında gösterilmez, yalnızca gezinme bağlantısı olarak çıkabilir. Değişiklik yaklaşık 24 saatte yansır.
ChatGPT-UserOpenAIKullanıcıUygulanmayabilirChatGPT ve Custom GPT'lerdeki kullanıcı eylemleri.
ClaudeBotAnthropicEğitimUyar; Crawl-delay desteklerEngellemek, sitenin gelecekteki içeriğinin eğitim verisinden çıkarılmasını ister.
Claude-SearchBotAnthropicAramaUyarEngellenirse içerik arama için dizinlenmez.
Claude-UserAnthropicKullanıcıUyarEngellenirse kullanıcının sorusu için sayfa getirilmez.
PerplexityBotPerplexityAramaUyarTemel model eğitimi için kullanılmaz.
Perplexity-UserPerplexityKullanıcıGenellikle yok sayarKullanıcı sorusu için anlık getirme.
GooglebotGoogleArama; AI Overviews ve AI Mode dahilUyarEngellemek Google Arama'daki taramayı da durdurur.
Google-ExtendedGoogleKontrol token'ıYalnızca tokenGemini eğitimi ile Gemini Apps ve Vertex AI'daki grounding kullanımı. Google Arama'ya ve sıralamaya etkisi yok.
ApplebotAppleArama (Spotlight, Siri, Safari); veri Apple modellerinin eğitiminde de kullanılabilirUyarDosyada Applebot anılmayıp Googlebot anılıyorsa Googlebot kurallarını izler.
Applebot-ExtendedAppleKontrol token'ıYalnızca tokenTarama yapmaz. Engellemek arama sonuçlarından çıkarmaz, eğitim kullanımını belirler.
AmazonbotAmazonÜrün iyileştirme; Amazon modellerinin eğitimi olabilirUyar; Crawl-delay desteklemezSayfadaki noarchive meta etiketini "eğitimde kullanma" olarak yorumlar.
meta-externalagentMetaEğitim ve ürün iyileştirmeUyarMeta'nın kullanıcı adına getirme yapan meta-externalfetcher botu robots.txt'i atlayabilir.
CCBotCommon CrawlAçık web arşiviUyarArşivi başkaları da model eğitiminde kullanabilir.
DuckAssistBotDuckDuckGoArama (kaynaklı yapay zekâ cevapları)UyarEğitimde kullanılmaz; engelleme yaklaşık 72 saatte yansır.
YandexAdditionalYandexKontrol token'ıYalnızca tokenYandex'te dizinli sayfaların içeriğinin Yandex'in yapay zekâ cevaplarında görünmesini yönetir.
BytespiderByteDanceÜçüncü taraf raporlarına göre eğitimBelirsizBirincil bir ByteDance belgesi bulamadık; robots.txt'e uymadığına dair iddialar var.

Tablodaki üç kontrol token'ı (Google-Extended, Applebot-Extended, YandexAdditional) ayrı bir tarayıcı değildir. İçeriği zaten Googlebot, Applebot ya da YandexBot getirir; token yalnızca o içeriğin nerede kullanılabileceğini söyler. Türkçe bir site için Yandex satırı küçümsenecek bir ayrıntı değil: StatCounter'a göre Ağustos 2026'da Türkiye'deki aramaların yaklaşık %16'sı Yandex'te yapıldı.

Kullanıcı tetiklemeli getiricilerde robots.txt'in gücü sınırlı. OpenAI, ChatGPT-User için robots.txt kurallarının uygulanmayabileceğini; Perplexity, Perplexity-User'ın kuralları genellikle yok saydığını; Google da kullanıcı adına çalışan getiricilerinin robots.txt'i genel olarak dikkate almadığını yazıyor. Anthropic ise Claude-User'ın robots.txt'e uyduğunu belirtiyor.

robots.txt eşleşmesi nasıl işler? RFC 9309'un kuralları

robots.txt, Eylül 2022'de RFC 9309 ile standartlaştı. Standardın en çok gözden kaçan kuralı şu: tarayıcı önce kendi token'ıyla eşleşen grubu arar (büyük-küçük harf farkı gözetmeden). Bulursa yalnızca onu uygular; aynı token için birden fazla grup varsa kurallarını birleştirir. * grubuna ancak kendisiyle eşleşen hiçbir grup yoksa bakar.

User-agent: *
Disallow: /yonetim/
Disallow: /taslak/

User-agent: GPTBot
Allow: /

Bu dosyada GPTBot /yonetim/ ve /taslak/ altına da girebilir, çünkü kendi grubunu buldu ve o grupta yasak yok. Niyet "GPTBot'a izin ver" idi; sonuç "GPTBot'a her yere izin ver" oldu. Standardın diğer kuralları:

  • Bir adrese uyan birden fazla kural varsa en uzun, yani en çok karakter içeren kural kazanır. Allow ve Disallow eşitse Allow uygulanır.
  • Hiçbir kural eşleşmezse adres serbesttir. /robots.txt'in kendisi her zaman serbesttir.
  • Dosya 4xx döndürürse (ör. 404) tarayıcı her şeye erişebilir. 5xx ya da ağ hatası dönerse tarayıcı her şeyi yasaklanmış saymak zorundadır. robots.txt'e sunucu hatası veren bir CDN ya da yanlış bir yönlendirme kuralı, siteyi bütün tarayıcılara bir anda kapatabilir.
  • Tarayıcı dosyayı önbelleğe alabilir ama 24 saatten eski bir kopyayı kullanmamalıdır.
  • Ayrıştırma sınırı en az 500 KiB'tır.
  • Crawl-delay standartta yoktur. Anthropic desteklediğini, Amazon desteklemediğini yazıyor.
  • robots.txt bir güvenlik önlemi değildir; standart, dosyada listelenen yolların herkese görünür hâle geldiğini ayrıca hatırlatır.

Bu sitenin robots.txt dosyası bu kural yüzünden tekrarlarla dolu. Genel grubun yanında Googlebot'tan meta-externalagent'a on dokuz tarayıcı için ayrı grup var ve her biri aynı iki yasağı taşıyor:

User-agent: *
Allow: /
Disallow: /src/
Disallow: /build.py

User-agent: GPTBot
Allow: /
Disallow: /src/
Disallow: /build.py

User-agent: OAI-SearchBot
Allow: /
Disallow: /src/
Disallow: /build.py

[…]

Sitemap: https://www.md9.net/sitemap.xml

/src/ sayfaların kaynak dosyalarını, /build.py onları üreten betiği tutuyor; ikisi de okur için değil. En uzun eşleşme kuralı sayesinde Allow: / siteyi açıyor, daha uzun olan Disallow: /src/ o klasörü kapatıyor. Adlandırılmış gruplar burada teknik olarak gereksiz: hepsi * grubuyla aynı şeyi söylüyor ve listede olmayan bir bot zaten * grubuna düşüyor. İzni açıkça okunur kılıyorlar; bedeli, her yeni yasağın yirmi kez yazılması. Dosyayı elle değil, build.py içindeki robots_txt() işlevi tek bir bot listesinden üretiyor; bir grubun unutulması bu yüzden mümkün değil.

Görünürlük isteyen site için örnek robots.txt

Arama motorlarında ve yapay zekâ yanıtlarında kaynak olmak isteyen bir site için en sağlam dosya en kısa olanıdır:

User-agent: *
Allow: /
Disallow: /yonetim/

Sitemap: https://www.example.com/sitemap.xml

Adlandırılmış grup olmadığı için düşülecek bir tuzak da yok. Botları tek tek anmak istiyorsanız her gruba * grubundaki yasakların tamamını kopyalayın ve dosyayı elle değil bir listeden üretin.

Cloudflare'in önerdiği Content-Signal satırı, içeriğin nasıl kullanılabileceğine dair tercihi makinece okunur biçimde ekler: Content-Signal: search=yes, ai-input=yes, ai-train=no. Tanımlarda ince bir ayrıntı var. search arama dizinini, bağlantıyı ve kısa alıntıyı kapsar ama yapay zekâ ile üretilmiş arama cevaplarını kapsamaz; onlar ai-input altındadır. Cloudflare bu sinyallerin bir tercih olduğunu, teknik bir önlem olmadığını açıkça yazıyor. Search Console bu satır için zaman zaman "Syntax not understood" uyarısı gösterebiliyor; Cloudflare'e göre taramaya bir etkisi gözlenmedi. Bu sitenin dosyasında şu an Content-Signal satırı yok.

GPTBot ve ClaudeBot nasıl engellenir? Eğitimi kapatıp aramada kalmak

En sık istenen ara çözüm bu: içerik model eğitiminde kullanılmasın ama site yanıt motorlarında kaynak olarak görünmeye devam etsin. Eğitim botlarını ve kontrol token'larını tek bir grupta kapatıp gerisini açık bırakmak yeter; RFC 9309 bir gruba birden fazla User-agent satırı yazılmasına izin verir.

User-agent: GPTBot
User-agent: ClaudeBot
User-agent: Google-Extended
User-agent: Applebot-Extended
User-agent: meta-externalagent
User-agent: CCBot
Disallow: /

User-agent: *
Allow: /
Disallow: /yonetim/

Sitemap: https://www.example.com/sitemap.xml
  • İlk grup tüm siteyi kapattığı için /yonetim/ yasağını oraya tekrar yazmaya gerek yok.
  • Engelleme geriye dönük çalışmaz. Anthropic'in ifadesiyle ClaudeBot'u kısıtlamak, sitenin gelecekteki içeriğinin eğitim verisinden çıkarılmasını ister; daha önce toplanmış veriye robots.txt dokunmaz.
  • Applebot ve Amazonbot karma botlardır. Applebot'u engellemek Siri ve Spotlight'taki görünürlüğü de keser; eğitim için doğru satır Applebot-Extended'dır. Amazon, eğitim kullanımını sayfa düzeyindeki noarchive etiketiyle ayırmanıza izin veriyor.
  • Google-Extended'ı engellemek Google Arama'daki yerinizi, AI Overviews dahil, değiştirmez.

Yapay zekâya tamamen kapatmak

Arama ve kullanıcı botlarını da kapatmak için aynı gruba şu satırlar eklenir: OAI-SearchBot, ChatGPT-User, Claude-SearchBot, Claude-User, PerplexityBot, Perplexity-User, DuckAssistBot, YandexAdditional. Bedeli açık: site ChatGPT aramasında, Claude'un ve Perplexity'nin cevaplarında kaynak olarak görünmez ya da görünme ihtimali düşer. Üstelik robots.txt'e uymayabilen kullanıcı tetiklemeli getiricileri gerçekten durdurmak CDN ya da WAF kuralı ister. Google AI Overviews'u robots.txt ile ayrıca kapatmanın bir yolu yok; Google bunun için nosnippet, data-nosnippet, max-snippet ya da noindex gösteriyor ve bunlar normal arama sonucundaki snippet'i de etkiliyor.

Cloudflare kullanıyorsanız: AI bot ayarları ve varsayılanlar

Cloudflare kendi belgesinde de robots.txt'e uymanın gönüllü olduğunu yazıyor. Zorlama CDN katmanında yapılır ve oradaki karar robots.txt'ten bağımsızdır. Site Cloudflare arkasındaysa (bu site de öyle) robots.txt'i okumak tek başına yetmez; panel ayarlarına da bakmak gerekir. Temmuz 2026'dan beri ayarlar şöyle:

AyarNe yaparVarsayılan ve dikkat edilecek nokta
Security Settings → Configure AI bot policiesSearch, Agent ve Training davranışlarının her biri için: tüm sayfalarda engelle, yalnızca reklam gösteren sayfalarda engelle ya da engelleme. Free plan dahil.15 Eylül 2026'dan sonra eklenen alan adlarında Training ve Agent reklamlı sayfalarda engelli, Search açık.
Block AI bots (eski ayar)Eğitim amaçlı doğrulanmış botları ve benzer davranan bazı botları engeller.15 Eylül 2026 itibarıyla kullanımdan kaldırılıyor.
Managed robots.txtSizin dosyanızın başına Amazonbot, Applebot-Extended, Bytespider, CCBot, ClaudeBot, Google-Extended, GPTBot ve meta-externalagent için Disallow: / ve Content-signal: search=yes, ai-train=no, use=reference ekler.Kapalı gelir. Açıksa dosyanız yazdığınız gibi sunulmaz; canlı adresi kontrol edin.
AI Crawl ControlHangi yapay zekâ servisinin eriştiğini ve robots.txt'e kimin uymadığını gösterir; tek tek bot için izin ya da engelleme kuralı yazılır.Tüm planlarda. İzleme için açık tutmaya değer.
Bot Fight ModeBilinen bot kalıplarına challenge uygular; WAF özel kurallarıyla istisna tanımlanamaz.Bizce görünürlük isteyen bir sitede kapalı tutulmalı.

Managed robots.txt açıldığında dosyanın başına eklenen metnin tam hâli Cloudflare'in belgesinde görülebilir.

Karma botlar: "eğitime hayır" anahtarı Googlebot'u da durdurabilir

Cloudflare'in duyurusuna göre 15 Eylül 2026'dan itibaren hem arama hem eğitim yapan botlar bütün davranışlarına göre değerlendiriliyor ve en kısıtlayıcı kural uygulanıyor. Cloudflare bu gruba Googlebot, Applebot ve Bingbot'u örnek veriyor: Training'i engelleyen bir site, eski "Block AI bots" ayarıyla da olsa, bu botları da engellemiş olur. Reklam gösteren sayfaları olan yeni bir alan adında bu sonuç varsayılan ayarla bile doğabilir. robots.txt'iniz Googlebot'a açık görünürken sayfalar taranamıyorsa ilk bakılacak yer burası.

Hangi botun geldiğini nasıl ölçersiniz?

Üç kaynaktan: kendi erişim kayıtlarınız, CDN paneli ve arama motorlarının raporları.

  1. Kayıtlarda token'ları sayın. Sunucunuzun erişim kaydı (access log) varsa user-agent alanında adları arayın:
    grep -oE "GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|Claude-SearchBot|Claude-User|PerplexityBot|Perplexity-User|Amazonbot|meta-externalagent|CCBot|DuckAssistBot" access.log | sort | uniq -c | sort -rn
  2. User-agent'ı doğrulayın. User-agent istemcinin beyanıdır; herkes kendine GPTBot diyebilir. OpenAI her botu için IP aralıklarını JSON olarak yayımlıyor (openai.com/gptbot.json, openai.com/searchbot.json, openai.com/chatgpt-user.json); Perplexity de aynısını yapıyor. Google için ters DNS sorgusu yapılır: adres googlebot.com, google.com ya da googleusercontent.com altında bir ada çözülmeli ve o ad ileri sorguda aynı adrese dönmelidir.
  3. Hangi adresi kaydettiğinizi bilin. Sunucu bir CDN ya da ters vekil arkasındaysa kayıttaki adres vekilindir. Cloudflare arkasında gerçek istemci adresi CF-Connecting-IP başlığında gelir; kayıt biçimi buna göre ayarlanmadıysa doğrulama yapılamaz. Kayıttaki adresin özel ağ, CGNAT ya da genel adres olduğunu IP adresi kontrol aracı gösterir.
  4. Kontrol token'larını aramayın. Google-Extended, Applebot-Extended ve YandexAdditional kayıtlarda görünmez.
  5. Kullanıcı tetiklemeli istekleri ayrı okuyun. ChatGPT-User, Claude-User ya da Perplexity-User isteği, bir kullanıcının sorusunun sayfanıza dokunduğunu gösterir. Bir yapay zekâ cevabında kullanılmaya en yakın sinyal budur.
  6. Arama motorlarının raporlarına bakın. Search Console'daki robots.txt raporu, Google'ın sitenizin en çok 20 ana makinesi için bulduğu robots.txt dosyalarını, son getirme zamanını ve hataları gösterir; düzeltmeden sonra yeniden getirme istenebilir. Generative AI performance raporu AI Overviews ve AI Mode gösterimlerini veriyor, tıklama ve sorgu vermiyor. Bing Webmaster Tools'un AI Performance raporu (Şubat 2026'dan beri ön izlemede) Copilot ve Bing'in yapay zekâ cevaplarındaki atıfları gösteriyor.

GitHub Pages ham erişim kaydı vermez; bu sitede bot trafiğini ancak önündeki CDN'in panelinden görebiliyoruz. Kayıt okumanın daha geniş tekniğini (saat dilimi, bütünlük, vekil adresleri) log analizi sayfamızda anlattık.

Hangi amaç için hangi ayar?

Amaçrobots.txtAyrıca
Arama motorlarında ve yapay zekâ yanıtlarında görünmekUser-agent: * ve Allow: /; adlandırılmış grup yoksa tuzak da yokCDN'de Search, Agent ve Training engelli değil; Bot Fight Mode kapalı
Eğitime kapalı, aramaya açıkGPTBot, ClaudeBot, Google-Extended, Applebot-Extended, meta-externalagent, CCBot için Disallow: /CDN'de Training engeli karma botları da durdurur; bunu bilerek seçin
Yapay zekâya tamamen kapalıEğitim, arama ve kullanıcı token'larının tamamına Disallow: /Kullanıcı getiricileri için CDN ya da WAF kuralı; AI Overviews için snippet ayarları
Google'da kalmak, Gemini eğitimine kapalı olmakUser-agent: Google-Extended ve Disallow: /Googlebot'a dokunmayın

robots.txt'in canonical ve site haritasıyla ilişkisi teknik SEO sayfasında. Sık karıştırılan llms.txt ise erişimi yönetmez; yalnızca sitenin özetini sunar.

Sık sorulan sorular

GPTBot nasıl engellenir?

robots.txt'e iki satır yeter: User-agent: GPTBot ve altında Disallow: /. OpenAI'ye göre bu, içeriğin temel modellerin eğitiminde kullanılmaması gerektiği anlamına gelir. ChatGPT aramasındaki görünürlüğü ise ayrı bir bot, OAI-SearchBot belirler; onu da engellemedikçe arama etkilenmez.

ClaudeBot robots.txt'e uyar mı?

Anthropic, botlarının robots.txt'teki standart yönergelere uyduğunu ve standart dışı Crawl-delay uzantısını da desteklediğini yazıyor. Üç ayrı ad var: ClaudeBot eğitim verisi toplar, Claude-SearchBot arama için dizinler, Claude-User bir kullanıcının sorusu için sayfa getirir. Anthropic ayrıca IP engellemenin güvenilir bir çıkış yolu olmayabileceğini, çünkü botun robots.txt dosyasını okumasını da engellediğini belirtiyor.

Google-Extended'ı engellersem AI Overviews'ta görünmez miyim?

Görünmeye devam edersiniz. Google-Extended yalnızca içeriğin gelecekteki Gemini modellerinin eğitiminde ve Gemini Apps ile Vertex AI'daki grounding kullanımında yer alıp almayacağını belirler; Google'a göre Google Arama'ya dahil olmayı ve sıralamayı etkilemez. AI Overviews ve AI Mode, Googlebot'un taradığı Google Arama'nın parçasıdır. Oradaki gösterimi sınırlamanın yolu nosnippet, max-snippet ya da noindex gibi ayarlardır.

robots.txt değişikliği ne zaman etkili olur?

Hemen değil. RFC 9309, tarayıcıların dosyayı önbelleğe alabileceğini ama 24 saatten eski bir kopyayı kullanmamaları gerektiğini söyler. OpenAI ve Perplexity değişikliğin yaklaşık 24 saatte, DuckDuckGo DuckAssistBot için 72 saatte yansıdığını yazıyor. Google için Search Console'daki robots.txt raporundan yeniden getirme istenebilir. Daha önce toplanmış içerik için robots.txt geriye dönük bir şey yapmaz.

Perplexity robots.txt kurallarına uyuyor mu?

İki botu için cevap farklı. PerplexityBot, Perplexity'nin arama sonuçlarında siteleri göstermek için tarar, robots.txt'e uyar ve belgesine göre temel model eğitimi için kullanılmaz. Perplexity-User ise bir kullanıcı soru sorduğunda sayfayı o an açar ve kullanıcı eylemi olduğu için robots.txt kurallarını genellikle yok sayar. Bu ikinciyi gerçekten durdurmak isteyen site CDN ya da WAF kuralı yazmak zorundadır.

Yapay zekâ botlarının siteme girip girmediğini nasıl anlarım?

Erişim kayıtlarının user-agent alanında GPTBot, ClaudeBot, PerplexityBot gibi adları arayın, sonra IP adresini şirketin yayımladığı listeyle ya da Google için ters DNS sorgusuyla doğrulayın; user-agent tek başına sahte olabilir. Sunucu CDN arkasındaysa kayıttaki adresin gerçek istemci mi vekil mi olduğunu kontrol edin. Cloudflare kullanıyorsanız AI Crawl Control paneli hangi servislerin eriştiğini ve robots.txt'e kimin uymadığını gösterir.

Kaynaklar

  1. RFC 9309: Robots Exclusion Protocol (Eylül 2022) — IETF
  2. Overview of OpenAI Crawlers — OpenAI
  3. Does Anthropic crawl data from the web, and how can site owners block the crawler? — Anthropic
  4. Google's common crawlers (Google-Extended) — Google
  5. AI features and your website — Google Search Central
  6. Perplexity Crawlers — Perplexity
  7. About Applebot — Apple
  8. Block AI Bots ve Configure AI bot policies — Cloudflare