429 Too Many Requests — trop de requêtes

Ce que signifie un statut HTTP 429, comment Google traite la limitation de débit et ralentit l’exploration, quel est son effet sur le budget d’exploration et comment configurer votre serveur pour envoyer des 429 sans provoquer de désindexation.

Première publication : 27 juin 2026 · Dernière mise à jour : 8 août 2026 · Advanced
Langues
2 indices probants sur cette page

429 Too Many Requests est le seul code 4xx que Google ne traite pas comme une erreur client. Lorsqu’il en voit suffisamment, il y lit un signal de surcharge serveur — dans la même catégorie que les 5xx — et ralentit le rythme d’exploration de Googlebot sur tout votre hostname au lieu de supprimer votre contenu. C’est donc la bonne méthode, recommandée par Google, pour ralentir un robot (jamais 403 ou 404). Mais c’est un outil à court terme : limitez-le à quelques heures ou 1 à 2 jours, envoyez un en-tête Retry-After par bonne pratique et appliquez la limite au bon trafic. Des 429 prolongées sur les mêmes URL pendant plusieurs jours peuvent tout de même les faire sortir de l’index.

TL;DR — 429 est le seul code 4xx que Google traite comme une erreur 5xx : lorsqu’il rencontre un nombre significatif de réponses 500/503/429, il y voit un signal de surcharge serveur et ralentit l’exploration de Googlebot à l’échelle du hostname, au lieu de supprimer le contenu. C’est le seul code que Google recommande pour ralentir un robot — jamais 403 ou 404. La documentation de Google conseille, pour les urgences, « quelques heures ou 1 à 2 jours » — ce n’est pas une fenêtre de sécurité garantie ; des 429 persistantes sur les mêmes URL risquent de finir par les faire sortir de l’index, et le ralentissement recommence à s’atténuer (pas nécessairement instantanément ni complètement) quand le volume d’erreurs diminue. La RFC 6585 indique qu’une réponse 429 SHOULD expliquer la condition et MAY inclure Retry-After — son envoi est une bonne pratique recommandée, pas une exigence de conformité. Appliquez la limite au bon trafic et vérifiez l’identité des robots avant d’écrire des exceptions.

Ce que signifie 429 au niveau du protocole

Comme le formule le MDN à partir de la spécification : “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’.” (traduction) : « Le code de statut de réponse HTTP 429 Too Many Requests indique que le client a envoyé trop de requêtes pendant une période donnée. Ce mécanisme qui demande au client de ralentir le rythme des requêtes est généralement appelé limitation de débit. » 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

La section 4 de la RFC 6585 est plus précise que la plupart des résumés. Une représentation 429 SHOULD expliquer la condition et MAY inclure un en-tête Retry-After indiquant au client un nombre concret de secondes (la RFC 9110 autorise aussi une date HTTP) à attendre avant de réessayer — Retry-After est une bonne pratique recommandée, pas une exigence de conformité. La spécification ne définit pas non plus comment identifier un client ni comment compter les requêtes ; cela relève entièrement du système qui émet la réponse (par IP, session, clé d’API, ressource — politique d’implémentation, pas règle du protocole). Autre règle facile à manquer : la RFC 6585 indique qu’une réponse 429 ne doit pas être stockée par un cache. Si vous voyez une 429 qui semble mise en cache ou rejouée alors que l’origine est saine, c’est un intermédiaire (CDN, proxy) qui se comporte mal, et non l’origine qui décide à nouveau de limiter le client.

Je l’ai toujours formulé simplement dans mon guide Codes de statut HTTP et leur impact SEO : 429 est “a form of rate-limiting to protect the server because the client sent too many requests to the server too fast.” (traduction) : « une forme de limitation de débit destinée à protéger le serveur parce que le client lui a envoyé trop de requêtes trop rapidement. » En théorie, c’est une erreur client — le client a mal agi en demandant trop. Mais c’est précisément là que le récit SEO diverge de la spécification.

L’exception parmi les codes 4xx

Le fait le plus important de cette page est le suivant : Google ne traite pas 429 comme le reste de la famille 4xx. Gary Illyes a consacré un article du blog Google Search Central à ce sujet en février 2023, parce que suffisamment de sites et de CDN utilisaient mal les 404 pour ralentir Googlebot et que Google a dû leur dire d’arrêter.

Sa règle : “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.” (traduction) : « L’exception est 429, qui signifie “trop de requêtes”. Cette erreur indique clairement à tout robot correctement conçu, y compris notre cher Googlebot, qu’il doit ralentir parce qu’il surcharge le serveur. » Et, dans la référence Google des codes de statut : “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.” (traduction) : « N’utilisez pas les codes 401 et 403 pour limiter le rythme d’exploration. Les codes de statut 4xx, à l’exception de 429, n’ont aucun effet sur ce rythme. »

