Skip to content

Weekly usage % jumps 18pp when plan_type flips pro -> prolite despite only 26M tokens #21216

Open

Description

@gsusI

What version of Codex CLI is running?

codex-cli 0.128.0

What subscription do you have?

Pro

Which model were you using?

gpt-5.5 xhigh

What platform is your computer?

Darwin 25.5.0 arm64 arm

What terminal emulator and version are you using (if applicable)?

VSCode

What issue are you seeing?

All times below are Europe/London (BST).

Update: likely tied to subscription tier flip

After rechecking the local .codex logs, the anomalous jump coincides exactly with the rate-limit metadata changing from plan_type: pro to plan_type: prolite.

Snapshot (Europe/London) plan_type 5h used Weekly used Weekly reset
2026-05-05 16:44:41 BST pro 1% 9% 2026-05-12 05:02:46 BST
2026-05-05 16:45:12 BST prolite 13% 27% 2026-05-12 05:02:46 BST
2026-05-05 17:46:50 BST prolite 1% 0% 2026-05-12 17:45:25 BST

This changes the likely diagnosis: the anomaly appears related to an account/tier transition rather than a random arithmetic error in one hourly row. The account was reportedly downgraded from Pro 20x to Pro 5x and later restored to Pro 20x; after restoration, the weekly meter returned to 0% with a new weekly reset timestamp.

The original anomaly still looks real. During the prolite interval, the weekly meter behaved as if a much smaller quota/denominator was active. The local logs do not prove the exact denominator was Plus/1x, but the token math still rules out the observed 18pp jump being caused by the recorded token volume.

The Bug

Weekly usage spikes from 9% → 27% (an 18 percentage point jump) between 15:00 and 16:00, but the token count for that hour is only 26,338,028 — roughly 21× too small to explain the jump.

The Numbers Don't Add Up

Time Weekly Used Tokens (cumulative)
15:00 9% ~279,382,735
16:00 27% ~279,382,735 + 26,338,028

If 279M tokens ≈ 9%, implied weekly quota ≈ 3.1B tokens.

An 18pp jump on that denominator requires ~558M tokens in one hour.

Actual tokens shown for that hour: 26.3M — a 20× discrepancy.

Secondary Anomalies

  • 12:00 — row missing entirely from hourly breakdown
  • 07:00 — has token count but no weekly usage snapshot

What steps can reproduce the bug?

  1. Observe the hourly usage table for a day with significant API activity
  2. Compare the weekly usage % column against the cumulative token count column at each hour
  3. Look at the 15:00 → 16:00 transition: usage jumps from 9% to 27%, but the delta token count for that hour is only ~26M
  4. Do the math: the jump implies ~558M tokens consumed in that hour — the table says 26M

Thread ID: 019df8ef-78e8-7620-bbc7-1e56fb1b9f7e

What is the expected behavior?

Weekly usage % should be strictly consistent with cumulative token counts at every hour. A 26M token hour on a ~3.1B token weekly quota should move the needle by ~0.8 percentage points, not 18.

Additional information

No response

