billflare.

Source-linked reports: Amounts and outcomes come from the original reports and linked replies.

Durable Objectswillmoss-durable-object-alarm

Will Moss: a reported 20 trillion Durable Object reads from an alarm loop.

@itswillmoss reports 20,213,871,155,804 Durable Object reads, a dashboard mismatch and lost project access. He attributes the loop to health checks waking onStart and repeatedly setting an alarm. The X thread estimates the cost above $30,000.

What happened

Reported cause
Unbounded loop
Incident date
Date not recorded
First reported
2026-04-16 15:19 UTC

Latest reported outcome

The author says he opened a support case immediately after receiving the invoice and estimates the cost above $30,000.

View this update in the timeline

Original sources

Each entry links to the report or reply it describes.

Case timeline

  1. Unexpected read count reported

    Read on 𝕏

    The author reports about 20.2 trillion Durable Object reads on the invoice.

    will moss

    @itswillmoss · Original 𝕏 post

    I've been paying close attention to all the awesome things that @Cloudflare has rolled out. I've added Dynamic Workers, Browser Rendering, Agents SDK in the start up I've been trying to build. But I regret it so much after I got on an invoice for 20,213,871,155,804 Durable Object…
  2. Lost access and support case reported

    Read on 𝕏

    The author says Workers Paid was disabled, the project became unavailable and a support case was opened immediately.

    will moss

    @itswillmoss · Original 𝕏 post

    The invoice led to my workers paid plan to get shut off on Wednesday, causing my project to be unusable. Despite the fact I filed a case immediately after receiving the Invoice, I still have no indication on what the resolution will be. pic.twitter.com/E9NU7uu4S1
  3. Dashboard and alerts questioned

    Read on 𝕏

    The author says the dashboard did not reflect the invoice’s count and there was no excess-usage notification.

    will moss

    @itswillmoss · Original 𝕏 post

    On Cloudflare's main dashboard, there is no indication of DO reads / writes, and no automated notification once you exhaust your free amount. Making it confusing when their pricing page promises "clear charges for usage that exceeds the base plan". pic.twitter.com/z8EKnB8aPu
  4. Alarm diagnosis described

    Read on 𝕏

    The author says health checks woke the object every 60 seconds and onStart set an alarm without checking getAlarm.

    will moss

    @itswillmoss · Original 𝕏 post

    The bug was simple, I set up a worker to check API health every 60s, but onStart() called setAlarm() on every wake-up without checking getAlarm() first. Once I got the invoice, I put getAlarm() in front of setAlarm(), added circuit breakers, removed DO bindings from previews.
  5. Cost described as an estimate

    Read on 𝕏

    The author estimates that the cost may exceed $30,000.

    will moss

    @itswillmoss · Original 𝕏 post

    During Agents Week, Cloudflare is pushing DOs as integral to Agents. Cloudflare is putting developers at risk of accruing $30,000+ of invoices without any hard cap, no email after exhausting included limits, and little transparency on the dashboard.
Author experienceWorkers +4

Cloudflare billing pitfalls thread

The author organizes Cloudflare billing risks by product and shares experience with budget alert emails.

Durable Objects

A simulation game, a reported $4,483.74 in Durable Object reads.

Jonathan Mann (@songadaymann) reports spending $4,483.74 on Durable Object reads while building a simulation game. Rita Kozlov replies, “let us see what we can do”; Mann later thanks her.

Smart Shield Argo

levelsio: disputed Smart Shield Argo charges of about $1,500/month.

Pieter Levels says around 200 sites were charged for Smart Shield Argo although he had not enabled it. He reports about $1,500 per month and later says Cloudflare refunded everything.

On this page

Reported amount · USD

Not disclosed

Open original sourceCollection policy

Replies & outcomes

Billing outcome
Not recorded
Case progress
Not established
Public Cloudflare reply
Not linked