What is 429 Too Many Requests?
A 429 Too Many Requests response is a server saying "slow down": the client has sent more requests in a given window than a rate limit allows. Nothing is wrong with the URL itself. The limit can sit in the application, the web server, a host's protection layer or a CDN firewall.
It matters for SEO because crawlers hit rate limits too, and Google treats a 429 as a sign of an overloaded server.
What the response looks like
HTTP/2 429
retry-after: 120
content-type: text/html
Retry-After is optional and gives either a number of seconds or a date after which the client may try again. Well-written clients wait. The body is usually a short message or a challenge page.
How Googlebot reacts
Although 429 is numbered among the client errors, Google does not handle it like a 404. Its documentation treats 429 together with the 5xx server errors:
- Google slows its crawling of the site.
- URLs that return the error keep their place in the index for a while.
- If the errors continue for an extended period, those URLs are eventually dropped.
This makes a brief 429 a legitimate way to shed load during a traffic spike, and Google lists it, with 500 and 503, as a way to reduce crawl rate in an emergency. It also makes a permanent one dangerous. Do not leave it on for more than a day or two.
The accidental 429
The common SEO problem is a rate limit nobody meant to apply to search engines:
- Host or CDN bot protection counts Googlebot's requests like any other visitor's and trips when a crawl speeds up after a migration or a large sitemap submission.
- Security plugins with a "requests per minute" rule, set low enough for a crawler to exceed.
- Shared hosting limits on concurrent PHP processes, reported as 429 by some hosts.
- Admin-ajax and REST calls from your own pages, which use up the allowance that crawlers share.
In Search Console, look at Settings → Crawl stats: the "By response" breakdown shows the share of requests answered with errors, and host status flags availability problems. In the Page indexing report, affected URLs tend to appear under server error reasons.
Fixing it
- Exempt verified search crawlers from rate limits. Verify by reverse DNS or published IP ranges, not by user agent alone, since the string is easy to fake.
- Reduce the cost of each request with page caching, so normal crawling stays under the limit.
- Reduce the number of crawlable URLs. Endless filter, search and calendar URLs multiply requests. Block the wasteful patterns in robots.txt.
- Raise the limit if your host allows it, or move to a plan that fits your traffic.
If you are the one being limited, for example when a tool crawls your own site and gets 429s, lower its speed and concurrency.
For planned downtime, a 503 with Retry-After is the clearer signal. Use 429 for what it means: too many requests from this client.
Common questions
Does a 429 error hurt SEO?
Briefly, no. Google slows down and retries. If crawlers keep receiving 429s for days, pages are refreshed less often and can eventually be removed from the index.
How long does a 429 last?
As long as the rate limit window that triggered it. The Retry-After header, when present, states how long to wait. Limits commonly reset within seconds or minutes.
Is 429 a client error or a server error?
By its number it is a client error. Google's crawlers nevertheless treat it like a server error, as a signal that the site is overloaded.