RateLimit-Reset
The unofficial RateLimit-Reset response header indicates the number of seconds until the current rate limit window resets.
Usage
RateLimit-Reset is one of three separate rate limit HTTP headers introduced in earlier IETF drafts. Together with RateLimit-Limit and RateLimit-Remaining, these headers provide clients with complete visibility into their rate limit status.
The value is a non-negative integer representing seconds
until the window resets. This is a deliberate design choice
in the original IETF draft. The older, non-standard
X-RateLimit-Reset header often carried a Unix timestamp
(seconds since epoch), which caused confusion across time
zones and clock synchronization issues. The standardized
RateLimit-Reset uses a relative delta in seconds,
similar to the delta-seconds format in
Retry-After.
Note
RateLimit-Reset expresses time as seconds from
now, not as a Unix timestamp. Some legacy
implementations under the X-RateLimit-Reset name
send epoch timestamps. The standardized header
always uses a relative value.
Note
The IETF draft
(draft-ietf-httpapi-ratelimit-headers) expired
without publication as an RFC. The draft's final
direction moved toward a single RateLimit header
paired with RateLimit-Policy instead of three
separate headers. The RateLimit-Limit,
RateLimit-Remaining, and RateLimit-Reset names
remain widely deployed as de facto conventions
from earlier draft versions.
When the RateLimit-Remaining value reaches zero, the RateLimit-Reset value tells the client exactly how long to wait before the quota refreshes. This avoids unnecessary 429 responses.
Values
seconds
A non-negative integer indicating how many seconds remain
until the rate limit window expires and the quota resets.
A value of 0 means the window is about to reset. The
value decreases as time passes within the current window.
Example
A response from CircleCI showing the rate limit window resets in 1 second. The client has 49 requests remaining out of a 50-request quota.
RateLimit-Limit: 50
RateLimit-Remaining: 49
RateLimit-Reset: 1
A response where the quota is exhausted. The window resets in 60 seconds. The client needs to wait before sending additional requests to avoid a 429 response.
RateLimit-Limit: 10
RateLimit-Remaining: 0
RateLimit-Reset: 60
An API response showing the window resets in 306 seconds (roughly 5 minutes). The Date header provides the absolute timestamp for reference.
Date: Thu, 27 Feb 2026 12:00:00 GMT
RateLimit-Limit: 200
RateLimit-Remaining: 128
RateLimit-Reset: 306
See also
- RateLimit Fields for HTTP (draft-ietf-httpapi-ratelimit-headers)
- RateLimit-Limit
- RateLimit-Remaining
- Retry-After
- Date
- 429
- HTTP headers