Backblaze B2 vs Cloudflare R2 vs Amazon S3 for photo backup
Pick Backblaze B2 if you want the cheapest monthly bill. Pick Cloudflare R2 if you also re-download a lot or run a website off the same bucket. Pick Amazon S3 only if you already live in AWS or need a Glacier-style cold-storage tier for archival photos.
The 30-second comparison
| Provider | Storage / TB / mo | Egress | Free tier | Best for |
|---|---|---|---|---|
| Backblaze B2 | $6.00 | Free up to 3× stored | 10 GB forever | Cheapest day-to-day backup |
| Cloudflare R2 | $15.00 | $0 (always free) | 10 GB/mo | Heavy re-downloads, websites |
| Amazon S3 Standard | $23.00 | $0.09 / GB | 5 GB / 12 mo | AWS-native users only |
| Amazon S3 Glacier IR | $4.00 | $0.03 / GB retrieval | — | Archive you rarely view |
Prices verified May 2026. Sources: Backblaze, Cloudflare, AWS.
Backblaze B2 — the default recommendation
Backblaze B2 is the cheapest of the three at $6 per TB per month. It is S3-compatible, easy to sign up for (email plus credit card; no business onboarding), and the free tier covers 10 GB plus 1 GB of daily downloads, which is enough to evaluate Breazzy for a week or two before you owe anything.
Egress is "free up to three times your stored amount per month". For a backup workload that is effectively unlimited — you only download photos occasionally, not at three-times-your-library scale. Where this hurts is if you treat your bucket as a website asset host with thousands of viewers.
Gotcha: the S3 endpoint depends on the region your bucket lives in (s3.us-west-004.backblazeb2.com and similar). Breazzy needs the full endpoint URL, not just backblazeb2.com. The setup guide walks through finding it.
Cloudflare R2 — pick this if egress matters
Cloudflare R2 is more expensive per gigabyte stored ($15/TB/mo) but charges zero for egress, forever. For pure backup that does not matter. It starts to matter if you also use the bucket as a CDN origin, host shared family albums off it, or routinely sync the bucket back to another machine.
R2 is also useful if you want a single bucket reachable from a custom domain — Cloudflare's own DNS makes this trivial. Free tier is 10 GB of storage per month and the first 1 million Class A operations.
Gotcha: R2 endpoints are scoped to your Cloudflare account ID, not a region. The endpoint format is https://<account-id>.r2.cloudflarestorage.com — Breazzy asks for the account ID separately to construct this.
Amazon S3 — only if you have a reason
Amazon S3 is the most expensive at $23 per TB per month for Standard, and it charges nine cents per gigabyte for egress. For a photo library you almost never download in bulk, that egress cost is mostly theoretical — but the storage cost is real, and four times higher than B2.
S3 makes sense if you are already an AWS customer with consolidated billing, if you want lifecycle policies to auto-tier old photos to Glacier Instant Retrieval ($4/TB/mo), or if you have compliance reasons that mandate AWS. For everyone else, B2 or R2 is the rational choice.
Gotcha: S3 buckets live in a specific region (us-east-1, eu-west-2, etc.) that must match what you tell Breazzy. The Glacier IR tier needs a lifecycle rule on the bucket; Breazzy uploads to Standard by default.
What about Wasabi, iDrive E2, MinIO, others?
Breazzy speaks standard S3 SigV4. In principle, any S3-compatible service works: Wasabi ($6.99/TB/mo, 90-day minimum storage charge), iDrive e2 ($2.49/TB/mo, very cheap but smaller company), or your own MinIO server. Official supported providers are B2, R2, and S3 because those are the ones we test against on every release. Treat anything else as best-effort.
Frequently asked
Which provider has the best Android upload speed?
All three saturate a typical home Wi-Fi connection (50–200 Mbps). On mobile data, the bottleneck is your carrier, not the provider. Differences in single-stream upload latency are under 30ms in most regions and invisible to a backup workload.
Can I switch providers later?
Yes. Add a new destination in Breazzy, do a fresh backup to it, then remove the old destination. Or use rclone on a desktop to copy the existing bucket to a new provider — Breazzy will recognise the files already there on the next sync and skip re-uploading.
Does Breazzy support multiple destinations at once?
Yes, you can configure more than one destination and route different albums to different buckets — useful if you want family photos on cheap B2 and a small "favorites" album mirrored to R2 for sharing.