Sprites suspended with zero warning - and no clarity on how/when they are unblocked via an auto-charge

My Sprites stopped working with no advance warning, and there was no clear way to know when or how they’ll come back online, short of guessing at some unseen end-of-month invoice event.

This looks like the same underlying mechanic described in Prepaid budget used up, rolled “directly” into billing and Organization disabled, but with a wrinkle I haven’t seen written up: no notice at all, before or after.

I’ve been running Sprites for about six months on the initial $30 credit grant. I love them! Thank you!

But after a stretch of heavier usage, the account went from working to completely blocked with no notice beforehand: no email saying I’d crossed the $30 grant, nothing about an outstanding provisional invoice for a period that hadn’t even closed (current billing period is July 1-Aug 1, and this happened well before month-end). The first sign anything was wrong was the account simply not working. The billing page showed $0 available credit, $25.29 due, and a saved card set to “Charged automatically” that apparently never got the chance to fire before service was cut.

That’s the part I don’t understand: why does the account get suspended before the automatic charge on file is attempted, rather than that charge just firing at the point the credit runs out? If the card is “Charged automatically,” why not trigger it right there instead of blocking the account and leaving it to some unspecified future invoice event?

Buying just some credit didn’t restore service either. I bought the $25 minimum expecting that to unblock things immediately - instead it just applied against the existing shortfall (which I now see is consistent with flyio-support’s explanation in the “Prepaid budget” thread above: credits pay down outstanding balance first, they’re not a way to “unlock” the account). I was still short and still blocked, so I was forced to buy the minimum $25 again ($50 total) to cover roughly $26.29 of actual usage. My sprites are working again, but the outage and confusion was frustrating.

Tentative advice for anyone else who hits this: if you’re blocked, you’ll need to at least clear the amount due.

Now it’s unclear when it might stop again.

Would really appreciate clarity from the team on:

  1. Is there supposed to be any email or alert before an account gets blocked this way
  2. Why does suspension happen before the automatic card charge is attempted, rather than the charge simply firing at that point?
  3. Once blocked, is there any way to know when/whether service resumes automatically, versus needing to manually top up or email billing@fly.io?
  4. When might this happen again?

I hope this can all be made much clearer, so you have more productive and happy customers for a cool service.

@nealmcb Could you clarify very specifically what you mean by “blocked”? What API responses/sprite output were you seeing, exactly?

Sprites usage is billed in arrears, so currently, you would not be blocked mid-month unless you had an unpaid invoice that is due (i.e. not a mid-month draft invoice). If you leave an invoice unpaid, at a certain point your account is marked as past due and you will be prevented from taking certain actions. That does not appear to be what happened in your case (I’ve had a look at your invoices).

From everything I can see, I don’t believe you were limited due to a mid-month invoice balance, not least because we don’t currently have any mechanisms that do that.

Sorry - “blocked” was a poor wording choice. What I observed was that my sprite stopped working. Claude’s /remote-control connection became unresponsive and it failed to respond to SSH in the middle of some operations. I went to the billing page, saw a $0 credit balance, saw an invoice (with confusing dates) and concluded that something needed to be paid.

Perhaps there was just an outage, stopping my sprite, and I jumped to the wrong conclusion? But the billing page remains confusing. Seeing a “$26.29” bill sure made it seem like I already owed something.

Do you send any notice that the $30 credit has been used up and billing is beginning to accrue? I would expect an email for that.

Thanks for the quick response.

This sounds like the sprite possibly switched to warm/cold state. This docs page might be useful for you: Keeping a Sprite Running | Sprites

Are you referring to this component of the billing dashboard? i.e. https://fly.io/dashboard/ORG_SLUG/billing:

And you saw $26.29 under Upcoming Invoice?

That is the running total for the draft (or “preview”) invoice for the current month.

The invoice date represents the period of concern, e.g. currently the preview invoice page (https://fly.io/dashboard/ORG_SLUG/billing/invoices/upcoming) shows Jul 1 - Aug 1, 2026, meaning this preview invoice collects usage charges for the month of July:

Could you explain further what parts of the UI you found confusing?

No, we don’t send an email currently. Thanks for the feedback on this.