A single 500 TB pull off Amazon S3 can cost $25,000 to $45,000, and that number rarely shows up in the original storage budget.
Picture a mid-size ML team storing 500 TB of training data and checkpoints on Amazon S3. They switch GPU providers twice a year, chasing H100 and H200 availability, and each switch means pulling that data out to feed a new provider's local storage. At AWS's standard tiered egress pricing, a single 500 TB pull lands somewhere between $25,000 and $45,000, depending on how much of it clears the first pricing tier before the rate steps down. That number rarely shows up in the original storage budget. It shows up in the quarter the team actually needs to move.
This is why zero-egress and low-egress object storage has become a genuine FinOps decision rather than a niche cost-optimization tactic. Cloudflare R2, Backblaze B2, and Wasabi all market themselves against egress fees, but they do it in three structurally different ways, and the difference changes which one is actually cheapest for a given access pattern. (Cloudflare does not yet have a dedicated provider profile on the site; see the note at the end of this piece.)
"Zero egress" is doing different work at each of these three providers, and the fine print matters more than the marketing headline.
R2 charges nothing for data transfer out, full stop, with no cap, no bandwidth partner requirement, and no minimum retention window. The tradeoff is that storage itself is priced closer to Amazon S3 than to the other two providers here, and R2 bills separately for Class A operations (writes, lists) and Class B operations (reads) once you clear the free monthly allowance.
Backblaze B2 offers egress at no charge when data moves through a Bandwidth Alliance partner such as Cloudflare or Fastly. Outside that path, egress is free up to three times your average monthly storage volume, and anything beyond that cap is billed. For teams serving data through a CDN partner, B2 functions as true zero egress. For teams pulling large volumes directly, the cap is the detail that determines the bill.
Wasabi advertises flat-rate storage with no egress fees and no API request fees at all, which is the simplest pricing model of the three. The offset is a minimum 90-day storage duration: delete or move an object before 90 days and Wasabi bills as if it were stored the full term. There is also a minimum billable object size, so a large volume of small files can cost more than the raw byte count suggests.
Listed rates for standard hot storage, per terabyte per month, at each provider's published US pricing. Amazon S3 Standard is included as the baseline every zero-egress pitch is measured against.
| Provider | Storage Rate | Free Tier | Min. Retention |
|---|---|---|---|
| Cloudflare R2 | $15.00/TB | 10 GB | None |
| Backblaze B2 | $6.00/TB | 10 GB | None |
| Wasabi | $6.99/TB | None | 90 days |
| AWS S3 Standard | $23.00/TB | 5 GB (12 mo) | None |
This is where the three providers actually diverge. Storage price alone understates the gap once a workload moves meaningful volumes of data out.
| Provider | Egress Fee | Write/List Fee | Read Fee |
|---|---|---|---|
| Cloudflare R2 | $0.00 | $4.50 / million | $0.36 / million |
| Backblaze B2 | Free via partner, capped at 3x storage, then $10.00/TB | Free | Free |
| Wasabi | $0.00, no cap | Free | Free |
| AWS S3 Standard | Tiered, $50 to $92/TB | $0.005 / 1,000 | $0.0004 / 1,000 |
Storage price per terabyte is the wrong single number to optimize for. What determines the real bill is how much data leaves the bucket every month. The Cloud Cost Calculator can run this kind of worked cost math against your own numbers; below are three scenarios at 500 TB stored, each with a different monthly egress volume, using each provider's published rates.
| Scenario | R2 Bill | B2 Bill | Wasabi Bill |
|---|---|---|---|
| Low egress: 10 TB out/month | $7,500 + approx. $50 ops | $3,000, within cap | $3,495, no egress fee |
| Moderate egress: 100 TB out/month | $7,500 + approx. $500 ops | $3,000, check against your average | $3,495, no egress fee |
| High egress: 400 TB out/month | $7,500 + approx. $1,800 ops | $3,000, likely over cap, consider a bandwidth partner | $3,495, no egress fee |
At low egress volume, the gap between providers is mostly the storage rate itself, and R2's higher per-terabyte storage cost is the whole story. At moderate egress, Wasabi and Backblaze's flat and capped models start to separate from R2's usage-based operations fees depending on request volume. At high egress, AWS S3 becomes the outlier by a wide margin, and the entire premise of choosing a zero-egress provider pays for itself within a single billing cycle.
None of these providers are wrong about being cheaper than hyperscaler egress. But three details separate a real zero-egress bill from a surprising one, and they rarely appear in the pricing headline.
First, Wasabi's 90-day minimum retention means a workload with high churn, frequent creation and deletion of objects, common in checkpoint storage during active model training, can rack up early-deletion charges that offset the flat rate's simplicity. Second, Backblaze's free-egress cap is calculated against average storage, so a bucket that grows quickly can find last month's cap suddenly too small for this month's access pattern. Third, R2's Class A and Class B operation fees are trivial for read-heavy, low-write workloads but add up quickly for workloads that write and list constantly, such as high-frequency checkpointing during distributed training runs.
Every one of these providers is S3-compatible at the API level, which matters more than it sounds. It means a team can benchmark actual workload cost against actual access patterns for a few weeks before committing, using the same S3 SDK and tooling across all three, rather than trusting a vendor's example scenario.
The right answer depends on the shape of the workload, not the headline price.
R2 fits teams already inside the Cloudflare ecosystem, or anyone serving data publicly through a CDN where request volume is high but per-request cost is trivial next to what egress would have cost on a hyperscaler. Backblaze B2 fits teams with a CDN partner already in the stack, or workloads whose egress genuinely stays under three times average storage, which covers a large share of archival and backup use cases. Wasabi fits stable, long-lived datasets with low churn where flat-rate simplicity matters more than granular optimization, and where the 90-day retention clock is not a constraint on how the data is actually used. Our full Wasabi vs. Backblaze comparison goes deeper on that specific matchup.
None of the three is a universal answer, which is precisely why the egress line item deserves the same scrutiny FinOps teams already apply to compute reservations and spot pricing.
The cheapest storage rate on the page is rarely the cheapest storage on the bill. Egress is where that gap hides.
Compare AWS, Google Cloud, Azure, and alternatives like Backblaze B2 Discover how much you could save in seconds