// http 4xx · client error

HTTP 429 Too Many Requests

The client has sent too many requests (rate limited).

What HTTP 429 Too Many Requests means

429 Too Many Requests means the client has been rate-limited for sending too many requests in too short a window. The response often includes a `Retry-After` header telling you how long to wait before trying again.

Which category is it?

429 is a 4xx code — Client error. 4xx means the request has a problem the client must fix — bad syntax, missing authentication, or a resource that isn't there. It's the caller's responsibility.

Common causes

  • Exceeding an API's rate limit
  • A retry loop firing too aggressively
  • Missing backoff between requests

How to fix it

  • Respect the `Retry-After` header and back off
  • Add exponential backoff and jitter to retries
  • Cache responses to reduce request volume

Example 429 response

HTTP/1.1 429 Too Many Requests
Retry-After: 30
X-RateLimit-Remaining: 0
Content-Type: application/json

{"error":"rate limit exceeded"}

How to diagnose a 429

  1. Read the Retry-After header. It says how many seconds (or until which date) to wait before sending another request.
  2. Look for rate-limit headers such as X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset (names vary by provider) and compare them with your request rate.
  3. Check your own code for loops or parallel workers that retry immediately. Retries without a delay make rate limiting worse.
  4. Find out whether the limit applies per IP, per API key or per user, and whether several services share the same key.

429 compared with similar codes

  • 503: 503 means the server is unavailable for everyone. 429 means this particular client sent too many requests.
  • 403: 403 refuses access outright. 429 is a temporary limit that clears after a wait.

429 Too Many Requests: common questions

How do I fix a 429 Too Many Requests error?

Slow down and respect Retry-After. Add exponential backoff with jitter to retries, cache responses you reuse, and batch requests where the API allows it.

Is a 429 permanent?

No. It lasts until the rate-limit window resets, which can be seconds or minutes depending on the provider.

As a visitor, why am I seeing 429 on a website?

The site or its CDN has rate-limited your IP, often because of rapid page loads, automated tools, or a shared network. Wait a few minutes and try again.

Other client error (4xx) codes