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

See also

Last updated: August 17, 2026