Blog · September 19, 2026 · 3 min read
Why Did My LLM Bill Spike? Five Runaways, Priced by the Hour
Four agents got stuck passing the same task back and forth. They ran for eleven days. The bill was $47,000. An LLM bill spike that size surfaced only when a billing dashboard crossed a threshold. Not a timeout, not a cap, not an alert anyone acted on. Every individual API call was valid, and the system looked healthy the whole time.
That is what an LLM bill spike actually looks like. Not a price change. A loop nobody watched.
The five ways a bill runs away
Each of these prices out in the cost calculator with the numbers already loaded, so you can swap in your own model and rate.
Two agents hand a task back and forth. Thirty requests a minute, forever. On Claude Sonnet 5 with a 20K-token context, that is $47 an hour. The dashboard symptom is flat, relentless request volume that never dips overnight.
A failing dependency meets an eager retry policy. A hundred and twenty requests a minute on GPT-5.4: $137 an hour. Look for error rate and spend climbing together — most cost dashboards show you only the second one.
A key leaks to a repo or a log. Two hundred requests a minute on Claude Opus 5 is $420 an hour, and it is someone else's workload on your invoice. The tell is traffic from a region or hour you do not operate in.
Conversation history appends every turn. A bug that never truncates turns normal traffic into five times the input tokens: $28 an hour at only five requests a minute. Request count stays flat while cost per request climbs, which is why volume alerts miss it entirely.
A batch script nobody stopped on Friday. Ten requests a minute is a trivial rate, which is exactly why this one gets missed. On GPT-5.5 Pro it is $17 an hour, or $994 by Monday morning. Low volume on an expensive model is the combination that beats volume-based alerting.
An LLM bill spike is a detection problem, not a pricing one
Take the agent loop. Same model, same tokens, same bug. Four different bills, separated only by how long it ran before someone noticed.
The same agent loop, priced by how long it ran
Claude Sonnet 5, 30 requests a minute — one bug, four detection speeds
Hourly alert
1 hour
Next morning
24 hours
After a weekend
60 hours · Fri 6pm to Mon 6am
Monthly invoice
720 hours
An hourly alert costs you $47. Finding out next morning costs $1,132. A Friday-evening start discovered Monday costs $2,830. Running until the monthly invoice costs $33,955, which is 720 times the first number, for the identical defect.
Shopping for a cheaper model moves that first number by a few percent. Detection speed moves it by three orders of magnitude. Developers keep landing on the same conclusion. One OpenAI community thread puts it plainly: logging is not enforcement, and a trace tells you what happened after the money is gone.
What to do in the first hour
Revoke before you diagnose. Rotate the key and kill the job first. A runaway bills continuously while you read logs; the loop above adds about eighty cents a minute the entire time you are investigating.
Cap at the key, not the account. An account-level ceiling stops the bleeding after the damage. Per-key and per-agent limits stop it at the thing that broke.
Set the alert you wish you had. Whatever your detection time is today, the ladder above prices it. If you cannot name that number, it is the monthly invoice.
Know your number on the ladder
PulseMeter watches spend hourly across OpenAI, Anthropic and more, and alerts on spikes, budget thresholds, and month-end projection, so a loop surfaces on the first rung instead of the last. Price your own runaway, then decide which rung you want to be standing on.
Sources: Vectara, "LangChain A2A infinite loop: $47,000 case study" — four agents looping for 11 days (November 2025), surfaced by a billing threshold rather than by any in-system limit; OpenAI Developer Community, "How are you handling runaway agent costs?" and "Has anyone actually solved runaway agent costs?" (June 2026). All per-hour figures computed from the PulseMeter cost calculator against its published price sheet, accessed 2026-09-19; each scenario runs at its preset request rate.