Retry-After
When a server is temporarily unavailable or a rate limit has been exceeded, the Retry-After response header indicates how long a client needs to wait before making a follow-up request.
Usage
The Retry-After header appears in responses where the server needs the client to delay before retrying. The header is commonly paired with three status codes:
- 503 Service Unavailable: the server is temporarily down for maintenance or overloaded. The Retry-After value signals when the service expects to be available again.
- 429 Too Many Requests: the client exceeded a rate limit. The Retry-After value tells the client when the rate limit window resets.
- 3xx redirect: a scheduled redirect where the server suggests a minimum wait time before the client follows the redirect.
The header accepts two formats: a delay in seconds (delta-seconds) or an absolute HTTP-date. When using seconds, the value is a non-negative integer representing the number of seconds to wait. When using an HTTP-date, the value follows the IMF-fixdate format.
Well-behaved clients and crawlers honor this header to avoid overwhelming a recovering server.
Values
Delta-seconds
A non-negative integer specifying the number of seconds the client needs to wait before retrying the request.
Retry-After: 120
HTTP-date
An absolute date and time in IMF-fixdate format after which
the client is free to retry. The date uses GMT and follows the
format Day, DD Mon YYYY HH:MM:SS GMT.
Retry-After: Sat, 31 Oct 2026 18:00:00 GMT
Example
A server responding with 503 during a maintenance window tells the client to wait 3600 seconds (one hour) before retrying.
HTTP/1.1 503 Service Unavailable
Retry-After: 3600
An API rate limiter responding with 429 provides an absolute date when the rate limit resets. The client pauses requests until the specified time.
HTTP/1.1 429 Too Many Requests
Retry-After: Sat, 31 Oct 2026 12:30:00 GMT
A scheduled redirect with 301 includes a delay to prevent immediate retry storms from multiple clients.
HTTP/1.1 301 Moved Permanently
Location: https://new.example.re/resource
Retry-After: 60