What the platform controls actually protect
The OpenAI console’s billing settings let you bound total monthly spend and get notified at thresholds along the way. This protects exactly one thing: your card, against the account level worst case. Set it, generously above realistic spend, and treat it like a circuit breaker in a house: essential, and never the thing you want doing routine regulation. The specifics of the controls move over time, so verify the current options in your own console rather than trusting any article, including this one.
The three failures of org level as your only control
- No attribution: the budget cannot say which user or feature is consuming it, so a threshold notification starts an investigation instead of ending one, the diagnosis gap from the warning signs article.
- Shared blast radius: a hard limit that trips stops your whole product, every paying customer down because one free user looped, the abuse asymmetry described in the free tier survival guide.
- Speed: a runaway agent burns at machine speed; the useful reaction window is minutes, per spike detection.
The per user layer
Wrap your OpenAI client with wk.chat() and every call carries a user, a feature, and a plan. On top of that stream: velocity alerts (default 50,000 tokens per user in 5 minutes) to Slack or email within minutes of a runaway starting, margin alerts when a paying user goes unprofitable, and per plan monthly caps enforced before each call, blocking with a catchable error or silently downgrading to a cheaper model, the choice covered in block or downgrade. The incident stays contained to the user causing it; everyone else’s calls proceed untouched. Cost figures are recomputed server side at current prices (methodology), so the numbers driving the alerts match what OpenAI will actually bill.
The layered setup, concretely
Platform budget set high as the backstop. Per plan caps at the boundary each tier’s unit economics can absorb. Velocity alerts on defaults. Margin alerts at breakeven. That is one console setting on OpenAI’s side and about ten minuteson yours, and it converts “the bill will tell us next month” into containment that works while you sleep.
FAQ
Does OpenAI have budget alerts?
Yes, at the organization level: the platform’s billing settings let you configure a monthly budget and notification thresholds, and usage limits that stop the whole account. Check your console for the current controls since OpenAI iterates on them. What the platform cannot do is distinguish your users: the budget is one number for your entire org, so it protects your card, not your margins.
Why is an org level budget not enough for a SaaS?
Because your risk is per user, not per account. One free tier user running a loop can eat the budget that your thousand profitable users were supposed to share, and when the org level limit trips, it stops everyone, an outage for your paying customers caused by one abuser. Per user budgets contain the incident to the user causing it.
How do I set per user budget alerts and limits for OpenAI usage?
Track usage per user and enforce before the call: Weckr wraps your OpenAI client in two lines, attributes every call to a user, alerts on abnormal burn (default 50,000 tokens in 5 minutes) and on users going unprofitable, and enforces per plan monthly caps by blocking the call or downgrading it to a cheaper model. The org level OpenAI budget then becomes your backstop, not your only line.
Should I still set the OpenAI platform budget if I use per user caps?
Yes, absolutely, layered defense: the platform budget is the final backstop against anything that escapes application level controls, including bugs in your own code. Set it above your realistic monthly spend so it never trips in normal operation, and let per user caps handle the real distribution of risk below it.
How fast do alerts fire compared to provider billing notifications?
Weckr’s velocity alert evaluates a 5 minute window as calls are logged, so a runaway fires an alert to Slack or email within minutes of starting. Provider billing thresholds are coarser by nature, they watch aggregate spend crossing fixed lines. For a loop burning at machine speed, the difference between minutes and later is most of the bill.
Keep reading
Backstop plus containment
Keep the org budget, add the per user layer. Free for 50,000 requests a month, no card, and the alert and cap views are on the demo right now.