- Price
- $0.015 per GB/month, no egress fees
- Free plan
- Yes
- Setup
- Needs a developer
- Up and running
- Half a day to a day to wire uploads and downloads into the app.
What Cloudflare R2 is for
File storage is where your app keeps what users upload or download: photos, PDFs, videos. Your database holds only the link. R2 is Cloudflare's version and does not charge when users download, which is usually the biggest cost elsewhere. It speaks the same language as Amazon S3, so most libraries work as is.
How it plugs into your product
- 1In the Cloudflare dashboard, go through the checkout to turn on the R2 subscription, even for the free quota.
- 2Create a bucket and an API key with access to it.
- 3In your back end, use an S3 library to generate upload links and save each file's address in the database.
- 4To serve files publicly in production, connect a custom domain to the bucket.
Does it fit your idea?
It fits if
- An app that serves lots of images, PDFs or videos, where download fees in dollars would eat the margin.
- A SaaS already on Cloudflare Workers that wants files in the same account.
- A product moving off S3 to cut the egress bill without rewriting the upload code.
Look elsewhere if
- You want an upload button, resizing and progress bar ready to use: UploadThing does that.
- A contract requires files stored in one specific country: R2 only guarantees broad jurisdictions like the EU or the US.
- You store only a few avatars, where the storage in your Supabase or Firebase plan is enough.
What people only find out after building
Read this before you build on it. Each item links to the official page that says so.
You must add an R2 subscription through Cloudflare's checkout before using it, even if you stay in the free quota.
Official source: developers.cloudflare.comThe free r2.dev public link is rate-limited and meant for development only. In production you need your own domain on Cloudflare.
Official source: developers.cloudflare.comYou can't pick a country. Location hints like Western Europe are best effort only; for a guarantee you need a jurisdiction, and the options are the EU, the US and FedRAMP.
Official source: developers.cloudflare.comThe cheaper Infrequent Access class charges $0.01 per GB to read, bills at least 30 days per file and has no free quota.
Official source: developers.cloudflare.com
Price
$0.015 per GB/month, no egress fees
10 GB stored, 1 million writes and 10 million reads per month.
- Free tier
- 10 GB/month
- Price per GB stored
- $0.015/GB/month
- Downloads (egress)
- Free
Checked on Oct 28, 2026 · official pricing
What it costs in practice
A SaaS with 200 GB of files and 2 TB of downloads a month: (200 − 10 free) × $0.015 ≈ $2.85 of storage, reads and writes within the free quota, and $0 for downloads. About $3/month. Estimate.
Estimate from the official price. Check it before you decide.
At a glance
- Free plan: yes
- Open source: no
“Not stated” means the official site doesn’t say.
Alternatives
Compare side by sideFaundr
Picked your tools? Build it with AI, safely.
Faundr keeps your project’s memory, blocks what can’t be undone and tells you if it’s safe to launch, inside Claude Code and Codex.