AWS S3 vs Cloudflare R2 vs Backblaze B2 pricing calculator
Enter your storage, downloads, and requests to compare the real monthly and yearly cost across AWS S3, Cloudflare R2, Backblaze B2, Google Cloud, Azure, and Supabase - with a live cost-breakdown chart. Free, deterministic, 100% in your browser.
- Runs in your browser No server round-trip
- No sign-up Nothing to install
- Nothing is uploaded Your SQL never leaves the tab
- Works offline After the page loads
Monthly cost breakdown
Line-by-line comparison
| Provider | Storage | Egress | Requests | Base | Total / mo | vs S3 |
|---|---|---|---|---|---|---|
| Cloudflare R2Cheapest | $7.35 | free | $12 | - | $19 | -$176 |
| Backblaze B2 | $2.94 | $5.00 | $12 | - | $20 | -$176 |
| Azure Blob (Hot) | $9.00 | $165 | $14 | - | $189 | -$6.90 |
| Supabase Storage | $8.40 | $158 | - | $25 | $191 | -$4.60 |
| AWS S3 Standard | $12 | $171 | $13 | - | $196 | - |
| Google Cloud Storage | $10 | $240 | $13 | - | $263 | +$68 |
List prices for a US region, standard/hot tier, captured July 2026. Egress free tiers modelled per provider (R2 free; AWS/Azure 100 GB/mo; B2 up to 3× stored data). Verify current pricing at each provider before you commit.
Your bill has four parts - and egress is the one that bites
Every object-storage provider prices the same four things. Knowing which one dominates your workload tells you which provider will actually be cheapest.
What each provider optimises for
Same four line items, very different strategies. These are the list prices the calculator uses.
Provider | Storage /GB | Egress /GB | Best for | |
|---|---|---|---|---|
| AWS S3 Standard | $0.023 | $0.09 | Ecosystem depth; low storage, pricey egress | |
| Cloudflare R2 | $0.015 | Free | Anything download-heavy; S3-compatible | |
| Backblaze B2 | $0.006 | $0.01 (3x free) | Cheap storage; backups and archives | |
| Google Cloud | $0.020 | $0.12 | GCP-native apps; egress is the priciest | |
| Azure Blob (Hot) | $0.018 | $0.087 | Azure-native apps; 100 GB egress free | |
| Supabase Storage | $0.021 | $0.09 | Bundled with a Supabase backend |
Common mistakes when comparing storage cost
Comparing storage price and ignoring egress
S3 storage looks cheap, but if you serve files to users, egress at $0.09/GB usually dwarfs it. Always model your monthly downloads - it's the number that decides the winner.
Forgetting request costs at scale
For a few million requests, ignore them. For billions of tiny objects (thumbnails, tiles, IoT), Class A/B requests can rival storage. The calculator surfaces them so you notice the crossover.
Missing free-egress rules
R2 is free, B2 gives 3x your stored data free, AWS and Azure include 100 GB/month. A workload that fits inside these allowances can be effectively free to serve - model it, don't guess.
Treating list prices as your bill
Region, redundancy (LRS vs GRS), storage class (Standard vs Infrequent Access vs Glacier), and committed-use discounts all move the number. Use this for comparison, then confirm on the provider's calculator.
Ignoring the predictability tax
Metered pricing means a viral moment can 10x your egress bill overnight. Flat-plan providers trade a little theoretical savings for a bill you can actually forecast - often worth it for a small team.
Over-indexing on storage for archives
For backups you store a lot and read rarely, so storage price rules and egress barely matters - B2 or an archive tier usually wins, not R2.
Object storage pricing FAQ
Why is AWS S3 so expensive compared to R2 or B2?
Storage on S3 is actually cheap (about $0.023/GB). The cost that surprises teams is egress - data downloaded to the internet - at roughly $0.09/GB. Cloudflare R2 charges nothing for egress and Backblaze B2 gives you up to 3x your stored data free, so any download-heavy workload is dramatically cheaper on them. If your app serves a lot of files, egress, not storage, is the number to watch.
Is Cloudflare R2 always the cheapest?
For egress-heavy workloads, usually - because egress is free. But Backblaze B2 has the cheapest storage ($0.006/GB), so for archive or backup workloads that store a lot and download little, B2 often wins. Use the calculator with your real numbers; the cheapest provider genuinely depends on your storage-to-egress ratio.
What counts as a 'request' and do they matter?
Class A requests are writes and listings (PUT, POST, COPY, LIST); Class B are reads (GET). They're billed per million. For most apps requests are a rounding error next to storage and egress, but for workloads with billions of tiny objects they add up - the calculator includes them so you can see when they matter.
Are these prices exact?
They're public list prices for a US region and the standard/hot tier, captured July 2026. Real bills vary by region, storage class, redundancy, and committed-use discounts, and prices change. Treat the result as a solid estimate for comparison, and confirm current pricing on each provider's page (linked in the table) before committing.
Does the calculator send my numbers anywhere?
No. Everything is computed in your browser with JavaScript. Nothing is uploaded, logged, or stored, and it keeps working offline after the page loads.
How does Swyftstack storage compare?
Swyftstack uses flat monthly plans with free egress rather than per-GB metering, so your bill is predictable and a traffic spike never becomes a surprise egress charge - similar economics to R2 or B2, with managed PostgreSQL bundled in. It isn't in the per-GB table because a flat plan isn't directly comparable to metered pricing; see the callout under the calculator.
Related developer tools
More free, browser-only tools for PostgreSQL and cloud storage.
Paste an EXPLAIN ANALYZE plan and get an interactive tree, slow-node highlighting, row-estimate checks, and plain-English fixes.
Open toolBuild or decode a DATABASE_URL and generate ready-to-paste snippets for Node, Python, Go, Rust, Java, and PHP.
Open toolTurn CPU, RAM, and workload into a safe pool_size, max_connections, PgBouncer mode, and timeouts - with the math shown.
Open toolFind a safe max_connections and shared_buffers from your instance RAM, with per-connection memory accounted for.
Open toolPredictable storage. Managed Postgres. One bill.
Flat plans with free egress, so a traffic spike never becomes a surprise. Try Swyftstack free for 14 days - no credit card.