Activity

  1. added
    bugSomething isn't working
    on May 5, 2026
  2. added
    CLIIssues related to the Codex CLI
    rate-limitsIssues related to rate limits, quotas, and token usage reporting
    on May 5, 2026
  3. gsusI commented on May 5, 2026

    @gsusI
    Author

    Additional data from the same local .codex logs, grouped by Europe/London hour. Weekly usage comes from payload.rate_limits.secondary.used_percent (window_minutes: 10080, limit_id: codex). Remaining = 100 - used.

    Update after recheck: this table spans a rate-limit metadata change. Last pre-jump snapshot is 2026-05-05 16:44:41 BST with plan_type: pro, 5h used 1%, weekly used 9%. First post-jump snapshot is 2026-05-05 16:45:12 BST with plan_type: prolite, 5h used 13%, weekly used 27%, and the same weekly reset timestamp (2026-05-12 05:02:46 BST). Later, at 2026-05-05 17:46:50 BST, weekly used returns to 0% with a new weekly reset (2026-05-12 17:45:25 BST).

    Hour Total tokens Input Cached input Output Reasoning Weekly used Weekly remaining Snapshot
    05:00 3,439,440 3,420,739 3,144,960 13,734 4,967 0% 100% 05:52:00
    06:00 975,214 965,370 891,520 7,944 1,900 0% 100% 06:22:47
    07:00 2,238,646 2,229,916 2,046,848 7,260 1,470 n/a n/a n/a
    08:00 77,474,666 77,145,986 74,453,248 235,438 93,242 2% 98% 08:59:59
    09:00 49,007,990 48,791,235 46,691,968 154,718 62,037 4% 96% 09:59:27
    10:00 53,488,352 53,288,511 51,019,776 142,246 57,595 4% 96% 10:59:50
    11:00 86,417,512 86,204,994 84,342,400 159,744 52,774 8% 92% 11:55:28
    13:00 166,680 166,130 3,456 401 149 8% 92% 13:07:13
    14:00 566,632 560,392 541,056 4,212 2,028 9% 91% 14:52:02
    15:00 5,607,603 5,544,858 5,301,376 42,098 20,647 9% 91% 15:59:56
    16:00 26,338,028 26,297,952 25,941,504 30,910 9,166 27% 73% 16:59:52
    17:00 25,774,334 25,719,294 25,359,872 41,576 13,464 28% 72% 17:36:31

    The 15:00 -> 16:00 hourly-row jump remains the clearest anomaly: weekly used moves 9% -> 27% while that hour has 26.34M total tokens. Of that, 25.94M is cached input, leaving only 356,448 uncached input tokens plus 40,076 output/reasoning tokens. So if the weekly meter is expected to track anything close to non-cached or billable token consumption, the mismatch is even larger than the raw-total comparison suggests.

    The earlier secondary anomalies are still visible in this snapshot:

    • 07:00 has token usage but no weekly snapshot in the local logs.
    • 12:00 has no token events / no row in the hourly breakdown.
  4. gsusI commented on May 5, 2026

    @gsusI
    Author

    5-minute split for the anomalous 16:00 hour (Europe/London). Weekly usage is the last observed rate_limits.secondary.used_percent inside each bucket.

    Recheck: the exact pivot is between 16:44:41 and 16:45:12. At 16:44:41, metadata is plan_type: pro, 5h used 1%, weekly used 9%. At 16:45:12, metadata is plan_type: prolite, 5h used 13%, weekly used 27%, same weekly reset timestamp. The table below uses the last observed snapshot inside each 5-minute bucket, so the 16:45-16:49 row shows snapshot 16:49:58.

    Period Total Input Cached Uncached Output Reasoning Weekly used Snapshot
    16:00-16:04 4,259,450 4,256,252 4,240,640 15,612 2,601 597 9% 16:04:52
    16:05-16:09 3,857,352 3,854,913 3,841,408 13,505 2,134 305 9% 16:09:36
    16:10-16:14 1,444,255 1,443,211 1,438,208 5,003 963 81 9% 16:14:49
    16:15-16:19 1,490,037 1,487,328 1,417,344 69,984 2,101 608 9% 16:19:32
    16:20-16:24 1,444,982 1,443,058 1,433,472 9,586 1,544 380 9% 16:24:28
    16:25-16:29 1,390,439 1,389,692 1,385,088 4,604 696 51 9% 16:29:50
    16:30-16:34 1,277,605 1,276,943 1,273,088 3,855 624 38 9% 16:34:38
    16:35-16:39 1,272,731 1,272,065 1,174,784 97,281 620 46 9% 16:39:46
    16:40-16:44 1,214,623 1,213,990 1,210,112 3,878 604 29 9% 16:44:41
    16:45-16:49 2,577,600 2,569,441 2,508,416 61,025 5,777 2,382 27% 16:49:58
    16:50-16:54 4,551,999 4,535,178 4,468,096 67,082 12,248 4,573 27% 16:54:31
    16:55-16:59 1,556,955 1,555,881 1,550,848 5,033 998 76 27% 16:59:52

    Key point: the bucket where the meter jumps (16:45-16:49) has only 2.58M total tokens, of which 2.51M are cached input. It has only 61k uncached input and 8.2k output+reasoning, yet weekly usage jumps 18 percentage points. The newly checked metadata suggests the trigger is the pro -> prolite tier/denominator change, not the recorded token volume.

  5. changed the title [-]Weekly usage % jumps 18pp at 17:00 despite only 26M tokens — impossible math[/-] [+]Weekly usage % jumps 18pp at 16:00 despite only 26M tokens — impossible math[/+] on May 5, 2026
  6. changed the title [-]Weekly usage % jumps 18pp at 16:00 despite only 26M tokens — impossible math[/-] [+]Weekly usage % jumps 18pp when plan_type flips pro -> prolite despite only 26M tokens[/+] on May 5, 2026
  7. gsusI commented on May 5, 2026

    @gsusI
    Author

    Rechecked after account/subscription correction. The issue now looks like a tier/window denominator problem.

    Observed local .codex rate-limit snapshots (Europe/London):

    Snapshot plan_type 5h used Weekly used Weekly reset
    2026-05-05 16:44:41 BST pro 1% 9% 2026-05-12 05:02:46 BST
    2026-05-05 16:45:12 BST prolite 13% 27% 2026-05-12 05:02:46 BST
    2026-05-05 17:46:50 BST prolite 1% 0% 2026-05-12 17:45:25 BST

    User-side account context: subscription was unexpectedly downgraded from Pro 20x to Pro 5x, then restored to Pro 20x. After the restoration, the weekly meter returned to 0% and the weekly reset timestamp changed.

    So the original anomaly still appears real, but the likely root cause is more specific: while the local logs reported plan_type: prolite, the weekly/5h percentages seem to have been computed against a much smaller effective quota/denominator than expected. The local logs do not prove the exact denominator was Plus/1x, but the observed token volume still cannot explain a 9% -> 27% weekly jump by itself.

  8. agent-pipe-shared commented on Aug 2, 2026

    @agent-pipe-shared

    i am on pro 20x plan and paying so much but CLI says prolite and my weekly limit just deplets sooo fast. That such a bad experience and also support seems not to want to work :( canceled the plan already:

    ////////// AI slop input: ////

    Additional reproduction on Codex CLI 0.146.0 and desktop

    I am seeing a closely matching entitlement and quota-denominator mismatch.

    Account and entitlement evidence

    • Billing confirms the highest individual ChatGPT Pro 20x tier.
    • The subscription remains active until a scheduled downgrade to Plus on August 13, 2026.
    • Codex CLI /status nevertheless reports the account as Pro Lite.
    • The public Codex source maps the backend value prolite directly to the displayed name Pro Lite; this is therefore not a user-entered label.
    • Both Codex CLI and the desktop usage page report the same general weekly state:
      • 17% remaining
      • reset on August 8
    • The previously displayed reset was approximately August 3 and moved before that date was reached.
    • An August 8 seven-day window implies that approximately 83% of the effective weekly allowance was consumed within roughly one day.

    Workload evidence

    • Primary model: GPT-5.6 Terra
    • Reasoning: high
    • Fast Mode: disabled
    • The separate GPT-5.3-Codex-Spark weekly allowance remains at 100%.

    This does not look like a CLI-only display problem because the desktop usage surface reports the same percentage and reset date. It appears consistent with the smaller effective quota denominator described in this issue when plan_type changes from pro to prolite.

    Support failure and immediate impact

    I submitted the complete evidence through OpenAI's support chat and explicitly requested escalation as an account-entitlement mismatch. The automated support flow only replied that the case had been escalated and that a specialist might respond “in the coming days”. It supplied no case number, no human acknowledgement, and no temporary remediation, and it stopped responding to follow-up messages.

    That is not an adequate support path for the highest-priced individual plan when the potentially incorrect quota is already nearly exhausted. The account may lose access before a specialist responds, despite an active Pro 20x subscription.

    Requested action

    Please investigate whether the scheduled future downgrade caused the Codex entitlement to change prematurely from pro to prolite.

    Requested remediation:

    1. Restore the effective pro / Pro 20x Codex entitlement until the actual downgrade date.
    2. Recalculate or reset the weekly quota against the correct denominator.
    3. Provide temporary usage restoration or credits while the entitlement mismatch is investigated.
    4. Clarify whether prolite represents Pro 5x and why it is being returned for an active Pro 20x subscription.
    5. Provide a support case reference or another working escalation route for account-specific correction.

    I can provide billing evidence and unredacted account details privately. They are intentionally omitted from this public report.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingrate-limitsIssues related to rate limits, quotas, and token usage reporting

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions