429 Çok Fazla İstek

HTTP 429 durumunun ne anlama geldiğini, Google’ın hız sınırlamasını nasıl ele alıp taramayı yavaşlattığını, tarama bütçesini nasıl etkilediğini ve dizinden çıkarmaya yol açmadan 429 gönderecek şekilde sunucunuzu nasıl yapılandıracağınızı açıklar.

İlk yayın tarihi: 27 Haz 2026 · Son güncelleme: 22 Ağu 2026 · Advanced
Diller
Bu sayfada 2 kanıt sinyali

429 Too Many Requests, Google’ın istemci hatası gibi ele almadığı tek 4xx kodudur. Yeterince fazla 429 gördüğünde bunu 5xx ile aynı sınıfta bir sunucu aşırı yükü sinyali olarak okur ve içeriğinizi dizinden çıkarmak yerine Googlebot’un tarama hızını hostname genelinde sınırlar. Bu nedenle bir tarayıcıyı yavaşlatmanın doğru ve Google tarafından onaylanan yoludur (asla 403 veya 404 değil). Ancak kısa süreli bir araçtır: birkaç saat veya 1–2 günle sınırlayın, en iyi uygulama olarak bir Retry-After başlığı gönderin ve kuralı doğru trafiğe uygulayın. Aynı URL’lerde günler boyunca devam eden 429’lar URL’lerin yine de dizinden çıkarılmasına yol açabilir.

Kısa özet — 429, Google’ın 5xx gibi ele aldığı tek 4xx kodudur. Google önemli sayıda 500/503/429 yanıtıyla karşılaşınca bunu sunucu aşırı yük sinyali olarak okur ve içeriği kaldırmak yerine Googlebot’un tarama hızını ana makine adı genelinde azaltır. Tarayıcıyı yavaşlatmak için Google’ın onayladığı tek 4xx budur; 403 veya 404 kullanmayın. Google belgelerindeki “birkaç saat veya 1–2 gün” acil kullanım rehberidir, garantili güvenli pencere değildir. Aynı URL’lerde süren 429’lar sonunda dizinden çıkarma riski taşır; hata hacmi düşünce hız yeniden artmaya başlar, ancak bunun anlık veya eksiksiz olacağı garanti edilmez. RFC 6585, 429’un koşulu açıklamasını SHOULD, Retry-After içermesini MAY olarak tanımlar; başlığı göndermek önerilen uygulamadır, zorunluluk değildir. Sınırı doğru trafiğe uygulayın ve bot istisnası yazmadan önce tarayıcı kimliğini doğrulayın.

429 protokol düzeyinde nedir

MDN’nin standardı özetlediği ifade şöyledir: “The HTTP 429 Too Many Requests client error response status code indicates the client has sent too many requests in a given amount of time. This mechanism of asking the client to slow down the rate of requests is commonly called ‘rate limiting.’” (çeviri) “HTTP 429 Too Many Requests istemci hata yanıtı, istemcinin belirli sürede çok fazla istek gönderdiğini belirtir. İstemciden istek hızını düşürmesini isteme mekanizmasına yaygın olarak hız sınırlama denir.” Evidence for this claim A 429 response means the user sent too many requests in a given time, and the response may include Retry-After. Scope: RFC 9110 defines the status and optional Retry-After field; it does not define a universal rate threshold. Confidence: high · Verified: IETF: RFC 9110 §15.5.20 — 429 Too Many Requests

RFC 6585 §4, çoğu özetin söylediğinden daha kesindir. Bir 429 gösterimi durumu SHOULD açıklamalı ve istemciye yeniden denemeden önce beklemesi gereken somut saniye sayısını (RFC 9110 bir HTTP tarihi de kabul eder) bildiren bir Retry-After başlığı MAY içermelidir — Retry-After önerilen bir uygulamadır, uyumluluk şartı değildir. Spesifikasyon ayrıca istemcinin nasıl tanımlandığını veya isteklerin nasıl sayıldığını belirlemez; bunları tamamen yanıtı veren sisteme bırakır (IP başına, oturum başına, API anahtarı başına, kaynak başına — protokol değil, uygulama politikası). Kaçırılması kolay bir kural daha var: RFC 6585, 429 yanıtının bir önbellek tarafından saklanmaması gerektiğini söyler. Sağlıklı bir origin üzerinde önbelleğe alınmış veya yeniden oynatılmış gibi görünen bir 429 görürseniz, bu origin’in yeniden sınırlamaya karar vermesi değil, aradaki katmanın (CDN, proxy) hatalı davranmasıdır.

