How I Saved $100/Month by Moving Storage to Cloudflare R2

September 13, 2025
2 min read
How I Saved $100/Month by Moving Storage to Cloudflare R2

If you’re running a Next.js app or hosting large assets for your project, storage costs can add up quickly. I was spending $100+ every month on AWS S3 buckets until I discovered Cloudflare R2, which offers a more affordable and developer-friendly storage solution.


💰 The Cost Problem with AWS S3

  • Storage fees added up as my project grew.
  • Data egress charges made it unpredictable.
  • Integrating with Vercel deployments wasn’t always smooth.

For my project, media and JSON files were being served thousands of times a day, and S3’s egress fees were killing my budget.


🚀 Why I Moved to Cloudflare R2

Cloudflare R2 instantly stood out because:

  • No egress fees – you don’t pay extra for downloads.
  • Seamless integration with Vercel and Next.js apps.
  • Global CDN distribution through Cloudflare’s network.
  • S3-compatible API so migration is easy.

⚙️ How I Switched from AWS S3 to Cloudflare R2

  1. Created an R2 bucket in Cloudflare dashboard.
  2. Generated API keys and credentials.
  3. Updated my next.config.js to allow R2-hosted media.
  4. Pushed code via GitHub and deployed with Vercel.

📊 My Monthly Savings

ProviderMonthly Cost
AWS S3 + Egress$120
Cloudflare R2$20

Total savings: $100/month 🎉


✅ Key Takeaways

  • If your project is serving files at scale, Cloudflare R2 can save serious money.
  • Migration is simple thanks to S3-compatible APIs.
  • Performance actually improved due to Cloudflare’s CDN edge network.

🔗 Related Guides

Written by Oli Miah – sharing developer-friendly guides on cloud storage, Next.js, and Vercel.

Recent Articles

Deploy Your Hugo + Tailwind v4 Website to Cloudflare Pages Automatically with GitHub Actions

November 1, 2025

This guide shows how to automatically deploy a Hugo + Tailwind CSS site to Cloudflare Pages every time you push code to your GitHub repository. It’s written for beginners — no advanced DevOps …

How I Optimized Core Web Vitals to 100% on My HugoGo Website

October 31, 2025

Optimizing a HugoGo website to achieve a perfect 100% Core Web Vitals score is completely possible without major code rewrites. Hugo’s static site generation already gives a strong base — with server …

Best Nodejs Package Hicons for HugoGo: Effortless SVG Icon Management

October 31, 2025

SVG icons are a staple of modern web design, but managing them in static site generators like Hugo can be tedious. If you’ve ever found yourself manually copying SVG code, worrying about layout bloat, …

Why Your First Website Should Be Built with HugoGo Instead of WordPress

October 30, 2025

When it comes to building your first website, most people immediately think of WordPress. It’s popular, widely supported, and has tons of plugins but is it really the best choice for every …

Why Hugo static website generation Can Be Better Than Next.js in 2026

October 30, 2025

When it comes to building fast, secure, and scalable websites, Hugo and Next.js both stand tall. But depending on your goals — especially if you’re running a blog, portfolio, agency site, or a …

Web Development on Android Using UserLAnd and CX File Explorer (Node.js)

October 15, 2025

If you don't have a laptop or a PC, learning web development or starting freelancing is no longer impossible! UserLAnd is an excellent solution for creating a complete development environment using an …