Cloudflare R2
Zero egress S3 storage on Cloudflare's network
Cloudflare R2: Free S3 compatible object storage solution with $0 egress fees
Integrates with
Cloudflare R2 is S3-compatible object storage with zero egress fees — ever. $0.015/GB/month storage, no data transfer costs. Tightly integrated with Cloudflare Workers and CDN.
What Cloudflare R2 actually is
R2 is Cloudflare's object storage: an S3-compatible API for blobs, with the one pricing decision that makes it interesting — Cloudflare charges nothing for data transfer out. Storage is $0.015 per GB-month, operations are billed in two classes, and egress is free for every storage class. The product went into open beta in May 2022 and reached general availability four months later, and in our view it is the first object store from a major network vendor that prices reads as if reading your own data were a normal thing to do rather than a revenue event.
The S3 compatibility is real rather than decorative. Point the AWS SDK, rclone, s3cmd or most migration tooling at a custom endpoint with R2 credentials and the common object operations work: multipart uploads, presigned URLs, lifecycle rules, CORS, bucket encryption. Migration tooling is built in — Super Slurper copies from S3, and Sippy serves misses by pulling from a source bucket and caching into R2 — and both tools themselves are free, with only the operations they make billed. For anyone sitting on an S3 bill dominated by data transfer, that is the whole pitch, and it is a pitch with arithmetic behind it rather than adjectives.
The trade is ecosystem and feature depth. R2 is a young object store compared to S3, and the differentiators that matter at scale on AWS — storage classes with fine-grained retrieval policies, cross-region replication topologies, the long tail of S3 API surface — are either absent or thinner. Cloudflare's answer is that R2 is one product inside a platform where Workers, Pages, CDN and D1 sit next to it and talk to it without egress crossing a billing boundary. Whether that matters depends on whether you want the platform.
Pricing: what you really pay
Standard storage is $0.015 per GB-month, billed on peak daily average over the period rather than a point-in-time snapshot — so a bucket that grows to 3 GB and stays there bills 3 GB-month, while one that spikes and shrinks bills a weighted average. Class A operations (writes, lists, uploads) cost $4.50 per million; Class B operations (reads, heads) cost $0.36 per million. Deletes and aborted multipart uploads are free. Data transfer to the internet is free on every storage class, and there is no throughput charge.
The free tier is a real monthly allowance, not a one-time trial: 10 GB-month of storage, 1 million Class A operations and 10 million Class B operations every month, plus free egress. A personal media bucket, a website asset store or a hobby project's uploads can live inside that allowance indefinitely. We checked the allowance against the R2 pricing documentation directly; it is standing policy rather than a promotional window.
Infrequent Access is the second storage class: $0.01 per GB-month with a 30-day minimum storage duration, $9.00 per million Class A operations, $0.90 per million Class B, and $0.01 per GB for retrieval. The shape is familiar from S3-IA and its relatives — cheaper to keep, more expensive to touch — and the 30-day minimum means it is wrong for data that churns. Do the arithmetic before moving anything: for objects read more than occasionally, Standard plus free egress usually wins.
What to model beyond the numbers. First, operation counts: an application that lists buckets frequently or uses small objects heavily can generate surprising Class A volumes, and $4.50 per million writes is where the bill lives. Second, egress economics: if you are comparing against S3 plus CloudFront, remember you are comparing against a per-GB transfer line that S3's own price sheet treats as a primary revenue item; R2's zero is structural, not discounted. Third, no egress does not mean no cost for delivery at scale — a CDN in front of R2 is still a Cloudflare product with its own plan, and heavy transformative workloads belong to other services.
Performance & infrastructure
R2 runs on Cloudflare's 330-plus city network, and object data is served from locations near the requester, which is what makes zero egress coherent as a business: reads are cheap for Cloudflare because the bytes already sit at the edge. Cloudflare documents durability at eleven nines of annual durability — 99.999999999 percent — via replication and erasure coding, and publishes a 99.9 percent monthly uptime commitment in the R2 service-level agreement, with service credits defined there. That is a genuinely publishable pair of numbers, and we would like more storage vendors to state them this plainly.
Latency characteristics are what you would expect from edge-served object storage: first-byte times are good for cached and hot objects, and the model suits asset serving, user uploads, and read-heavy application data. For analytics workloads that scan petabytes in one region, the picture differs — locality to a compute region is not what R2 optimizes for, and Cloudflare's own answer is Hyperdrive and Workers for compute-side locality, not a single-region storage tier.
The integration surface is the other half of performance. R2 buckets bind directly into Workers and Pages Functions, and traffic between Cloudflare products does not cross a billing boundary for egress. Public buckets can be served behind a custom domain, which makes R2 a straightforward static asset origin. Durable Objects, D1 and KV are separate products with separate pricing — R2 is the blob layer, not the database — and treating it as a database replacement is a design mistake we see teams make once.
Where it falls short
Feature maturity is the honest gap. S3's surface is enormous and R2's is deliberately smaller: cross-account access patterns, storage-class analytics, replication topology and fine-grained access tooling are not at parity. Teams with deep AWS IAM structures and compliance workflows built around them should audit the migration before promising stakeholders the same controls. S3 compatibility covers the operations most applications actually call; it does not promise every edge case of the S3 API.
Lock-in runs in the direction you would expect. Moving data out of R2 costs nothing in egress — which makes leaving unusually cheap — but Workers-based processing around R2 buckets ties you to Cloudflare's compute. That is the real lock-in: not the storage, which is portable, but the platform logic you build beside it.
Operational granularity is thinner than the big three. Lifecycle rules exist, but storage-class automation and analytics are simpler. And the pricing model has one subtle trap: Class A operations at $4.50 per million make write-heavy or list-heavy patterns more expensive than naive storage-only math suggests. A workload doing constant small writes — logs, event streams, session data — belongs in KV, D1 or a real database, not in R2.
Finally, support depth: self-serve tiers get standard support channels, and the SLA's service credits are the contractual remedy. Enterprise agreements add the usual named support. For a storage layer holding primary business data, we would want a tested restore path and a second copy outside the account regardless of what the durability number says.
One more comparative point worth making explicitly, because the database entry for this product leads with it: the no-egress model is not a temporary promotion tied to a funding round or a launch window. It is the pricing architecture of the product, stated on the pricing documentation and the product page alike. Competitors have started to discount egress under pressure, and we expect that trend to continue. A discount can be withdrawn or restructured; a product whose unit economics assume free reads is a different kind of commitment, and we weight that difference when we recommend storage for workloads whose read volume is unpredictable.
Who should pick this
Our pick in /category/cloud-object-storage for teams whose S3 bill is dominated by data transfer, and for anyone already building on Cloudflare's platform. Serving user-generated media, application assets, downloads and backups from R2 is usually cheaper than the S3-plus-CDN equivalent, and the pricing is legible enough to forecast without a spreadsheet model. The free tier covers personal projects outright.
We would not pick it as a drop-in for large regulated enterprises with deep AWS tooling, and we would not use it for high-churn small-object workloads. If you need compute beside storage, the Workers and Pages reviews on this site cover the pairing; if you need a pure backup target with lifecycle depth, compare against the traditional storage vendors in /benchmarks and price the egress you hope never to pay.
Key takeaways
- Zero egress fees on every storage class — the structural difference versus S3-style pricing.
- Standard storage $0.015/GB-month; Class A $4.50/million, Class B $0.36/million; deletes free.
- Standing free tier: 10 GB-month storage, 1M Class A and 10M Class B operations monthly.
- Published durability of 99.999999999% annually and a 99.9% monthly uptime SLA with credits.
- S3-compatible API with free migration tooling (Super Slurper, Sippy); operations they make are billed.
- Best beside Workers/Pages; write-heavy small-object workloads and deep AWS IAM setups should look elsewhere.
Sources
- https://developers.cloudflare.com/r2/pricing
- https://www.cloudflare.com/r2-service-level-agreement
- https://developers.cloudflare.com/r2/reference/durability/
- https://blog.cloudflare.com/r2-ga/
- https://www.cloudflare.com/plans/
- https://www.cloudflare.com/pricing.md
- https://www.cloudflare.com/developer-platform/products/r2/
Pros
- Zero egress fees on all storage classes — no data transfer bill at all
- Standing free tier: 10 GB-month storage, 1M Class A and 10M Class B ops monthly
- S3-compatible API works with existing SDKs and migration tooling
- Published durability (11 nines) and a 99.9% monthly uptime SLA with credits
- Binds directly to Workers, Pages and public buckets with no cross-product egress
Cons
- S3 feature surface is thinner — no replication topology, simpler lifecycle tooling
- Class A operations at $4.50/million make write-heavy workloads pricier than storage-only math
- Infrequent Access has a 30-day minimum storage duration and retrieval fees
- Real lock-in sits in Workers-based processing around buckets, not the storage itself
- Not suited to analytics-style scans or small-object high-churn data
Best For
Teams serving media, assets, downloads or backups where egress dominates their current object storage bill — especially those already building on Workers or Pages.
Pricing
Free
- Core features included
Compare with alternatives:
Reviews (0)
No reviews yet. Be the first to share your experience!
Sign in to leave a review.
Sign In →Articles about Cloudflare R2
How to Use Cloudflare R2 for Content Creation
A practical guide to using Cloudflare R2 for content creation: workflow, tips, and when to use something else.
How to Use Cloudflare R2 for Marketing Automation
A practical guide to using Cloudflare R2 for marketing automation: workflow, tips, and when to use something else.
How to Use Cloudflare R2 for Code Review
A practical guide to using Cloudflare R2 for code review: workflow, tips, and when to use something else.
How to Use Cloudflare R2 for Research
A practical guide to using Cloudflare R2 for research: workflow, tips, and when to use something else.
How to Use Cloudflare R2 for Customer Support
A practical guide to using Cloudflare R2 for customer support: workflow, tips, and when to use something else.
Alternatives to Cloudflare R2
Cloudflare Pages
Deploy static and dynamic sites with zero configuration
Cloudflare
Global CDN and DDoS protection with object storage
Bunny.net
Global CDN and object storage with per-gigabyte pricing
Bunny Storage
Global edge storage with sub-100ms latency and 99.99% uptime
Akamai
The original CDN — 4,400+ edge PoPs across 130+ countries
Stay in the loop
Get weekly updates on the best new hosting and infrastructure providers, deals, and comparisons.
No spam. Unsubscribe anytime.