Bu teknik not, 429 hız sınırlaması için yanıtın ne anlattığını ve ne anlatmadığını açıklar. Kaynak “a form of rate-limiting to protect the server because the client sent too many requests to the server too fast.” (Türkçe çeviri) Bu ifade, kaynakta belirtilen temel HTTP kuralını özetliyor.

4xx kodları arasındaki tek istisna

Kaynak özeti, 429 hız sınırlaması için yanıtın ne anlattığını ve ne anlatmadığını açıklar., 4xx

Kuralı şöyledir: “The one exception is 429, which stands for ‘too many requests’. This error is a clear signal to any well-behaved robot, including our beloved Googlebot, that it needs to slow down because it’s overloading the server.” (çeviri) “Tek istisna ‘çok fazla istek’ anlamındaki 429’dur. Bu hata, Googlebot dâhil iyi davranan her robota sunucuyu aşırı yüklediği için yavaşlaması gerektiğini açıkça bildirir.” Google’ın durum kodu kaynağındaki karşı yön de nettir: “Don’t use 401 and 403 status codes for limiting the crawl rate. The 4xx status codes, except 429, have no effect on crawl rate.” (çeviri) “Tarama hızını sınırlamak için 401 ve 403 kullanmayın. 429 dışındaki 4xx kodlarının tarama hızına etkisi yoktur.”

Bu uygulama notu, 429 hız sınırlaması için yanıtın ne anlattığını ve ne anlatmadığını açıklar., 403, 404

Evidence for this claim Google treats 429 as a server-overload signal that reduces crawl rate and recommends 429, 500, or 503 for temporary crawl reduction instead of other 4xx codes. Scope: Google's guidance covers Google crawler behavior and short-term overload; it does not promise indexing preservation during prolonged unavailability. Confidence: high · Verified: Google: Reduce Google crawl rate

“Google’s crawlers treat the 429 status code as a signal that the server is overloaded, and it’s considered a server error.” (Türkçe çeviri) Bu alıntı, kodun geçici veya koşullu kullanım bağlamını açıklar.

429’u 503 Service Unavailable’ın yararlı kardeşi yapan şey budur (geleneksel bakım/geçici kullanılamama sinyali) — ve kaç güvenlik duvarı varsayılan olarak bunu kullansa da rate limiting için yanlış araç olan 403 Forbidden’ın tam tersidir.

Tarama hızına etkisi bir eşikle hostname geneline yayılır

Burada iki farklı kapsam birbirine karıştırılır; ayırmak gerekir. Hız sınırını IP, oturum, API anahtarı, kaynak veya sunucu başına nasıl sayıp anahtarladığınız sizin politikanızdır; HTTP standardı bunu tanımlamaz. Google’ın gördüğü hatalar karşısındaki davranışı ayrı ve belgelenmiştir; tek yanıta değil hacme bağlıdır: “Google’s crawling infrastructure reduces your site’s crawling rate when it encounters a significant number of URLs with 500, 503, or 429 HTTP response status codes.” (çeviri) “Google’ın tarama altyapısı, 500, 503 veya 429 döndüren önemli sayıda URL ile karşılaşınca sitenizin tarama hızını azaltır.” Eşik aşılınca “the reduced crawl rate affects the whole hostname of your site … both the crawling of the URLs that return errors, as well as the URLs that return content.” (çeviri) “Azaltılmış hız, hata döndüren URL’lerin yanı sıra içerik döndüren URL’ler de dâhil olmak üzere sitenin tüm ana makine adını etkiler.”

Başka bir deyişle, gerçek bir hacimde sayfaların bir alt kümesine (örneğin ağır bir API yoluna) 429 döndürürseniz Googlebot, hâlâ 200 döndüren sayfalar dahil tüm hostname’i daha yavaş tarar. Toplam yükü azaltmak istediğinizde genellikle amaçlanan etki budur. Ancak tek bir yoldaki tek bir 429, kendi başına hostname geneli etkisini kanıtlamaz — Google’ın kendi ifadesi herhangi bir tek yanıta değil “önemli sayıda” hata yanıtına yöneliktir.

Evidence for this claim When Google encounters a significant number of 500, 503, or 429 responses, its documented crawl-rate reduction affects the whole hostname, including error URLs and URLs still returning content; one isolated 429 does not establish that site-wide effect. Scope: hostname crawl-load incidents Confidence: high · Verified: Reduce Google crawl rate

