LiteLLM / LiteLLM

LiteLLM BudgetExceededError Phantom Redis Counter Inflation Blocks Production Users

Fix phantom BudgetExceededError caused by leaking Redis spend counters in LiteLLM proxy — real database spend near $0 but users blocked at budget limit Includes evidence for LiteLLM troubleshooting demand.

Category
LiteLLM
Error signature
Budget has been exceeded! EndUser=<id> Current cost: $52.19, Max budget: $50.0 — DB spend shows $0.001 while Redis counter reports $52 (BudgetExceededError HTTP 429)
Quick fix
Compare the failing environment with a known working setup, then change one configuration value at a time.
Updated

What this error means

Budget has been exceeded! EndUser=<id> Current cost: $52.19, Max budget: $50.0 — DB spend shows $0.001 while Redis counter reports $52 (BudgetExceededError HTTP 429) is a LiteLLM failure pattern reported for developers trying to fix phantom budgetexceedederror caused by leaking redis spend counters in litellm proxy — real database spend near $0 but users blocked at budget limit. Based on the imported evidence, treat this as a tool-specific troubleshooting page rather than a generic API error.

Why this happens

GitHub issue #27639 in BerriAI/litellm by nkhanpa-art (May 11, 2026). Reserve→finalize pipeline gap leaves orphaned budget reservations in Redis. With 4 replicas on EKS + Redis, ~6000+ end users hit intermittent 429 BudgetExceededError cycling every ~4 minutes. Cross-linked issue #28283 reports similar phantom inflation on v1.83.14-stable independent of the reservation feature. Official collaborator maltbae confirmed race condition hypothesis. Category: LiteLLM — proxy billing system bug affecting thousands of paying LLM proxy users.

Common causes

Quick fixes

  1. Confirm the exact error signature matches Budget has been exceeded! EndUser=<id> Current cost: $52.19, Max budget: $50.0 — DB spend shows $0.001 while Redis counter reports $52 (BudgetExceededError HTTP 429).
  2. Check the LiteLLM account, local tool state, and provider configuration involved in the failing workflow.
  3. Compare the failing environment with a known working setup, then change one configuration value at a time.

Platform/tool-specific checks

Step-by-step troubleshooting

  1. Capture the exact error message and the command, editor action, or request that triggered it.
  2. Check whether the failure is account/auth, quota/rate, model/provider, local runtime, or deployment configuration.
  3. Review the source evidence below and compare it with your environment.
  4. Apply one change at a time and rerun the smallest failing action.
  5. Keep the working fix documented for the team or deployment environment.

How to prevent it

Sources checked

Evidence note: GitHub issue #27639 in BerriAI/litellm by nkhanpa-art (May 11, 2026). Reserve→finalize pipeline gap leaves orphaned budget reservations in Redis. With 4 replicas on EKS + Redis, ~6000+ end users hit intermittent 429 BudgetExceededError cycling every ~4 minutes. Cross-linked issue #28283 reports similar phantom inflation on v1.83.14-stable independent of the reservation feature. Official collaborator maltbae confirmed race condition hypothesis. Category: LiteLLM — proxy billing system bug affecting thousands of paying LLM proxy users.

FAQ

What should I check first?

Start with the exact Budget has been exceeded! EndUser=<id> Current cost: $52.19, Max budget: $50.0 — DB spend shows $0.001 while Redis counter reports $52 (BudgetExceededError HTTP 429) text and the smallest action that reproduces it.

Can I ignore this error?

No. Treat it as a failed LiteLLM workflow until the root cause is understood.

Is this guaranteed to have one fix?

No. The imported evidence supports the troubleshooting path above, but tool behavior can vary by account, plan, version, provider, and local configuration.

How do I know the fix worked?

Rerun the same command, editor action, or request. The fix is working when that action completes without Budget has been exceeded! EndUser=<id> Current cost: $52.19, Max budget: $50.0 — DB spend shows $0.001 while Redis counter reports $52 (BudgetExceededError HTTP 429).