Every VPS dies eventually. Drives fail, providers go down, and one wrong rm -rf can take your database with it. The fix is boring and unglamorous: an offsite backup that runs every night and costs almost nothing.
This comparison covers the three cheapest options: Backblaze B2, Hetzner Storage Box, and Wasabi. They are not the same kind of product. B2 and Wasabi are S3-compatible object storage; the Storage Box is a fixed-size volume you reach over SSH/SFTP, which makes it a natural rsync target. Pricing below is approximate and changes, so check each provider’s pricing page before you buy.
The short version
- Backblaze B2 wins for most VPS backups. Pay-per-GB storage with no minimum commitment, free egress up to 3x your stored data per month, and a 10 GB free tier that covers tiny servers outright.
- Hetzner Storage Box wins when you want a fixed monthly price and plain rsync/SFTP access. You pick a box size (1 TB is the common starting point) and pay the same amount whether you fill 10% or 100% of it.
- Wasabi wins when you keep large backups around for months and want zero egress fees, but its minimum-retention policy can bill you for data you already deleted. Check the current policy before you sign up.
How each service charges (pricing models)
All three are cheap. The trap is comparing their headline prices as if they charge the same way.
Backblaze B2: pay per GB, no commitment
B2 charges roughly $0.006–$0.007 per GB per month for storage, billed on what you actually use. Egress is free up to 3x your average stored data per month, then around $0.01/GB after that. API calls are mostly free. There is no minimum storage duration and no minimum object size, so a nightly job that replaces small files never triggers hidden fees. The 10 GB free tier means a small VPS backup can live there at zero cost. Backblaze also waives egress entirely through its Bandwidth Alliance partners (Cloudflare, Fastly, and others), which is nice for restores pulled through a CDN.
Hetzner Storage Box: fixed monthly box
A Storage Box is a fixed-size volume with a fixed monthly price. You choose the size, and you pay the same whether you store 50 GB or 900 GB in a 1 TB box. Access is over SFTP, FTPS, SSH/rsync, Samba, and WebDAV. There is no S3 API here, which is fine for backups because rsync over SSH is arguably the simplest backup transport ever made. Boxes live in Hetzner’s German and Finnish data centers, so check latency if your VPS is outside Europe.
Wasabi: pay per GB, free egress, minimum retention
Wasabi charges roughly $0.00699 per GB per month and includes free egress with no per-request API fees. The policy detail that matters: pay-as-you-go accounts have historically carried a 90-day minimum storage retention, with early deletion billed as if the data had stayed 90 days. That punishes backup jobs that churn data quickly, for example a daily full snapshot you prune after a week. Verify the current retention policy on Wasabi’s pricing page before you commit, because this is the single most common surprise bill from the three providers.
Comparison table
| Feature | Backblaze B2 | Hetzner Storage Box | Wasabi |
|---|---|---|---|
| Billing model | Pay per GB used | Fixed price per box size | Pay per GB used |
| Approx. storage cost | ~$0.006–0.007/GB/mo | Fixed per box (e.g. 1 TB entry tier) | ~$0.00699/GB/mo |
| Egress | Free up to 3x stored data, then ~$0.01/GB | Included (it’s your own box) | Free |
| Minimum retention | None | None | Check current policy (90 days historically) |
| Protocol | S3-compatible API | SFTP/SSH/rsync/WebDAV/SMB | S3-compatible API |
| Free tier | 10 GB permanent | None | None |
| Best for | Most VPS backups, restic/rclone | Fixed-budget rsync backups | Long-retention backups with big restores |
Prices are approximate and change over time. Always confirm on the provider’s official pricing page before you budget a backup strategy.
Hands-on: connect with rclone
rclone is the fastest way to push backups from any Linux VPS. Install it and configure each remote.
# Install rclone
sudo apt update && sudo apt install -y rclone
rclone config # follow the prompts: "b2" for Backblaze, "s3" for Wasabi
Backblaze B2
# Sync /var/backups to B2 (replace with your bucket name)
rclone sync /var/backups b2:my-vps-backups --progress
# Or copy only newer files, safer for append-style backup dirs
rclone copy /var/backups b2:my-vps-backups --update
Use sync only when you mean it: it deletes files on the destination that no longer exist locally. For backups, copy --update is the safer default.
Wasabi
# Wasabi is S3-compatible; point rclone at the right region endpoint
# In rclone config, choose "s3", provider "Wasabi", region like eu-central-1
rclone copy /var/backups wasabi:my-vps-backups --update
Hetzner Storage Box
No rclone needed for the simplest setup. The box exposes SSH, so plain rsync works:
# Replace u123456 with your Storage Box username
rsync -avz --delete /var/backups/ [email protected]:/home/backup/
# Or add it to cron for a nightly run at 2 AM
0 2 * * * rsync -az --delete /var/backups/ [email protected]:/home/backup/ >> /var/log/backup.log 2>&1
Use SSH key auth so cron can run without a password. Add your public key in the Hetzner Robot console under the Storage Box settings.
Hands-on: restic snapshots to each destination
restic gives you encrypted, deduplicated, incremental snapshots.
# Install restic
sudo apt update && sudo apt install -y restic
export RESTIC_PASSWORD="a-long-random-passphrase-stored-in-your-password-manager"
restic to Backblaze B2
export RESTIC_REPOSITORY="b2:my-vps-backups:/restic"
export B2_ACCOUNT_ID="your-key-id"
export B2_ACCOUNT_KEY="your-application-key"
restic init
restic backup /etc /var/www /var/lib/mysql --exclude-caches
restic snapshots # verify it worked
restic to Wasabi
export RESTIC_REPOSITORY="s3:s3.eu-central-1.wasabisys.com/my-vps-backups/restic"
export AWS_ACCESS_KEY_ID="your-wasabi-key"
export AWS_SECRET_ACCESS_KEY="your-wasabi-secret"
restic init
restic backup /etc /var/www /var/lib/mysql --exclude-caches
restic prunes old snapshots, which deletes data. With Wasabi’s minimum-retention policy, a snapshot you delete on day 10 can still be billed to day 90. Keep retention windows longer than the minimum or this math works against you.
restic to Hetzner Storage Box
export RESTIC_REPOSITORY="sftp:[email protected]:/home/restic"
restic init
restic backup /etc /var/www /var/lib/mysql --exclude-caches
restic’s sftp backend works fine against the Storage Box. It is slower than the S3 backends for large repos, but for a typical VPS it runs without complaint.
The honest traps to check before you choose
- Wasabi minimum retention. This is the big one. Deleted snapshots can keep billing you. Fine if you keep 90+ days of history anyway; expensive if you prune aggressively. Verify the current policy on their pricing page.
- B2 egress beyond 3x. Backups rarely restore, so this almost never bites. Restoring terabytes monthly usually means your strategy has a different problem.
- Storage Box fixed size. You pay for the whole box. A 1 TB box holding 80 GB of backups is 92% waste on paper. Size the box to your actual data, not your ambitions.
- Storage Box is not object storage. Tools that only speak S3 will not work with it. If your stack is all S3, B2 or Wasabi is the path of least resistance.
Which one should you pick?
- Pick Backblaze B2 if you want the cheapest per-GB storage with no lock-in, you use restic or rclone, and your restores are rare. The 10 GB free tier makes it the default answer for a single small VPS.
- Pick Hetzner Storage Box if you want a predictable monthly bill and you are happy with rsync over SSH. It is also the natural choice if your VPS already runs on Hetzner and you like keeping everything in one dashboard.
- Pick Wasabi if you keep months of snapshots and restore often enough that egress fees would add up elsewhere. Read the minimum-retention policy first and size your prune schedule around it.
Quick cost example (approximate)
A VPS with 200 GB of backup data, kept for a year, one restore per quarter of the full 200 GB:
- B2: 200 GB x ~$0.007 = ~$1.40/month for storage. Restores total ~66 GB/month average, well under the free 3x egress allowance, so roughly $1.40/month all-in.
- Storage Box: you would buy the smallest box that fits, paying its fixed monthly price regardless of how much of the 200 GB you actually use.
- Wasabi: 200 GB x ~$0.00699 = ~$1.40/month, free egress. Cheapest if retention stays above the minimum policy; worse than it looks if you churn data fast.
FAQ
Can I use a Hetzner Storage Box as offsite backup for a non-Hetzner VPS?
Yes. The box is reachable over the public internet via SFTP and rsync from anywhere.
Is Wasabi’s free egress really unlimited?
Wasabi does not charge for egress, but it does have fair-use expectations in its terms. Backup restores fit comfortably; do not treat it as a CDN.
Which is best for restic: B2, Wasabi, or Storage Box?
B2 and Wasabi speak native S3, which restic handles best. The Storage Box works through restic’s sftp backend and is perfectly fine for typical VPS-sized repos.
A backup you never test is a hope, not a backup. Whichever provider you pick, restore one file from a snapshot this week. It takes five minutes with restic and it is the only proof that matters.