If you’re running VPS-hosted apps and you’re debating cloudflare r2 vs s3 , the decision isn’t just “cheaper storage vs bigger ecosystem.” It’s about where your bytes sit , how they leave the bucket, and how much operational friction you’re willing to accept when you scale. R2 and S3 both speak “S3-compatible object storage,” but they behave very differently in pricing, edge delivery, and tooling maturity. Below is the pragmatic comparison I wish someone had handed me before I built yet another media pipeline. 1) Pricing: the egress trap vs predictable bills The headline difference is simple: Amazon S3 : storage is reasonably priced, but egress fees and request costs can turn into the dominant line item. Cloudflare R2 : markets itself around zero egress fees (especially compelling when paired with Cloudflare’s network). You still pay for storage and operations, but egress is the thing that usually explodes.…