How it works
R2 keeps files as objects in buckets, like Amazon S3, and speaks the same API, so most S3 tools and SDKs work once you change the endpoint and keys. The difference is pricing: storage and operations cost money, but serving files to the internet (egress) is free, which matters for media-heavy apps where downloads usually dominate the bill.
Buckets can stay private, reached through signed URLs or a Worker, or be public through a custom domain behind Cloudflare's cache; the r2.dev address is rate-limited and meant for testing. Workers read and write R2 directly through a binding. There is also an Infrequent Access class for archives, event notifications, and tools (Super Slurper and Sippy) that copy data across from S3.
Cloudflare R2 pros and cons
Pros
- No egress fees, however often files are downloaded
- S3-compatible, so existing tools and SDKs work
- Free allowance of 10 GB and millions of operations a month
- Works directly with Workers and Cloudflare's CDN
Cons
- Fewer storage classes, regions and features than S3
- Operations are billed, so millions of small reads still cost money
- Not every S3 API feature is supported, so check before migrating
When to use Cloudflare R2
Pick it when
- User uploads, images and video served to many people
- Backups and downloads where egress fees would add up
- Apps already running on Workers or Pages
Skip it when
- You rely on deep AWS integrations such as Lambda triggers or Athena queries
Cloudflare R2 pricing
Free tier
10 GB stored, 1 million writes and 10 million reads free each month. Then about $0.015 per GB-month, $4.50 per million writes and $0.36 per million reads. Egress is free.
Cloudflare R2 pricing page (opens in a new tab)Approximate, checked September 2026.What the other tools cost
Cloudflare R2 vs the alternatives
Related terms
More in Hosting and cloud
Cloudflare