Robots.txt Nedir, Nasıl Yazılır ve SEO'yu Nasıl Etkiler?
Robots.txt komutlarını, Google'ın kuralları okuma sırasını, e-ticaret sitesinde neyin engellenmesi gerektiğini ve yapay zeka botlarını anlatıyoruz.
Robots.txt, bir sitenin kök dizininde duran ve arama motoru botlarına sitenin hangi bölümlerini tarayıp hangilerini taramamaları gerektiğini söyleyen düz metin dosyasıdır. Her sitede alanadi.com/robots.txt adresinde bulunur. Kuralları 2022’de RFC 9309 numarasıyla standartlaşan Robots Exclusion Protocol’e göre yazılır.
Robots.txt küçük bir dosya ama hatası büyük sonuç doğurabiliyor. Tek bir yanlış Disallow satırı bütün bir kategori ağacını Google’ın görüş alanından çıkarabiliyor. Teknik SEO çalışmalarında sitelere baktığımızda ilk açtığımız dosyalardan biri bu. Aşağıda dosyanın ne işe yaradığını, Google’ın onu nasıl okuduğunu ve bir e-ticaret sitesinde neyin engellenmesi gerektiğini anlattık.
Önemli Noktalar
- Robots.txt taramayı kontrol ediyor, dizine eklemeyi değil. Engellenen bir sayfa yine de Google’da görünebiliyor.
- Google 500 KiB’tan büyük robots.txt içeriğini yok sayıyor ve dosyayı 24 saate kadar önbellekte tutuyor.
- İki kural çakıştığında Google en uzun yola sahip kuralı, eşitlikte en az kısıtlayıcı olanı uyguluyor.
- Robots.txt 5xx hatası verirse Google 12 saat boyunca siteyi taramayı durduruyor.
- Google-Extended’ı engellemek sitenizi AI Overview’lardan çıkarmıyor.
Robots.txt ne işe yarar, ne işe yaramaz?
Robots.txt’nin tek işi tarayıcıların hangi adreslere istek göndereceğini kontrol etmek. Böylece botlar sepet, ödeme ya da sonsuz sayıda filtre kombinasyonu gibi arama için değersiz sayfalarla vakit kaybetmiyor, sunucunuz da gereksiz istek almıyor.
Robots.txt’nin yapmadığı üç şey var ve en çok hata bu üçünden çıkıyor.
Dizine eklemeyi engellemiyor. Taranması engellenen bir sayfaya başka sayfalardan link veriliyorsa Google o adresi içeriğini hiç görmeden dizine ekleyebiliyor. Search Console’da bu durum “Robots.txt tarafından engellenmesine rağmen dizine eklendi” olarak görünüyor. Bir sayfanın arama sonuçlarında hiç çıkmamasını istiyorsanız noindex kullanmanız gerekiyor.
Güvenlik sağlamıyor. Robots.txt herkese açık bir dosya. Oraya yazdığınız her yolu isteyen herkes okuyabiliyor. Gizli kalması gereken bir sayfayı robots.txt’ye yazmak, onu aslında herkese göstermek oluyor. Böyle sayfaları şifreyle korumak gerekiyor.
Bütün botları durdurmuyor. Google, Bing ve büyük yapay zeka şirketlerinin botları robots.txt kurallarına uyuyor. Kötü niyetli tarayıcılar ise dosyayı hiç okumayabiliyor.
Robots.txt komutları nelerdir?
Google robots.txt dosyasında dört alanı destekliyor. user-agent kuralların hangi bot için geçerli olduğunu, disallow taranmayacak yolu, allow taranabilecek yolu, sitemap ise site haritasının adresini belirtiyor. crawl-delay satırını Google hiç desteklemedi, noindex satırını da 1 Eylül 2019’dan beri desteklemiyor.
Basit bir örnek dosya şöyle görünüyor.
User-agent: *
Disallow: /sepet/
Disallow: /hesabim/
Allow: /hesabim/giris/
Sitemap: https://www.ornekmagaza.com/sitemap.xml
Bu dosya bütün botlara /sepet/ ve /hesabim/ dizinlerini taramamalarını, ama /hesabim/giris/ sayfasını tarayabileceklerini söylüyor. Son satır da site haritasının yerini gösteriyor.
Yazarken bilmeniz gereken birkaç kural var.
- Alan adları büyük küçük harfe duyarlı değil, yollar duyarlı.
Disallowiledisallowaynı şey, ama/Sepet/ile/sepet/farklı iki yol. - Yıldız işareti herhangi bir karakter dizisi anlamına geliyor.
Disallow: /*?sirala=adresinde?sirala=geçen bütün sayfaları kapsıyor. - Dolar işareti yolun sonunu belirtiyor.
Disallow: /*.pdf$yalnızca.pdfile biten adresleri engelliyor. - Boş bir
Disallowsatırı hiçbir şeyi engellemiyor.Disallow:yazıp yanını boş bırakmak, o bot için bütün siteye izin vermek anlamına geliyor.
İki kural çakışırsa hangisi geçerli olur?
Google en spesifik kuralı, yani yolu en uzun olan kuralı uyguluyor. Yol uzunlukları eşitse ve kurallar çelişiyorsa en az kısıtlayıcı olanı, yani allow kuralını seçiyor. Kuralların dosyadaki sırası bu kararı etkilemiyor.
User-agent: *
Disallow: /urunler/
Allow: /urunler/indirimli/
Bu örnekte /urunler/indirimli/ayakkabi adresi taranabiliyor. İki kural da adrese uyuyor, ama Allow: /urunler/indirimli/ yolu daha uzun olduğu için o kazanıyor. /urunler/yeni/ayakkabi adresine ise yalnızca Disallow: /urunler/ kuralı uyduğu için taranmıyor.
User-agent grupları için de benzer bir mantık var. Bir bot kendi adını taşıyan bir grup bulursa yalnızca o grubun kurallarına uyuyor, yıldızlı genel grubu dikkate almıyor. Yani Googlebot için ayrı bir grup yazdıysanız, genel gruptaki kısıtlamaları o gruba da eklemeniz gerekiyor.
Google robots.txt dosyasını nasıl okur?
Google robots.txt dosyasını yalnızca bulunduğu ana makine, protokol ve port için geçerli sayıyor. www.ornek.com/robots.txt dosyası blog.ornek.com alt alanını kapsamıyor, her alt alanın kendi dosyası olmalı. Aynı şekilde http ve https sürümleri de ayrı değerlendiriliyor.
Google’ın robots.txt spesifikasyonunda dosyanın okunmasıyla ilgili iki sınır var. Dosya boyutu en fazla 500 KiB olabiliyor, sonrasındaki içerik yok sayılıyor. Google dosyayı genellikle 24 saate kadar önbellekte tutuyor, yani yaptığınız bir değişiklik hemen etkili olmayabiliyor.
Robots.txt adresinin döndürdüğü durum kodu da Google’ın davranışını değiştiriyor.
| Durum kodu | Google ne yapıyor |
|---|---|
| 2xx | Dosyayı okuyup kuralları uyguluyor |
| 3xx | En az beş yönlendirmeyi takip ediyor, sonra durup dosyayı 404 gibi değerlendiriyor |
| 4xx (429 hariç) | Robots.txt yokmuş gibi davranıyor, sitede hiçbir kısıtlama olmadığını varsayıyor |
| 5xx ve 429 | 12 saat boyunca taramayı durduruyor, sonraki 30 gün önbellekteki sürümü kullanıyor |
Son satır en tehlikelisi. Sunucunuz robots.txt için hata verdiğinde Google sitenizin tamamını taramayı bırakıyor. Bir altyapı değişikliğinden sonra robots.txt adresinin gerçekten 200 kodu döndürdüğünü kontrol etmeniz bu yüzden önemli. 30 gün sonra, site genel olarak erişilebilir durumdaysa Google dosyayı yokmuş gibi değerlendiriyor.
E-ticaret sitesinde robots.txt’de neler engellenmeli?
Bir e-ticaret sitesinde robots.txt’de engellediğimiz sayfalar kullanıcıya özel sayfalar ve sonsuz adres üreten parametreler oluyor. Sepet, ödeme ve hesap sayfaları her kullanıcı için farklı ve arama için değersiz. Sıralama, filtre ve site içi arama parametreleri ise aynı ürün listesinin binlerce farklı adresini üretebiliyor.
Tipik bir e-ticaret robots.txt dosyası şöyle görünebilir.
User-agent: *
Disallow: /sepet
Disallow: /odeme
Disallow: /hesabim
Disallow: /arama
Disallow: /*?q=
Disallow: /*?sirala=
Disallow: /*&sirala=
Disallow: /*?fiyat=
Disallow: /*&fiyat=
Sitemap: https://www.ornekmagaza.com/sitemap.xml
Parametreler hem ? hem & ile yazılıyor, çünkü bir parametre adreste ilk sırada olmadığında & ile başlıyor. Yalnızca ?sirala= kuralını yazarsanız ?renk=mavi&sirala=fiyat gibi bir adres engellenmeden kalıyor.
Bu listeyi kendi sitenize uyarlarken iki şeye dikkat edin. Birincisi, gerçekten arama talebi olan bir filtre sayfasını, örneğin bir marka ve kategori kesişimini dizine açmak istiyorsanız onu robots.txt’de engellememelisiniz. İkincisi, CSS ve JavaScript dosyalarını asla engellemeyin. Google sayfayı işlerken bu dosyalara ihtiyaç duyuyor, engellendiklerinde sayfanın mobil görünümünü ve içeriğini doğru anlayamayabiliyor.
Filtre adreslerinin genel yönetimini e-ticaret SEO rehberimizde, site içi arama sayfalarının 22 mağazada nasıl ele alındığını da site içi arama yazımızda anlattık.
Yapay zeka botları robots.txt ile nasıl yönetilir?
Yapay zeka şirketlerinin botlarını da robots.txt ile yönetebiliyorsunuz, ama hangi botun ne yaptığını bilmeniz gerekiyor. Aynı şirketin bir botu modeli eğitmek için, bir başkası sohbet aracının arama özelliği için, bir üçüncüsü de kullanıcının isteğiyle anlık olarak sayfa açmak için çalışabiliyor. Eğitim botunu engelleyip arama botuna izin vermek mümkün.
| Bot | Şirket | Ne için kullanılıyor |
|---|---|---|
| GPTBot | OpenAI | Model eğitimi |
| OAI-SearchBot | OpenAI | ChatGPT arama sonuçları |
| ChatGPT-User | OpenAI | Kullanıcının isteğiyle sayfa açma |
| ClaudeBot | Anthropic | Model eğitimi |
| PerplexityBot | Perplexity | Perplexity arama sonuçları |
| Google-Extended | Gemini eğitimi ve bazı diğer Google sistemleri |
Tablodaki son satırda sık yapılan bir hata var. Google’ın tarayıcı dokümanına göre Google-Extended, sitenizin Google Arama’ya dahil edilmesini etkilemiyor ve sıralama sinyali olarak kullanılmıyor. AI Overview’lar ve AI Mode ise normal Googlebot taramasıyla çalışıyor. Yani Google-Extended’ı engellemek sitenizi AI Overview’lardan çıkarmıyor. Google, AI özelliklerinde gösterilen bilgiyi sınırlamak için nosnippet, data-nosnippet, max-snippet ya da noindex kullanılmasını söylüyor.
Biz kendi sitemizde bütün yapay zeka botlarına izin veriyoruz, çünkü yapay zeka yanıtlarında kaynak olarak anılmak bizim için bir kazanç. Bu kararı kendi siteniz için verirken hangi yanıtlarda anıldığınızı ölçmeniz işe yarıyor. Nasıl ölçtüğümüzü yapay zeka görünürlüğü ölçümü yazımızda anlattık.
Robots.txt ile noindex arasındaki fark nedir?
Robots.txt bir sayfanın taranmasını, noindex ise dizine eklenmesini engelliyor. İkisini aynı sayfada birlikte kullanmak ise işe yaramıyor. Robots.txt ile taranması engellenen bir sayfadaki noindex etiketini Google hiç göremiyor, çünkü sayfayı açamıyor.
| Özellik | Robots.txt | Noindex |
|---|---|---|
| Neyi engelliyor | Taramayı | Dizine eklemeyi |
| Nereye yazılıyor | Kök dizindeki tek bir dosyaya | Sayfanın HTML’ine ya da HTTP başlığına |
| Sayfa Google’da görünür mü | Link alıyorsa içeriksiz görünebilir | Görünmez |
| Sunucu yükünü azaltır mı | Evet | Hayır, sayfa yine taranıyor |
| Ne zaman kullanılmalı | Değersiz ve çok sayıda adres | Tek tek dizinden çıkarılacak sayfalar |
Bir sayfayı Google’dan çıkarmak istiyorsanız doğru sıra şu. Önce noindex ekleyin ve sayfanın taranmasına izin verin. Google sayfayı yeniden tarayıp dizinden çıkardıktan sonra, isterseniz robots.txt ile taramayı da engelleyin.
En sık yapılan robots.txt hataları nelerdir?
Sitelerde en sık karşılaştığımız hata, geliştirme ortamındaki Disallow: / satırının canlıya taşınması. Test sırasında sitenin Google’da görünmemesi için eklenen bu satır, yayından sonra unutulduğunda bütün siteyi taramaya kapatıyor. Yeni bir site ya da tema yayına alındığında ilk kontrol ettiğimiz şey bu.
Diğer sık hatalar şunlar.
- CSS ve JavaScript dosyalarını engellemek. Google sayfayı doğru işleyemiyor.
- Dizinden çıkarılmak istenen sayfayı robots.txt ile engellemek. Noindex etiketi görünmüyor, sayfa dizinde kalıyor.
- Robots.txt’yi güvenlik için kullanmak. Gizli yolları herkese açık bir dosyaya yazmak oluyor.
- Yolların büyük küçük harfini yanlış yazmak.
/Kampanya/kuralı/kampanya/adresini engellemiyor. - Parametrenin yalnızca
?ile başlayan halini engellemek.&ile başlayan halleri açık kalıyor. - Robots.txt adresinin hata vermesi. Google 12 saat boyunca siteyi taramayı durduruyor.
Hatalı yönlendirmelerin ve hata kodlarının taramaya etkisini HTTP durum kodları yazımızda ayrıntılı anlattık.
Robots.txt dosyası nasıl test edilir?
Robots.txt dosyanızı Search Console’daki robots.txt raporuyla kontrol etmenizi öneriyoruz. Rapor Ayarlar bölümünde yer alıyor ve Google’ın sitenizde bulduğu robots.txt dosyalarını, son tarama zamanını, varsa uyarı ve hataları gösteriyor. Acil bir değişiklik yaptıysanız buradan yeniden tarama da isteyebiliyorsunuz.
Belirli bir sayfanın engellenip engellenmediğini görmek için Search Console’daki URL denetimi aracını kullanabilirsiniz. Araç sayfanın taranmasına izin verilip verilmediğini doğrudan söylüyor.
Bir de durum kodunu kontrol edin. Tarayıcınızda alanadi.com/robots.txt adresini açmak dosyanın içeriğini gösteriyor, ama sunucunun hangi kodu döndürdüğünü göstermiyor. Bunun için tarayıcının geliştirici araçlarındaki Ağ sekmesine ya da bir HTTP durum kodu kontrol aracına bakmanız gerekiyor. Dosya görünse bile 5xx kodu dönüyorsa Google onu okuyamıyor.
Robots.txt ayarlarını kim yapmalı?
Robots.txt’yi düzenlemek teknik olarak kolay, ama sonuçları sitenin tamamını etkiliyor. Tek bir satırın hangi adresleri kapsadığını, filtre ve arama parametrelerinin sitenizde nasıl üretildiğini ve Google’ın kuralları hangi sırayla okuduğunu bilmeden yapılan bir değişiklik, fark edilmeden aylarca trafik kaybettirebiliyor.
Sitenizin robots.txt dosyasını ve tarama yapısını bizim denetlememizi isterseniz teknik SEO hizmetimize bakabilirsiniz. Teknik denetimi içerik ve bağlantı çalışmalarıyla birlikte ele almak istiyorsanız SEO ajansı hizmetimizde hepsini birlikte yürütüyoruz.
Bu yazı Emir Bengiserp tarafından yazıldı. Benji’s Digital kurucusu; 15+ yıldır e-ticaret markalarında SEO, performans pazarlaması ve ürün verisi tarafında çalışıyor.
Son güncelleme 1 Ekim 2026. Kurallar Google’ın robots.txt spesifikasyonundan, Google tarayıcıları ve AI özellikleri dokümanlarından ve RFC 9309’dan alındı.
Sıkça Sorulan Sorular
Robots.txt dosyasının boyut sınırı var mı?
Evet, Google robots.txt dosyası için 500 KiB sınırı uyguluyor ve bu sınırı aşan kısmı yok sayıyor. Sınırı aşıyorsanız benzer kuralları joker karakterlerle birleştirmenizi ya da engellenecek içeriği tek bir dizinde toplamanızı öneriyoruz.
Robots.txt değişikliği ne zaman geçerli olur?
Google robots.txt içeriğini genellikle 24 saate kadar önbellekte tutuyor, bu yüzden değişiklik hemen etkili olmayabiliyor. Daha hızlı yenilenmesini istiyorsanız Search Console'daki robots.txt raporundan yeniden tarama isteyebilirsiniz.
Robots.txt ile engellenen sayfa Google'da çıkar mı?
Çıkabilir. Robots.txt 1 işi yapıyor, taramayı engelliyor, dizine eklemeyi değil. Engellenen bir sayfaya başka yerlerden link veriliyorsa Google adresi içeriğini görmeden dizine ekleyebiliyor. Sayfanın arama sonuçlarında hiç görünmemesini istiyorsanız noindex kullanıp sayfanın taranmasına izin vermelisiniz.
Robots.txt dosyasına noindex yazabilir miyim?
Hayır, Google 1 Eylül 2019'dan beri robots.txt içindeki noindex kuralını desteklemiyor. crawl-delay satırını da hiç desteklemedi. Google'ın desteklediği alanlar user-agent, allow, disallow ve sitemap.
Google-Extended'ı engellemek sitemi AI Overview'dan çıkarır mı?
Hayır, Google'a göre Google-Extended, sitenizin Google Arama'ya dahil edilmesini etkilemiyor ve 1 sıralama sinyali olarak da kullanılmıyor. Bu token yalnızca içeriğinizin Gemini modellerinin eğitimi ve bazı diğer Google sistemleri için kullanılmasını kontrol ediyor. AI Overview'da gösterilen bilgiyi sınırlamak için nosnippet ya da noindex gerekiyor.
Robots.txt dosyası olmazsa ne olur?
Google robots.txt adresi 404 gibi bir 4xx kodu döndürdüğünde sitede hiçbir tarama kısıtlaması olmadığını varsayıyor. Küçük siteler için bu çoğu zaman sorun değil, ama filtre ya da arama sayfaları üreten e-ticaret sitelerinde bir robots.txt dosyası gerekli.