Ainsi, alors que 403 et 404 feront supprimer votre contenu de Google Search, 429 vous apporte un simple ralentissement temporaire. Google le classe littéralement avec les erreurs serveur : “Google’s crawlers treat the 429 status code as a signal that the server is overloaded, and it’s considered a server error.” (traduction) : « Les robots d’exploration de Google traitent le code de statut 429 comme un signal indiquant que le serveur est surchargé, et il est considéré comme une erreur serveur. » 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

C’est ce qui fait de 429 le proche parent utile de 503 Service Unavailable (le signal traditionnel de maintenance ou d’indisponibilité temporaire) — et l’exact opposé de 403 Forbidden, qui est le mauvais outil de limitation malgré le fait que de nombreux pare-feu l’utilisent par défaut.

Effet sur l’exploration à l’échelle du hostname — avec un seuil

Deux portées différentes sont souvent confondues ici ; il faut les séparer. La manière dont vous comptez et indexez une limite de débit — par IP, session, clé d’API, ressource ou serveur — relève de votre politique ; la spécification HTTP ne la définit pas. Ce que Google fait des erreurs qu’il observe est un comportement documenté distinct, conditionné par le volume et non par une seule réponse : “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.” (traduction) : « L’infrastructure d’exploration de Google réduit le rythme d’exploration de votre site lorsqu’elle rencontre un nombre significatif d’URL dont la réponse HTTP a le statut 500, 503 ou 429. » Une fois ce seuil atteint, “the reduced crawl rate affects the whole hostname of your site (for example, subdomain.example.com), both the crawling of the URLs that return errors, as well as the URLs that return content.” (traduction) : « le rythme d’exploration réduit affecte l’ensemble du hostname de votre site (par exemple, subdomain.example.com), aussi bien l’exploration des URL qui renvoient des erreurs que celle des URL qui renvoient du contenu. »

Autrement dit, si vous renvoyez des 429 pour un sous-ensemble de pages (par exemple, une route d’API lourde) avec un volume réel, Googlebot ralentit l’exploration de l’ensemble du hostname, y compris des pages qui continuent à renvoyer 200. C’est généralement l’effet recherché quand le but est de réduire la charge totale. Mais une 429 isolée sur une seule route ne suffit pas à établir cet effet à l’échelle du hostname : la formulation de Google vise un « nombre significatif » de réponses d’erreur, et non une seule réponse.

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

La recommandation de 1 à 2 jours — quand 429 devient risquée

429 est un signal à court terme, et Google donne pour les urgences une recommandation concrète — pas une fenêtre de sécurité garantie ni une limite brutale. Dans la documentation « réduire le rythme d’exploration » : “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.” (traduction) : « Si vous devez réduire d’urgence le rythme d’exploration pendant une courte période (par exemple quelques heures ou 1 à 2 jours), renvoyez alors aux requêtes d’exploration une réponse HTTP de statut 500, 503 ou 429 au lieu de 200. »

Au-delà, le risque augmente, même si Google le présente comme une possibilité et non comme une promesse : “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.” (traduction) : « Nous vous déconseillons de faire cela pendant une longue période (c’est-à-dire plus de 1 à 2 jours), car cela peut nuire à l’apparence de votre site dans les produits Google… si Googlebot observe ces codes de statut sur la même URL pendant plusieurs jours, l’URL peut être retirée de l’index Google. » La référence des codes de statut dit la même chose pour les 5xx et 429 : “already indexed URLs are preserved in the index, but eventually dropped.” (traduction) : « les URL déjà indexées sont conservées dans l’index, mais finissent par en être retirées. »

Le modèle de risque, formulé honnêtement : une 429 courte reste dans la fenêtre recommandée par Google pour une urgence ; une 429 persistante sur les mêmes URL pendant plusieurs jours est le cas où le langage de Google devient « peut » et « finit par être retirée » — un risque documenté, pas un résultat garanti dans un sens ou dans l’autre. La dynamique est la même qu’avec une 503 prolongée.

Le rythme d’exploration revient automatiquement

Le revers rassurant : aucun indicateur de pénalité ne suit votre site. Une fois les erreurs résorbées, Google indique que “the crawl rate will automatically start increasing again.” (traduction) : « le rythme d’exploration recommencera automatiquement à augmenter. » Vous n’avez aucun formulaire à envoyer et aucune nouvelle demande à effectuer. Notez toutefois la formulation exacte : Google dit “starts increasing” (traduction) : « commence à augmenter », et non “instantly returns to your prior rate.” (traduction) : « revient instantanément à votre rythme précédent ». Considérez le rétablissement comme une direction documentée, sans calendrier fixe ni point d’arrivée garanti, et non comme un SLA.

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

(À l’inverse, si vous voulez que Google explore durablement moins votre site, Google indique de “file a special request to report a problem with unusually high crawl rate” (traduction) : « déposer une demande spéciale pour signaler un problème de rythme d’exploration inhabituellement élevé ». C’est une procédure manuelle qui peut prendre plusieurs jours et n’est pas garantie. Le rétablissement ne présente pas cette friction.)

Comment Bing traite 429