1–2 gün rehberliği — 429 ne zaman riskli olur

429 kısa vadeli sinyaldir. Google bunun için garantili güvenli pencere veya kesin eşik değil, somut acil kullanım rehberi verir. “Tarama hızını azaltma” belgesindeki ifade: “If you need to urgently reduce the crawl rate for short period of time (for example, a couple of hours, or 1-2 days), then return 500, 503, or 429 HTTP response status code instead of 200 to the crawl requests.” (çeviri) “Tarama hızını kısa süreyle acilen azaltmanız gerekiyorsa (örneğin birkaç saat veya 1–2 gün), tarama isteklerine 200 yerine 500, 503 veya 429 döndürün.”

Buradaki bölüm, 429 hız sınırlaması için uygulama sırasında izlenecek sinyalleri bir araya getirir., 5xx “We don’t recommend that you do this for a long period of time (meaning, longer than 1-2 days) as it may have a negative effect on how your site appears in Google products… if Googlebot observes these status codes on the same URL for multiple days, the URL may be dropped from Google’s index.” (Türkçe çeviri) Bu ifade, arama motoru davranışının ilgili sınırını netleştirir. “already indexed URLs are preserved in the index, but eventually dropped.” (Türkçe çeviri) Bu ifade, arama motoru davranışının ilgili sınırını netleştirir.

Risk modelini dürüstçe ifade edersek: kısa vadeli 429, Google’ın acil kullanım için önerdiği aralığa uyar; aynı URL’lerde birden çok gün devam eden 429, Google’ın kendi dilinin “olabilir” ve “sonunda çıkarılır” ifadelerine döndüğü yerdir — iki yönde de garantili olmayan, belgelenmiş bir risktir. Uzun süren 503’te de aynı dinamik vardır.

Tarama hızı otomatik olarak toparlanır

Güven veren karşı taraf şudur: siteyi izleyen kalıcı bir ceza işareti yoktur. Hatalar azalınca Google’a göre “the crawl rate will automatically start increasing again.” (çeviri) “tarama hızı otomatik olarak yeniden artmaya başlar.” Form veya yeniden değerlendirme isteği gerekmez. Ancak tam ifadeye dikkat edin: Google “artmaya başlar” der; “instantly returns to your prior rate.” (çeviri) “önceki hızınıza anında döner” demez. İyileşmeyi sabit takvimi veya garantili son noktası olmayan belgelenmiş yön olarak değerlendirin, SLA olarak değil.

Evidence for this claim Google says crawl rate automatically starts increasing after the number of overload responses falls; this describes direction, not an immediate return, fixed recovery time, or guaranteed prior crawl rate. Scope: hostname crawl-load incidents Confidence: high · Verified: Reduce Google crawl rate

Bu karar çerçevesi, durum kodu hız sınırlaması için uygulama sırasında izlenecek sinyalleri bir araya getirir. “file a special request to report a problem with unusually high crawl rate” (Türkçe çeviri) Bu ifade, arama motoru davranışının ilgili sınırını netleştirir.

Bing 429’u nasıl ele alır

Bingbot’un benzer davrandığı — 429/500/503 ile aşırı yük sinyali verdiği ve Bingbot’un geri çekildiği — yaygın biçimde bildiriliyor; ancak bu araştırma turunda Bing’in kendi yardım sayfalarında bu yöndeki güncel ifadeyi bağımsız olarak doğrulayamadım (fetch edilebilir statik metin vermeyen JS ile oluşturulmuş SPA’ler). Eşdeğerlik iddiasını doğruladığım bir şey değil, sektör tarafından bildirilen bir bilgi olarak değerlendirin. Bing’in kendi geçmiş rehberliğinde doğruladığı iki proaktif kontrol ise şunlardır; Google bunları aynı biçimde sunmaz:

  • Bing Webmaster Tools’ta Crawl Control: Bingbot’un hızını günün saatine göre ayarladığınız, saniye başına istek ızgarası.
  • crawl-delay robots.txt yönergesi. Güncel Bing Webmaster rehberliği, 1–20 saniye arasındaki değerleri belgeler. Bu Bing’e özgüdür; Googlebot’u sınırlamaz.

