New: second-level SDK telemetry

Stop runaway Cloudflare bills before they happen

Connect your account in two minutes. When a bug starts burning money on D1, KV, R2 or Durable Objects, SpendFuse cuts it off automatically and tells you exactly what went wrong.

Open-source agent · We never store your API token · Disconnect anytime

Incident #2026-1042apiCut off14:32
Today's spend$1,284.50
Abnormal D1 read rate: $48.20/hour
Paused 2 crons, removed 1 route
Notified via Feishu and email
Estimated saved$8,432.10
6
Resource types covered
1 min
Fastest check interval
10+
Alert channels
$34,895
Largest public bill-shock incident of 2026

Why SpendFuse

Cloudflare has no spending cap. Its alerts are just emails.

D1 bills per row
One full-table scan from a missing WHERE clause can burn thousands in minutes. D1 charges per row read — a small bug becomes a billing disaster.
Runaway timers
Durable Object alarms waking each other, a cron stuck in a write loop — machines don't get tired and don't stop. They just keep spending.
It always happens at 3 AM
Bugs love to ship at 3 AM. By the time you read the email in the morning, the money is gone. SpendFuse cuts it off overnight and hands you an incident report.

Protected in three steps

Two minutes from exposed to insured

01
Paste a token, done in two minutes
SpendFuse installs a small open-source agent into your own Cloudflare account. Your token is used once — our servers never store it.
02
Usage checked every minute
Workers, D1, KV, R2, Durable Objects and Queues usage converted to dollars at official prices, compared against your budget and history. "Every minute" is the check frequency — actual stop time also depends on Cloudflare data latency.
03
Auto cut-off on anomalies, one-click restore
Routes removed, crons paused — with your config backed up first. One click restores everything after the fix, like nothing happened.

When it happens, you'll see

Not an email — a complete stop-bleed

Incident #2026-1042apiCut off14:32
Today's spend$1,284.50
Abnormal D1 read rate: $48.20/hour
Paused 2 crons, removed 1 route
Notified via Feishu and email
Estimated saved$8,432.10

Security by design

Your token stays in your own account

Trusting a third party with your billing is the whole problem. So SpendFuse's principle: we can only do the few things the agent allows.

Used once, then discarded

At connect time the token passes through our server once to deploy the agent, then it's discarded. After that it lives only as an encrypted agent variable in your own Cloudflare account.

Least-privilege agent

The agent only exposes read-only usage queries plus one write action: pausing and restoring a Worker's entry points. It can't even read your Worker source. Every request is signature-verified, or it's a 404.

Offline-signed upgrades

The agent verifies upgrades against a hard-coded Ed25519 key and refuses anything unsigned — even a compromised server can't push malicious code.

Disconnect anytime

Disconnecting in the dashboard deletes the agent; delete the API token in Cloudflare too and no access is left behind.

Read the agent's source and verify it's what runs in your account ↗

For developers

SDK: second-level cut-off in code

The SaaS detects in minutes; for second-level protection, add the open-source cfguard SDK to your Worker. Per-request hard caps plus global sliding windows — it trips on its own, no SaaS needed, and streams usage to the dashboard.

worker.ts
import { CostGuard, withGuard } from "cfguard";

export { CostGuard };   // Durable Object

const guard = (env: Env) => ({
  bindings: { DB: "d1" },          // meter this binding
  label: "my-blog",
  windows: [
    { minutes: 5, maxUsd: 2 },    // trip when the window burns $2
    { minutes: 60, maxUsd: 10 },
  ],
  // optional: stream usage to the SaaS dashboard in realtime
  // telemetryUrl: "...", telemetryToken: "...",
  // telemetrySecret: env.TELEMETRY_SECRET,
});

export default withGuard({ fetch: app.fetch }, guard);

Pricing

Start free

Free

Connect and watch your usage

$0
  • 1 Cloudflare account, unlimited Workers
  • Checks every hour
  • Anomaly alerts (no auto cut-off)
Pro
Most popular

Serious protection for production

Pricing coming soon
  • 5 Cloudflare accounts, unlimited Workers
  • Checks every minute (check frequency)
  • Auto cut-off + one-click restore
  • Incident reports + daily cost digest
Agency

For agencies and multi-account teams

Pricing coming soon
  • 20 Cloudflare accounts, unlimited Workers
  • Everything in Pro
  • Unified multi-account view

FAQ

Questions you might have

How is this different from Cloudflare's budget alerts?+

Official alerts only email you after the fact and take no action. SpendFuse actually cuts off the runaway Worker and restores it with one click.

Does the free plan cut off automatically?+

No. Free only alerts; auto cut-off is a strong action that needs Pro — and you can set any Worker to alert-only.

Can you see my code and data?+

No. The agent can only read usage numbers and pause or restore a Worker's entry points — it can't read your Worker source or your data. Our server uses your API token once and never stores it.

The SaaS is minute-level — what about second-level protection?+

Install the open-source cfguard SDK in your Worker: it meters every request and trips in seconds, fully independent of the SaaS, and streams usage to the dashboard.

Could cut-off hit legitimate traffic?+

Configs are backed up before every cut-off and restored with one click; you can also start core Workers on alert-only and enable auto cut-off later.

Don't wait for the invoice to learn about the next incident

Two minutes to connect. Start free.