[BUG] Fable 5 on Max: "You've hit your monthly spend limit" despite Unlimited spend limit and meters at 5% session / 41% weekly
Open 💬 0 comments Opened Jul 15, 2026 by ciaran-finnegan
Environment
- Claude Code version: 2.1.201, running inside the Claude desktop app for macOS 1.21459.0 (f7518f) (build 2026-07-14)
- OS: macOS 26.1 (Darwin 25.1.0), Apple Silicon
- Model: Fable 5 (
claude-fable-5) - Plan: Claude Max (20x) (subscription auth, not API key), usage credits enabled
- Usage pattern: heavy multi-agent orchestration via the
ultracodekeyword / Workflow tool — sessions regularly fan out many parallel subagents
Describe the bug
Mid-session, requests fail with a "Usage limit reached" error chip whose expanded text reads:
You've hit your monthly spend limit · raise it at claude.ai/settings/usage
But the settings page it points at (Settings → Usage, "Last updated: just now") shows no limit anywhere near reached at that moment:
- Current session: 5% used (resets in 4 hr 42 min)
- Weekly, all models: 41% used (resets Mon 2:59 AM)
- Weekly, Fable: 41% used (resets Mon 2:59 AM)
- Usage credits: ON — A$237.69 spent, resets Aug 1, spend limit shows "Unlimited"
So the error claims a monthly spend limit was hit while the spend limit is set to Unlimited, and none of the session/weekly meters are close to exhausted.
Intermittent — retry succeeds
The error fired twice in one session ~15 minutes apart, and in both cases clicking try again / continue resumed the run successfully with no settings change and no wait. Whatever check rejects the request is transient — the account state (spend, meters) is the same seconds later when the retry succeeds.
Expected behavior
- With usage credits enabled and the spend limit set to Unlimited, requests should not be rejected for a "monthly spend limit".
- If some other constraint is actually being hit (burst/concurrency rate limit from parallel subagent traffic on
claude-fable-5, or a transient billing-check failure), the error should say that — the current message points the user to a settings page that contradicts it, which makes the state impossible to reason about.
Context that may be relevant
- The sessions triggering this run ultracode multi-agent workflows (Workflow tool fanning out parallel subagents), so the request pattern is bursty — many concurrent requests on
claude-fable-5. A rate/concurrency 429 or a flaky spend-limit lookup being rendered as "monthly spend limit" would fit the intermittent behaviour.
Evidence / diagnostics
- Screenshots (error chip with expanded message, and the Settings → Usage page captured at the same time) attached in a comment below.
- Note for triage: the error text is not persisted anywhere locally — it does not appear in the session transcripts under
~/.claude/projects/**.jsonlnor in~/Library/Logs/Claude/*.log, so there is nothing local to grep after the fact. It appears to be rendered directly from the API error response at request time. Persisting these errors to the session transcript/logs would make reports like this one much easier to evidence.
Possibly related
- #61012 (usage limit reached without active use, Pro plan)
- #74195 (usage meter jumping to 100%)