Dolayısıyla Bing’de durum kodlarıyla tepkisel sınırlama yapmak yerine crawl-delay veya Crawl Control ile proaktif olarak hız düşürebilirsiniz. (Google kendi manuel tarama hızı kaydırıcısını 2024’te kaldırdı ve artık tamamen sunucunuzun yanıtlarına dayanıyor.)

Not: Bing’in güncel Crawl Control ve crawl-error yardım sayfaları JavaScript ile oluşturulur; yukarıdaki crawl-delay ifadesi güncel bir arayüz ekran görüntüsünden değil, Bing’in 2009 tarihli blog yazısından gelen ve hâlâ geçerli kabul edilen rehberlikten alınmıştır. Yukarıdaki 429 eşdeğerliği iddiası ile crawl-delay/Crawl Control’ün güncel durumu, güncel birincil Bing dokümantasyonuna göre doğrulanması gereken needs-review konularıdır — bunlardan herhangi birini güncelmiş gibi alıntılamadan önce Bing Webmaster Tools’taki bugünkü ifadeyi doğrulayın.

Bilerek 429 göndereceğiniz durumlar

Kasıtlı olarak 429 döndürmek için meşru nedenler:

  • Acil sunucu yükü — birkaç saat boyunca Googlebot’un hemen şimdi yavaşlamasına ihtiyaç duyduğunuz trafik artışı, hatalı bir taşıma veya kesinti.
  • Tarayıcı/bot kötüye kullanımına karşı API’leri ve HTML olmayan uç noktaları korumak — arama motoru tarayıcıları, üçüncü taraf SEO tarayıcıları (Ahrefs, Screaming Frog) ve scraper’ların tümü kötüye kullanımı önlemek için tasarlanmış hız limitlerine takılır.

429’un amacı değildir: hiç istemediğiniz botları kalıcı olarak engellemek. Bir şeyin taranmasını asla istemiyorsanız bu bir 429 değil, robots.txt disallow işidir. Bir sayfayı koruyup dizin dışında tutmak istiyorsanız bu noindex’tir. 429 yalnızca “daha sonra” demektir, “asla” değil.

İstenmeden oluşan durum kodu yanıtları — yaygın nedenler

Bu anlatım, durum kodu hız sınırlaması için okurun ilgili durumu güvenle doğrulamasına yardımcı olur.

  • Meşru tarayıcı IP aralıklarında yanlış tetiklenen WAF / güvenlik duvarı kuralları.
  • Gerçek bir tarama için fazla sıkı olan paylaşımlı hosting veya CDN varsayılan hız limitleri.
  • Googlebot veya Bingbot’u kötü amaçlı trafik olarak sınıflandıran bot yönetimi araçları.
  • Kendi tarayıcılarınızı da yakalayan agresif hız sınırlama middleware’i.

Bir eşiğe dokunmadan veya gerçek arama botlarını muaf tutan bir kural yazmadan önce kaynağın izini belirleyin — yanıtın hangi katmana ait olduğunu tahmin etmeyin. Ham yanıt başlıklarını, tam istek günlük satırlarını (dashboard özeti değil), tetiklenen kural veya rate-limit-zone kimliğini, sayımda kullanılan istemci anahtarını (IP, oturum, API anahtarı), rotayı, CDN POP’unu veya edge konumunu ve zaman aralığını alın. Bu birleşim, 429’u hangi katmanın verdiğini ve neyi saydığını gösterir — ancak bundan sonra limiti gevşetmek veya istisna eklemek anlamlıdır. Tarayıcı kimliğini user-agent dizesiyle tek başına değil, reverse-plus-forward DNS ile (Google’ın resmî yöntemi) doğrulayın; sahte “Googlebot” user-agent’ları yaygındır. Tam komutlar Scripts sekmesindedir.

Oyun planının kısa sürümü

  1. 429 veya 503’ü Retry-After ile kullanarak bir tarayıcıyı yavaşlatın — asla 403 veya 404 kullanmayın.
  2. Süreyi saatlerle veya 1–2 günle sınırlayın — bunun ötesinde URL’ler dizinden çıkarılabilir.
  3. Sınırlamanın hostname genelinde olduğunu ve hatalar durduğunda otomatik olarak toparlandığını unutmayın.
  4. Limiti doğru trafiğe uygulayın ve botları muaf tutmadan önce tarayıcı kimliğini doğrulayın.

Try it live

This is a real endpoint on this site — not a simulation. Hit it from the button, open it in a new tab, or curl -i it from your terminal, and the server answers with the actual status code this article is about.

Open in new tab ↗

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.