Cloud•Mar 2026•3 min read

AWS S3 vs Cloudflare R2

The original object storage vs the zero-egress upstart. R2 is S3-compatible and doesn't charge you to read your own data.

🧊Nice Pick

Cloudflare R2

Zero egress fees. That's it. That's the reason. If you're serving files to users, R2 saves you a fortune. S3 compatibility means migration is trivial. Unless you need S3's advanced features, R2 is the obvious choice.

The Egress Tax

AWS charges you to download your own data. S3 egress is $0.09/GB. Serve 1TB of images to users? That's $90/month just in bandwidth. Every month. Forever.

Cloudflare R2 charges $0/GB for egress. Zero. The same 1TB costs nothing to serve. This changes the economics of serving files entirely.

S3 Compatibility

R2 speaks the S3 API. Your existing S3 SDKs, tools, and libraries work with R2 by changing the endpoint URL. Migration is literally changing a config value.

Not everything is supported yet — no lifecycle rules as advanced as S3, no S3 Select, no Glacier equivalent. But for standard put/get/list operations, it's drop-in compatible.

When S3 Still Wins

S3 has 18 years of battle-testing, every compliance certification imaginable, and deep integration with the entire AWS ecosystem. Lambda triggers, EventBridge, Athena queries, Glacier archival.

If you're deep in AWS and need those integrations, S3 is the obvious choice. R2 is a storage bucket, not an ecosystem.

Quick Comparison

FactorAWS S3Cloudflare R2
Egress Cost$0.09/GB$0/GB
Storage Cost$0.023/GB/mo$0.015/GB/mo
S3 API CompatibleNativeYes
EcosystemMassive (AWS)Workers integration
ComplianceEvery cert existsSOC 2, GDPR
Durability11 nines11 nines
Free Tier5GB/12mo10GB forever

The Verdict

Use AWS S3 if: You're in AWS, need advanced features like S3 Select or Glacier, or have compliance requirements that mandate AWS.

Use Cloudflare R2 if: You serve files to users and don't want to pay egress fees. Most startups and indie projects should default to R2.

Consider: Backblaze B2 is another cheap option with Cloudflare bandwidth alliance (free egress through CF).

🧊
The Bottom Line
Cloudflare R2 wins

Zero egress fees. That's it. That's the reason. If you're serving files to users, R2 saves you a fortune. S3 compatibility means migration is trivial. Unless you need S3's advanced features, R2 is the obvious choice.

Related Comparisons

Disagree? nice@nicepick.dev