4xx Client error
HTTP 429 Too Many Requests
The client has sent too many requests in a given time (rate limiting).
A 429 Too Many Requests means you've hit a rate limit: you sent more requests in a period than the server allows. It's temporary, and the fix is to slow down.
Common causes of a 429 error
- A script or app is calling an API in a tight loop without any delay.
- Many users or servers share one IP address or API key and add up to over the limit.
- A retry loop with no backoff makes the problem worse after each failure.
- A free-tier quota (per minute, hour, or day) has been used up.
- A bot-protection or WAF rule is throttling traffic that looks automated.
How to fix a 429 error
- Read the Retry-After header and wait that long before retrying.
- Retry with exponential backoff and jitter instead of hammering the endpoint.
- Cache responses and batch requests to make fewer calls.
- Check the provider's documented rate limits, and spread requests out to stay under them.
- Move to a higher plan or request a higher limit if you genuinely need more.
Frequently asked questions
How long do I have to wait after a 429?
Look for the Retry-After header: it gives the seconds to wait or a date to retry after. If it's missing, check the API's rate-limit documentation, and back off exponentially.
How should I rate limit my own API?
Return 429 with a Retry-After header, and consider RateLimit-* headers so clients can see their remaining budget. Limit per API key or user where you can, and per IP as a fallback.
Other common status codes
400 Bad Request401 Unauthorized403 Forbidden404 Not Found500 Internal Server Error502 Bad Gateway503 Service Unavailable504 Gateway Timeout
See 429 in the full searchable list, or use the HTTP Header Checker to see the status code any URL returns.