StackSays
Menu

Object Storage · decision tool

Best storage for serving media

Serving images/video is egress-dominated, so zero-egress providers (R2, Tigris) can undercut S3 by orders of magnitude — the opposite winner to backup storage. Priced at your egress.

Prices verified 2026-07-17 against official pricing pages · fit weights are our estimates (see methodology) · share the URL to share your configuration

As of Jul 2026, with 200 GB stored, 5,000 GB egress/month, a $20 budget for this slot, Cloudflare R2 ranks first for these inputs at 88% fit and a StackSays-estimated $2.85/month (Tigris: 82% fit, $3.90/month). Fit weights are our estimates; prices trace to official pages. Change any input below and the verdict recomputes.

Your situation

The verdict updates as you move these.

Clear pick for your inputs

Cloudflare R2fit 88% · est $2.85/mo

S3-compatible object storage with genuinely zero egress fees — the default egress-heavy pick

vs Tigris: fit 88% against 82%, est $2.85 against $3.90 per month

Cloudflare R2fit 88%
$2.85/mo
Tigrisfit 82%
$3.90/mo
Wasabifit 80%
$7.99/mo
Bunny Storagefit 79%
$2.00/mo
Supabase Storagefit 36%
$454.63/mo
Backblaze B2fit 36%
$51.32/mo
AWS S3 Standardfit 27%
$445.60/mo

The decision, in plain words

For a solo builder at 200 GB stored and a $20.00/mo budget for the object storage slot, Cloudflare R2 leads at 88% fit and $2.85/mo. The two rules doing the work: budget fit (~$2.85/mo is 14% of your $20/mo budget); batteries included (Bundles bundled CDN delivery — fewer services to glue at team size 1).

The gap to Tigris (82% fit) is wide at these inputs — you'd need to change your requirements, not your taste, to flip it.

Honest weak spot of the pick: no free tier — paying from day one.

Generated from the calculation above — every number traces to the sourced data; nothing here is written by an AI making things up.

Why Cloudflare R2 scores 88%

Budget fit (weight 30, our estimate) — ~$2.85/mo is 14% of your $20/mo budget+30
Batteries included (weight 12, our estimate) — Bundles bundled CDN delivery — fewer services to glue at team size 1+12
Exit cost (weight 4, our estimate) — S3-compatible API — moving providers is mostly an endpoint + credentials change+3.2
Ecosystem maturity (weight 8, our estimate) — established — our estimate from ecosystem age, docs and hiring pool+8
Egress predictability (weight 8, our estimate) — No metered egress fees — the bill can't blow up when traffic spikes (weight is our estimate)+8
Free-tier runway (weight 10, our estimate) — No free tier — paying from day one-6
Total (lines sum exactly)55.2
Possible range −72…+72 (sum of active rule weights) · fit % = (total + max) / (2 × max)(55.2 + 72) / 144 = 88%

How the $2.85/mo estimate is calculated

stored data overage — 190GB over 10GB included × $0.015/GB$2.85
egress overage — 5000GB over 0GB included × $0/GB$0
Monthly total (lines sum exactly)$2.85

What could change this verdict

Cost risk

Estimated now (StackSays estimate, not your final bill)$2.85/mo · Standard
Free-tier statusNo free tier — paid from the first unit

Official prices verified 2026-07-17; calculation is deterministic code over those prices.

At a glance

ToolFree tierPaid entryVerified
Cloudflare R2No free tierPay-as-you-go2026-07-17
TigrisNo free tierPay-as-you-go2026-07-17
Backblaze B2No free tierPay-as-you-go2026-07-17
Bunny StorageNo free tierStandard (HDD) $1/mo2026-07-17
WasabiNo free tierPay-as-you-go $7.99/mo2026-07-17
AWS S3 StandardNo free tierPay-as-you-go2026-07-17
Supabase Storage1GB storage + 5GB egress on the free Supabase projectPro plan $25/mo2026-07-17
Where did you land?anonymous, one click

Data sources

ToolSourceVerified
Cloudflare R2Cloudflare R2 pricing2026-07-17
TigrisTigris pricing2026-07-17
Backblaze B2Backblaze B2 pricing2026-07-17
Bunny StorageBunny Storage pricing2026-07-17
WasabiWasabi pricing2026-07-17
AWS S3 StandardAWS S3 pricing2026-07-17
Supabase StorageSupabase pricing2026-07-17

A monitor re-checks these pages for changes; when a vendor moves a price, the date updates and every verdict recomputes.

Keep deciding