Cloudflare R2 Storage Calculator
Compare R2's zero-egress storage plus Class A and Class B operation charges against S3 storage plus per-GB egress.
Inputs
PUT, POST, LIST, COPY and multipart operations.
GET and HEAD operations.
S3 Standard list price in most regions.
R2 Monthly Cost
$98.40
R2 Storage Charge
$75.00
Class A Operation Charge
$9.00
Class B Operation Charge
$14.40
Comparison Provider Monthly Cost
$1,958.20
Monthly Saving With R2
$1,859.80
Saving
95.0%
Egress Needed for R2 to Win
0.00TB/month
Step by step
Values used
Data stored = 5,000 GB; R2 storage price = 0.0150 USD/GB-month; Class A operations (writes, lists) = 2 million/month; Class A price per million = 4.50 USD; Class B operations (reads) = 40 million/month; Class B price per million = 0.3600 USD; Data read out to the internet = 20 TB/month; Comparison storage price = 0.0230 USD/GB-month; Comparison egress price = 0.0900 USD/GB
Cloudflare R2 Storage
R2 = stored GB × storage price + Class A millions × Class A price + Class B millions × Class B price, with no egress charge; the comparison = stored GB × storage price + egress GB × egress price.
R2 Monthly Cost
= 98.40
R2 Storage Charge
= 75.00
Class A Operation Charge
= 9.00
Class B Operation Charge
= 14.40
Comparison Provider Monthly Cost
= 1,958.20
Monthly Saving With R2
= 1,859.80
How it works
R2 removes the egress meter entirely and replaces it with two operation meters, so its bill is driven by how often you touch objects rather than how many bytes leave. The break-even line is where the operation charges plus any storage price difference equal what the comparison provider would have billed in egress — at zero egress a read-heavy bucket can still favour R2 because storage itself is cheaper. Egress is usually the largest line on an object-storage bill for anything user-facing, so a zero-egress store changes architecture decisions, not just cost. Operation prices, storage prices and free tiers all move, so confirm both providers' current rates before you migrate.
Formula
Cloudflare R2 Storage
R2 = stored GB × storage price + Class A millions × Class A price + Class B millions × Class B price, with no egress charge; the comparison = stored GB × storage price + egress GB × egress price.
- Class A
- Mutating and listing operations (PUT, POST, LIST, COPY)
- Class B
- Read operations (GET, HEAD)
- break-even egress
- Monthly egress at which R2's operation charges are repaid
Frequently Asked Questions
How is Cloudflare R2 Storage calculated?
R2 = stored GB × storage price + Class A millions × Class A price + Class B millions × Class B price, with no egress charge; the comparison = stored GB × storage price + egress GB × egress price. R2 removes the egress meter entirely and replaces it with two operation meters, so its bill is driven by how often you touch objects rather than how many bytes leave. The break-even line is where the operation charges plus any storage price difference equal what the comparison provider would have billed in egress — at zero egress a read-heavy bucket can still favour R2 because storage itself is cheaper.
Why does Cloudflare R2 Storage matter?
Egress is usually the largest line on an object-storage bill for anything user-facing, so a zero-egress store changes architecture decisions, not just cost. Operation prices, storage prices and free tiers all move, so confirm both providers' current rates before you migrate.
What values do I need to enter?
This calculator takes 9 inputs: Data stored, R2 storage price, Class A operations (writes, lists), Class A price per million, Class B operations (reads), Class B price per million, Data read out to the internet, Comparison storage price, Comparison egress price. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.
Why does a read-heavy workload still cost something on R2?
Every GET is a Class B operation. Forty million reads at $0.36 per million is around $14, which is trivial next to per-GB egress but is not zero — and a chatty client that lists a bucket on every request generates Class A operations, which cost more than ten times as much.
You might also need
- CDN Cache Hit Ratio CalculatorCommonly used together
- Cloudflare CDN Cost CalculatorCommonly used together
- Edge Storage CalculatorCommonly used together
- Cloudflare Workers Cost CalculatorCommonly used together
- Global Latency CalculatorAlso in CDN, Edge & DNS
- Anycast Coverage CalculatorAlso in CDN, Edge & DNS