In their official example, 300PB for $104. Cloudflare only charge for the cost of GET operations. Actual "bandwidth" is free. For comparison, Amazon S3 is $90/TB. So, the equivalent cost would be 300,000TB x $90= $27 million.<p>What is the catch? Am I missing something?<p>https://developers.cloudflare.com/r2/platform/pricing/
See also: <a href="https://www.cloudflare.com/bandwidth-alliance/" rel="nofollow">https://www.cloudflare.com/bandwidth-alliance/</a><p>Vendors listed there have pretty competitive pricing for bandwidth.<p>I find many AWS services to be priced decently (if you are using them properly, elastically scaling, etc). But that's definitely not the case for bandwidth. AZ to AZ charges are one of the worst - yes that's cheaper than egress but that's no consolation because you are essentially required to use multiple AZs if your business actually has any availability requirements.<p>And don't get me started on NAT Gateway pricing...
> <i>What is the catch? Am I missing something?</i><p>Some say, Cloudflare throws the ToS rule-book at you once you cross 5TB/mo (or whatever the threshold is; we're at multiple-TBs but no one from Cloudflare has thrown as much as an email at us). That said, Cloudflare's absurdly high bandwidth rates for Specturm (their L4 load balancer) [0] remains a mystery.<p>Pretty recently, Cloudflare blogged about AWS' potential 80x markup on egress [1]. That is, the $90/TB AWS charges its customers must cost them a measly $1 or so.<p>Cloudflare in 2014 blogged about how they work relentlessly to bring down bandwidth costs by peering aggressively where possible [2] (which apparently means $0 for <i>unlimited</i> bandwidth [3]). And where they can't / don't [4], egress is 5x (est) the ingress (one pays for the higher among the two), but this creates an opportunity for an arbitrage and give away DDoS protection for free.<p>This is pretty similar to Amazon's free-shipping offer for <i>Prime</i> customers despite it being one of the biggest loss makers to their retail business. <i>Prime</i> basically has since forced Amazon to bring down costs through building expensive and vast distribution & logistics network that spawns the globe. Doing so was a considerable drain on the resources in the short-run, but in the long run, it has become an unbreachable moat around its largest business.<p>Analysts like Ben Thompson (stratechery.com) and Matthew Eash (hhhypergrowth.com) have written in detail about Cloudflare's modus operandii over the years, with both agreeing that Cloudflare's model is so brilliantly disruptive that even Clayton Christensen would be proud of it.<p>[0] $1/GB! <a href="https://support.cloudflare.com/hc/en-us/articles/360041721872-Billing-for-Spectrum" rel="nofollow">https://support.cloudflare.com/hc/en-us/articles/36004172187...</a><p>[1] <a href="https://blog.cloudflare.com/aws-egregious-egress/" rel="nofollow">https://blog.cloudflare.com/aws-egregious-egress/</a><p>[2] <a href="https://blog.cloudflare.com/the-relative-cost-of-bandwidth-around-the-world/" rel="nofollow">https://blog.cloudflare.com/the-relative-cost-of-bandwidth-a...</a><p>[3] <a href="https://www.cloudflare.com/bandwidth-alliance/" rel="nofollow">https://www.cloudflare.com/bandwidth-alliance/</a><p>[4] <a href="https://bgpview.io/asn/13335#info" rel="nofollow">https://bgpview.io/asn/13335#info</a>
AWS overcharges extremely for bandwidth. But yes, I'd expect that much bandwidth to cost at least around $1m on most providers. If you end up using THAT much bandwidth with so few GET requests, expect a call from CloudFlare.
You would almost certainly have to be paying for an ENT agreement before you got anywhere close to 300PB of traffic, which would incur bandwidth fees.<p>It'd still be significantly less than $27 million though.
I really like the idea of using R2, but it seems like theres no real protection against losing EVERYTHING should a write-enabled key get leaked? On S3, I would be able to set a versioned bucket and prevent deletions, for example.<p>What are others using R2 for? A "cached" version of your s3 buckets? Im assuming I could set up something like that with workers?