Il est largement rapporté que Bingbot se comporte de façon similaire — les 429/500/503 signalent une surcharge et Bingbot ralentit — mais je n’ai pas pu confirmer indépendamment une formulation actuelle en ce sens dans les pages d’aide de Bing lors de cette recherche (ce sont des SPA rendues en JavaScript qui n’ont pas fourni de texte statique récupérable). Considérez donc la parité comme un constat rapporté par le secteur, et non comme un fait vérifié dans la documentation actuelle de Bing. Ce que Bing confirme, dans ses anciennes recommandations, ce sont deux contrôles proactifs que Google ne propose pas sous la même forme :

  • Crawl Control dans Bing Webmaster Tools, une grille de requêtes par seconde qui permet de régler la vitesse de Bingbot selon l’heure de la journée.
  • La directive crawl-delay de robots.txt. La recommandation actuelle de Bing Webmaster documente des valeurs de 1 à 20 secondes. Elle est propre à Bing et ne ralentit pas Googlebot.

Sur Bing, vous pouvez donc limiter préventivement avec crawl-delay ou Crawl Control plutôt que réagir avec des codes de statut. (Google a retiré son propre curseur manuel de rythme d’exploration en 2024 et s’appuie désormais entièrement sur les réponses de votre serveur.)

Remarque : les pages actuelles de Bing sur Crawl Control et les erreurs d’exploration sont rendues en JavaScript ; la formulation crawl-delay ci-dessus vient d’un article de blog Bing de 2009, une recommandation toujours respectée plutôt qu’une capture de l’interface actuelle. La parité 429 mentionnée plus haut et l’état actuel de crawl-delay/Crawl Control doivent tous deux faire l’objet d’une vérification dans la documentation primaire actuelle de Bing — confirmez la formulation exacte en vigueur dans Bing Webmaster Tools avant de citer ces éléments comme actuels.

Quand envoyer volontairement une 429

Voici des raisons légitimes de renvoyer délibérément une 429 :

  • Surcharge serveur urgente — pic de trafic, migration mal préparée ou panne nécessitant de ralentir Googlebot immédiatement pendant quelques heures.
  • Protection des API et des points de terminaison non HTML contre l’abus de robots — les robots des moteurs, les robots SEO tiers (Ahrefs, Screaming Frog) et les scrapers atteignent tous des limites destinées à empêcher l’abus.

Ce que 429 ne doit pas faire : bloquer définitivement les robots dont vous ne voulez pas. Si vous ne voulez jamais qu’un élément soit exploré, utilisez une interdiction dans robots.txt, pas une 429. Si vous voulez conserver une page tout en la retirant de l’index, utilisez noindex. 429 signifie seulement « plus tard », pas « jamais ».

429 involontaires — les coupables habituels

Lorsque des 429 apparaissent dans le rapport d’indexation des pages ou de statistiques d’exploration de GSC alors que vous ne les avez pas configurées, la source est généralement l’une des suivantes — je ne connais pas de preuve solide permettant de classer universellement la plus fréquente ; voyez donc cette liste comme des hypothèses à confirmer ou écarter, pas comme un diagnostic :

  • Règles de WAF ou de pare-feu qui se déclenchent à tort sur des plages IP de robots légitimes.
  • Limites par défaut de l’hébergement mutualisé ou du CDN trop strictes pour une exploration réelle.
  • Outils de gestion des robots qui classent Googlebot ou Bingbot comme trafic abusif.
  • Middleware de limitation agressive prévu pour l’abus d’API mais qui intercepte vos propres robots.

Avant de modifier un seuil ou d’écrire une règle qui exempte de vrais robots de recherche, établissez d’abord la provenance — ne devinez pas quelle couche possède la réponse. Récupérez les en-têtes bruts de la réponse, les lignes exactes du journal de requêtes (pas un résumé de tableau de bord), l’identifiant de la règle ou de la zone de limitation qui s’est déclenchée, la clé client comptée (IP, session, clé d’API), la route, le point de présence CDN ou l’emplacement edge, ainsi que la fenêtre temporelle. Cette combinaison indique quelle couche a réellement émis la 429 et ce qu’elle comptait ; ce n’est qu’alors qu’il est logique d’assouplir une limite ou d’ajouter une exception. Vérifiez l’identité du robot par DNS inverse puis direct (méthode officielle de Google), et non avec le seul user-agent — les user-agents « Googlebot » usurpés sont fréquents. L’onglet Scripts contient les commandes exactes.

La version courte du mode opératoire

  1. Utilisez 429 ou 503 avec Retry-After pour ralentir un robot — jamais 403 ou 404.
  2. Limitez la durée à quelques heures ou 1 à 2 jours — au-delà, des URL peuvent être retirées.
  3. Souvenez-vous que le ralentissement est à l’échelle du hostname et qu’il se rétablit automatiquement lorsque les erreurs cessent.
  4. Appliquez la limite au bon trafic et vérifiez l’identité du robot avant d’exempter des robots.

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.