How Codex & Claude reset odds are calculated
As of 2026-09-24, every reset-probability number this site shows — and the same numbers shown by codexreset.ai, claudereset.org, and howtok.net/resets — comes from whenreset.app, the matrix's single forecast source. These are statistical estimates, not predictions: neither OpenAI nor Anthropic has ever committed to a reset cadence.
Current numbers, via whenreset.app
Pulled from https://whenreset.app/api/forecast at the time of this build; the numbers on this page refresh once more in your browser against whenreset.app's own live (5-minute-cached) values.
Codex
| whenreset.app's own backtest | 24h Brier | 48h Brier | Cases |
|---|---|---|---|
| climatology (fraction of historical gaps <= horizon, unwindowed) | 0.1289 | 0.1961 | 1233 |
Claude
These are estimates, not predictions — vendors have never committed to a reset cadence. Numbers, model name, and backtest scores above all come from whenreset.app; this site never substitutes a number it computed itself. See whenreset.app's own method & backtest page for the full derivation.
Independent backtest (research only — not used for the numbers on this site)
Before 2026-09-24 this site ran its own three probability formulas and picked whichever backtested best on this product's own recorded history. That engine selection is still recomputed on every build and published below for comparison — it no longer drives any number shown anywhere on this site, including the "Current numbers" section above.
Formula
Reset events for the product are deduped by date first (multiple announcements on the same day only count once). Three methods are computed from that deduped history:
Memoryless model
Takes the mean of the most recent 10 deduped gaps (in days), converts it to an average gap in hours (avg_gap_h), and treats a reset as a constant-odds ("memoryless") process:
P(reset within h hours) = 1 − e−h / avg_gap_h
This number deliberately does not depend on how long it's already been since the last reset — that's the entire point of "memoryless": the odds of a reset in the next 24 hours are the same the day after a reset as they are a month later, under this model. With fewer than 2 historical intervals, this candidate has no result.
Conditional model
Turns the most recent 30 deduped gaps into a lookup table indexed by how many days you've already waited (t, today minus the most recent reset date). The probability of a reset within h more days (h = 1, 2, or 7):
P(reset within h days | already waited t days) = #{historical intervals g : t < g ≤ t+h} ÷ #{historical intervals g : g > t}
The denominator is how many historical intervals held out at least t days without a reset; the numerator is how many of those then reset within h more days. With fewer than 5 historical intervals total, this candidate has no result. There's a second guardrail too: even with enough intervals overall, if the denominator — intervals that lasted longer than the current wait — is below 5, no result is scored either; something like 1-out-of-1 would only mislead.
Climatology (base rate) model
The plain historical frequency of a reset landing on any given day — total deduped reset days divided by the number of days spanned since the first recorded one — extrapolated to each horizon as daily_rate × h days, capped at 100%. Uses the full history, no window. With fewer than 2 distinct dated events, this candidate has no result. This is also the formula whenreset.app itself currently publishes (see the "Current numbers" section above) — the two are independent implementations of the same public method, not the same computation.
Banked resets are excluded from every method above — only global (immediate) resets count toward the historical intervals, since a banked credit is issued now but redeemed later and would understate how long the wait for an actual reset has been.
This site's own walk-forward backtest
Every time this site rebuilds, it re-runs a walk-forward backtest: for each day in a product's own recorded history, using only data available strictly before that day, it asks all three methods above for the probability of a reset landing within 24 hours and within 48 hours of that day, then scores every method's prediction against what actually happened (Brier score — lower is better). This is not a predictive model itself — it's a historical scoring exercise used only to evaluate the three formulas against each other.
Codex
lowest combined (24h+48h)/2 Brier wins: memoryless 0.1974, climatology 0.2083, conditional 0.2172
| Method | 24h Brier | 48h Brier | Days scored |
|---|---|---|---|
| memoryless · lowest combined Brier | 0.158 | 0.2368 | 229 |
| conditional | 0.1689 | 0.2654 | 229 |
| climatology | 0.163 | 0.2537 | 229 |
Claude
lowest combined (24h+48h)/2 Brier wins: climatology 0.0430, memoryless 0.0442, conditional 0.0614
| Method | 24h Brier | 48h Brier | Days scored |
|---|---|---|---|
| memoryless | 0.0231 | 0.0654 | 53 |
| conditional | 0.0463 | 0.0765 | 53 |
| climatology · lowest combined Brier | 0.022 | 0.0639 | 53 |
Recomputed from scratch on every build, over this product's own real recorded history. It is not used to pick any number shown on this site — see the "Current numbers, via whenreset.app" section above for that.
Limitations
- Small sample: each product currently has at most 30 usable historical intervals to work with (the memoryless model uses the last 10), so backtest scores shift as the sample changes — products with fewer recorded intervals are less stable.
- Cadence can change: reset policy, release schedules, and incident response can all shift without any advance notice, so a past frequency doesn't necessarily hold going forward.
- Resets tend to track releases or incidents, not a clock: a new model, an incident recovery, or a milestone can all trigger an extra reset, and none of that shows up in a plain day-count.
- This is a frequency estimate over past announcements, not a forecast of anything not yet announced.
This is not a predictive model — it's an empirical frequency estimate. Neither OpenAI nor Anthropic has committed to a fixed reset cadence, so treat it as a rough reference, never a timetable.
Frequently asked questions
How is this percentage calculated?
It isn't calculated by this site. As of 2026-09-24, every reset-tracking site in this matrix (this one, codexreset.ai, claudereset.org, whenreset.app, howtok.net) shows the same 24-hour/48-hour/7-day reset-probability numbers, sourced live from whenreset.app's public API — so a visitor gets one consistent answer instead of a different guess on every site. whenreset.app's own method page explains the formula (a historical base-rate model called climatology) and its public walk-forward backtest.
Is this a prediction? How accurate is it?
No — it's a statistical estimate from historical announcement intervals, not a prediction. Neither OpenAI nor Anthropic has committed to a fixed reset cadence, and resets tend to track releases or incident response rather than a clock, so treat this as a rough reference, not a schedule.
Why does a product sometimes show 'Estimate unavailable right now'?
Either whenreset.app's API didn't have enough historical data yet to estimate a percentage for that product, or this site's own build couldn't reach whenreset.app when it last rebuilt. Either way, this site never substitutes a number it computed itself — it shows the same unavailable state whenreset.app itself would show, or nothing at all rather than a guess.
Do banked resets count toward the sample the same as an immediate reset?
No — whenreset.app's sample only looks at global (immediate) resets. A banked credit is issued to the user and redeemed later rather than clearing usage right away, so including it as if it were the reset itself would understate how long the actual wait has been. See each product's history table on this site for which announcements were banked.
Didn't this site used to calculate its own percentage?
Yes, through 2026-09-24. This site (and its sister trackers) used to each run their own probability engine independently, which meant the same question could get three different answers depending on which site you checked. The whole matrix now reads the same numbers from whenreset.app, whose walk-forward backtest against real recorded history is the most tested of the bunch. This site's own research backtest is still published below for comparison, but it no longer drives any number shown on this site.
Back to Codex reset history · Back to Claude reset history · All tools