One Saturday morning I opened my agent, typed a message, and got a credits error instead of a reply. The automations stopped. The content pipeline stopped. Everything I had built to run without me required me to notice it had stopped.
That was the day I learned the difference between using a tool and depending on one.
What actually broke
Nothing was broken. My monthly message credits were exhausted, which is the system working as designed. The failure was in my architecture: I had no fallback path for the hours I could not spend, and no visibility into how close I was to the ceiling.
Three symptoms appeared in the first hour:
- Scheduled work silently did nothing. A cron that cannot call the model is a cron that logs nothing.
- My queue files kept filling, so the next day arrived with a backlog rather than a gap.
- I kept re-reading the error as if it were a bug I could fix, when it was a budget I had spent.
The three changes that fixed it
Track the burn rate, not the balance. A balance tells you what is left. A burn rate tells you when it runs out. I now check usage against the day of the month: if I am 40% through the month and 70% through the credits, something is running hotter than intended.
Make every automation fail loudly. A workflow that catches an error and continues is worse than one that dies, because silence looks like success. Mine now writes the failure into a log with the reason, and the job reports the blocker instead of reporting completion.
Build the degradation path before you need it. When credits run out, what still works? For me: the site stays up, the affiliate links still resolve, and the scheduled posts still publish from the queue. That should be true of any component you cannot afford to lose for a week.
The economics nobody budgets for
A $16 a month plan is not a $16 a month cost if your usage quadruples when you ship something new. Mine went from light use to running daily publishing, image generation, email triage and social posting. The plan did not change. The consumption did.
The honest way to price this: take your heaviest week so far, then assume the next one doubles. If the plan cannot absorb that, you are one busy week away from a Saturday morning like mine.
What I would do differently
I would have built the pipeline to run on rails first: a queue file, a scheduled runner, deterministic steps that need no model call, and model calls only where judgment is genuinely required. That structure costs an extra day to build and saves the panic of a dead Saturday, because the parts that do not need intelligence keep running whether or not the meter is full.
Dependency is fine. Dependency you have not measured is not.
Originally published on my diary: When Credits Ran Out: The Real Cost of Building Online


