6/20/2026 at 5:45:29 PM
Looks like Cloudflare still haven't shipped the most valuable possible feature for Cloudflare Workers though: hard billing caps.I want to set a cap of $100/month and know, for sure, that if something untoward happens my apps will all stop serving traffic rather than me getting hit with a bill for $1000s.
The safest way to use Workers is on the free tier, which will shut off after 100,000 requests/day: https://developers.cloudflare.com/workers/platform/pricing/#...
by simonw
6/21/2026 at 5:33:59 AM
I've dealt with this before. The problem with doing a billing cap is that now you are bringing an out-of-band batch system (billing) in-band. The only way to do a dollar cap is to constantly calculate your bill.Capping it at 100K requests is a lot easier, because it's a single number that can be incremented easily in a distributed way.
It's the same reason it took AWS forever to offer billing caps, and even today, they label it as best effort. They don't guarantee you won't pay more than your set limit.
by jedberg
6/21/2026 at 7:28:11 AM
I am very sure what you’re saying is not true. It’s a viable-looking technical excuse, but you can easily understand that it’s false.Let’s make a thought experiment.
CEO of Cloudflare introduces hard billing caps at a _business_ (not technical) level. Your organization will never be billed more than the level you set. Your app may stop, or may continue running, but above the monthly cap it’s free for you, it becomes Cloudflare’s expense if they didn’t pause the services.
I guarantee you that in this case, all technical issues you’re talking about would be solved in three weeks, and your service would go down within 3 seconds after hitting the cap.
If CEO decision were that any over-usage above the cap is deducted from employee bonuses from the specific product division that didn’t stop spending in time — all technical challenges would be solved in 48 hours.
Currently, there are literally zero organizational incentives for CloudFlare to develop any usage caps
by nlitened
6/21/2026 at 8:59:14 AM
You're describing a way to get the technical people to do the work, but that was never the problem. If you want them to do it you just tell them to, and then they spend however many hours doing it, instead of doing something else.All technical problems are like that. You throw labor hours and hardware at them and progress is made. The question is, how much does it take, and is it worth that much? Which in turn depends on how willing you are to patronize someone else if they don't.
by AnthonyMouse
6/21/2026 at 2:22:37 PM
Isn't that the point OP made, only repeated?: The price cap functionality which customers want, is missing, not for lack of feasibility or capability (as was previously claimed above), but because the company makes more money overcharging customers, and thus doesn't want to fix the problem.by ImPostingOnHN
6/22/2026 at 10:12:04 AM
The cynical option isn't the only one.Suppose it would cost them X million dollars a year to provide the feature and providing it would cost them nothing in terms of sales, and indeed get them a few more because people like the feature. Well, it still costs them that amount to provide it, so then the question is whether X is less than Y. But you don't control how much it costs them to implement it, only how much of your business you're going to take somewhere else without it, and if nobody is willing to do that then why would you expect them to spend the money?
It doesn't have to be that they're purposely screwing you. It's just that if you don't care enough to choose differently then why would they?
by AnthonyMouse
6/22/2026 at 12:41:11 PM
> The cynical option isn't the only one.> Suppose it would cost them X million dollars a year to provide the feature and providing it would cost them nothing in terms of sales, and indeed get them a few more because people like the feature. Well, it still costs them that amount to provide it, so then the question is whether X is less than Y.
lol, that is the cynical option!
It's just "we profit more by charging people for overages than we would if we put in a price cap", with more words!
It's the same as making a subscription people can enroll in online, but cancelling it requires going to the HQ in person, or writing a registered mail demand letter, etc.
After all, why build a way to cancel online subscriptions online if X is more than Y? Maybe it's more profitable to keep charging people for something they don't want.
"The cynical option" is any option which consistently puts pure profitability ahead of doing the right thing by customers, society, or human decency in general, and that is precisely the Cloudflare decision criteria we're discussing.
by ImPostingOnHN
6/23/2026 at 9:15:07 AM
We can distinguish between two things, right?1) They don't build it because they purposely want to screw customers with overage charges.
2) They don't build it because building it costs money and the customer demand (i.e. willingness to switch) over that feature isn't sufficient to justify the expense.
The first one is way more cynical than the second one.
by AnthonyMouse
6/23/2026 at 3:04:54 PM
The first one is a straw man, a cartoon villain misanthrope. If your point is "at least they hurt people for money, rather than out of savage hatred", I guess that is an optimistic way of seeing things.The second one is what everyone here is talking about, and it is the cynical option. The non-cynical option would be doing the right thing every once in a while, even if it doesn't earn profits.
by ImPostingOnHN
6/21/2026 at 9:57:28 AM
That’s kinda my point. We don’t have usage caps not because they are technically hard or impossible to implement (they’re not). It’s because the leadership thinks (likely correctly) that implementing them would just hurt company’s bottom line.by nlitened
6/21/2026 at 3:12:48 PM
> [L]eadership thinks (likely correctly) that implementing them would just hurt company’s bottom line.Exactly. There's little "win" here for the business, especially when the simpler "just cap at n requests" solution exists. Pursuing this solution:
- introduces more technical complexity (increased cost of developing, testing and maintentance)
- forces overage costs onto the vendor, who will then... increase prices to cover these costs, which upsets customers and makes the company less competitive.
- doesn't improve cost prediction (since n requests can be costed out a $/request quite easily and reliably)
(The cynical will say something about "the business has an incentive to _not_ fix this issue because they get paid for overages", but this assumes that Cloudflare has the, "monopolistic" market power to make customers unhappy and still charge whatever they want. In this case implementing billing caps wouldn't do anything because Cloudflare could just... charge whatever they want.)
by jt2190
6/21/2026 at 2:27:03 PM
You’re very sure because you’ve built one at scale? This is such peak HN. And you have plenty of other people who have never built a billing system at scale to agree with you. The OP is right, this is in fact very very hard for the reasons they say.by mentat
6/21/2026 at 6:41:41 AM
Seems like a weak excuse... If you build a billing system which can calculate bills with low latency 99.9% of the time, but perhaps fails when there is a net split for example, then you can simply let the company write off the loss for that 0.1% of the time the billing system is down.by londons_explore
6/21/2026 at 4:22:44 PM
This seems the real answer. The question of whether the billing team can set accurate maximums is largely disjoint from the question of whether the engineering team shuts off service precisely at that moment.by manwe150
6/21/2026 at 4:11:17 PM
I'd be happy for the vendor to eat the difference if their accounting systems let me spend a little over my configured cap, personally.(I get that they're not happy to do that.)
by simonw
6/21/2026 at 6:04:22 AM
How about implementing a prepaid system where you set your budget, and if you exceed it, everything just pauses until you pay more?by MikeNotThePope
6/21/2026 at 11:08:46 AM
That wouldn't change anything in this case. Either way you would need to (a) be able to know the state of billing in band before executing a request or (b) accept a slight out of band delay where cloudflare may allow a few extra requests through and eat the cost.It is a very solvable problem, I just don't think pre- vs postpaid changes it.
by _heimdall
6/21/2026 at 8:01:00 AM
The cost of each request or token may have a fixed cost - you do not have to query the main billing system for such things.by ustad
6/21/2026 at 12:20:08 PM
Vercel achieved it perfectly fineby dbbk
6/20/2026 at 6:52:18 PM
Not that it helps, but I think this is only a problem if you’re paying by credit card.If your company is on an enterprise plan, at least for us all of the limits are pre-negotiated and prepaid, and you aren’t billed for overages (although if you consistently overage, sales will start badgering you to negotiate a limit increase, but my experience is you can simply ignore their demands and they eventually go away)
It does drive me crazy that their enterprise tier “caps” bandwidth. Our company overaged on one of our domains, so we moved the domain out of our enterprise license onto a self-serve plan, and like magic, back to unlimited bandwidth.
by cj
6/20/2026 at 8:28:46 PM
My Cloudflare enterprise order form has costs for overages for Workers and the following language about everything else:> If Customer exceeds any of the Total Quantity for the Services below, Cloudflare will invoice Customer in arrears at a rate that corresponds to the rate set forth in the table after this one labeled “Excess Usage Pricing.” If no such Excess Usage Pricing table has been added by the Parties to this order form or if such table does not include the Service(s) for which Customer has exceeded the Total Quantity, then the Parties will negotiate in good faith an increase in the Fees for such Service(s). Should the Parties fail to reach an agreement on an increase within thirty (30) days of Customer’s receipt of notice from Cloudflare that Customer has exceeded its usage cap for the Service(s), Cloudflare will have the right to immediately terminate such Service for its convenience, and without liability to Customer or any third party.
by iancarroll
6/21/2026 at 5:51:50 AM
> It does drive me crazy that their enterprise tier “caps” bandwidth. Our company overaged on one of our domains, so we moved the domain out of our enterprise license onto a self-serve plan, and like magic, back to unlimited bandwidth.You don't see how the spend cap is linked to the bandwidth cap?
by lmz
6/21/2026 at 1:08:44 AM
Didn't Cloudflare promise they would deliver every single Enterprise-only feature to the paid tier?There's your next feature to port, Cloudflare: PEACE OF MIND!
by philistine
6/20/2026 at 6:11:19 PM
Never going to happen at such a platform.They prefer waiving the occasional DDoS / misconfiguration over giving their customers to cause outages with something so trivially forgotten about and so disconnected from the tech and actual platform.
by sofixa
6/20/2026 at 7:11:36 PM
Haven't shipped or don't want to ship...by Havoc
6/20/2026 at 9:59:59 PM
tbh this is my biggest anxiety with cloudflare and this seems intentionalalso its funny that i have a backup to cloudflare in case it goes down—that seems to be a regular event now as of lately with CF
by zuzululu
6/21/2026 at 2:56:11 PM
If it weren't implemented by cloudflare natively, would you be ok using a library or something that wraps or hooks onto your IaC to wrap entry points with a worker (proxy or circuit-breaker, conceptually) with various types of limits (real-time estimated spend, or just counts of operations, or just a on/off switch wired to an email alert). I'm pulling a few of these threads at the moment since I've been ramping up my cloudflare usage.by devdoshi
6/21/2026 at 1:56:45 PM
This smells like a cottage industry similar to detecting soon to be expired ssl certs."Oh that thing that was an experiment and had billing caps turned on but we rushed in to production and now the whole business relies on that thing is in an outage and destroying customer trust we've barely earned yet"
I get the flip side but... 2nd order effects oof.
by yanslookup
6/21/2026 at 10:21:56 AM
To be honest their service is so cheap, that it's extremely unlikely to get such an attack without costing the attacker an equally equivalent amount.Also, if it's really a problem or you are estimating it'll certainly be a problem, do email alerts or a strict shutdown if xx requests are hitting your account. You can have a simple counter in a KV.
by csomar
6/21/2026 at 3:53:55 PM
It's not valuable for them to have this, and not because they want to skim big bills off of little guys. It's because customers small enough to care about this are not only not worth the investment in the feature, even having them on the platform is nearly a net negative.by tracerbulletx
6/23/2026 at 8:51:25 PM
Having the little guys on Cloudflare is most of the reason why HN regularly talks about Cloudflare.by yencabulator
6/21/2026 at 2:06:07 PM
I wonder why they didn’t introduce this yet. Same anbout other cloud providers. It’s not that this is some rocket science technology to achieve because they calculate near realtime usage anyway. Can this be because they earn more on people going beyond what they would set limit?by __natty__
6/20/2026 at 6:50:47 PM
Yeah, especially with agents this seems necessary.by Zababa
6/24/2026 at 2:57:08 PM
[flagged]by AsterXing