Skip to content
Go back

Cold Archive: B2 vs Storj vs Scaleway Glacier

By SumGuy 10 min read
Cold Archive: B2 vs Storj vs Scaleway Glacier

Cold Archive: Where Cheap Looks Cheap Until You Need It Back

You’ve been running backups for months. Your restic or Borg repos are humming along, compressing your data down to something reasonable, and you’re sleeping better knowing that config disaster at 3 AM won’t cost you three days of work. But here’s the thing: those backups are sitting in a hot-tier cloud bucket, costing you $5–$20 a month just to exist. You don’t need to restore them tomorrow. You might not need them for a year. And when you do finally need them, you’re probably not in a hurry because it’s not a production fire—it’s a “oh crap I deleted my Home Assistant database” situation, and you’ll wait an hour for the restore.

That’s where cold storage comes in. And it is not all created equal.

What “Cold” Actually Means (And Where It Gets Expensive)

Cold storage tiers are a deal with the devil. You pay pennies per gigabyte per month—sometimes $0.002 per GB—but the retrieval costs and egress charges can absolutely wreck your budget if you’re not paying attention. It’s like buying a super-cheap airline ticket and then getting hit with carry-on fees, seat selection, baggage, and a “processing surcharge” that turns out to be 60% of the base fare.

The gotcha is this: cold storage vendors want you to remember that restores are supposed to be rare. If you’re pulling 100 GB out of cold storage twice a month, you’re doing it wrong—and they’re going to price you like you’re doing it wrong.

Before we get into specific services, understand the three costs:

  1. Storage cost: what you pay to keep the data frozen (the cheap part)
  2. Retrieval/restore cost: what it costs to thaw the data and make it accessible (the gotcha)
  3. Egress cost: what it costs to move the data out of their infrastructure (the real pain)

Miss any of these in your math, and your “cheap backup” turns into the most expensive decision you made all year.

Backblaze B2: The S3-Alike That Actually Respects Your Egress

Backblaze B2 is the evergreen choice for home labbers and small DevOps shops, and for good reason: it’s aggressively transparent about costs, and there’s a hidden trick that makes egress way cheaper than it looks.

Pricing:

The egress trick: Backblaze has a “Bandwidth Alliance” with Cloudflare. If you retrieve your backup through Cloudflare (and you should, because it’s basically free Cloudflare cache in front of your bucket), egress costs $0 for data cached and served from Cloudflare’s edge. If you’re doing a restore that hits Cloudflare’s cache, you’re getting data out for free. If you miss the cache or go direct, you eat the $0.01 per GB. Most of the time, small restore operations stay within cache.

B2 integrates natively with rclone, restic, and Borg. The setup is straightforward:

Terminal window
# rclone config
[b2-backup]
type = b2
account = your-app-key-id
key = your-app-key
bucket = your-bucket-name
hard_delete = true
Terminal window
# restic backup to B2
restic -r b2:bucket-name:/ backup /home/youruser/data
restic -r b2:bucket-name:/ snapshots
restic -r b2:bucket-name:/ restore latest --target /restore/path

Verdict: B2 is the practical choice. You’re not getting glacier-deep cold (data lives on hot hardware), but you’re getting S3-compatible simplicity with honest pricing and a clever egress loophole. The Cloudflare Bandwidth Alliance alone makes it worth a serious look.

Storj DCS: Decentralized Backup—Or a Very Distributed Risk?

Storj is the decentralized alternative. Instead of storing your data in one cloud vendor’s data center, it shards your backup across a network of independent storage nodes operated by random people around the world, who get paid in Storj tokens for storing your data. It’s got a noble idea baked in: no single entity controls your backup, and the network is distributed, so there’s no regional outage that takes down all your restores.

In practice, it’s more complicated.

Pricing:

The reality check: Storj’s decentralization comes with operational complexity. Your data is split into shards and distributed across nodes. When you restore, the network has to reassemble those pieces. This works fine until a few nodes go offline or your ISP hiccups, and suddenly your restore is slow or incomplete. The free egress is great until you need to actually use your backup outside Storj’s ecosystem, and then $0.045 per GB starts to sting.

There’s also the key rotation problem. Storj (like many decentralized systems) wants you to rotate your encryption keys periodically. But rotating keys means re-sharding your entire backup across the network. For a 500 GB archive, this is a multi-hour operation that costs real money in bandwidth and node work.

A sample restic config with Storj:

Terminal window
# restic with Storj S3 gateway
restic -r s3:https://gateway.storjshare.io/bucket-name init
restic -r s3:https://gateway.storjshare.io/bucket-name backup /home/youruser/data

Verdict: Storj is interesting if you’re ideologically opposed to cloud providers, or if you really need geographic distribution and can tolerate the operational overhead. For most home labs, it’s over-engineered. The free egress within the network is a nice touch, but once you leave the network, costs climb faster than B2.

Scaleway C14 Glacier: True Cold Storage (But With Gotchas)

Scaleway’s C14 tier (and its newer Glacier offering) is where you get genuine cold storage. Data is stored on tape or in infrequently-accessed tiers, and retrieval times are measured in hours, not seconds. The storage costs are genuinely cheap—$0.002 per GB per month—but the retrieval game is different.

Pricing:

The gotcha: Scaleway’s Glacier tier requires you to physically request a restore. You don’t just download your data; you initiate a restore job, wait up to 24 hours (sometimes more if they’re busy), and then you can download it. For a home lab disaster at 2 AM, this is not ideal. Also, the retrieval fee ($0.02 per GB) stacks on top of egress, so pulling out a 1 TB backup costs you $20 + $11 = $31, before any time spent waiting.

But here’s where it shines: Scaleway is based in Europe and subject to EU data protection laws. If GDPR compliance or geographic sovereignty matters to you, Scaleway is the only option in this list that gives you that.

Terminal window
# rclone config for Scaleway
[scaleway-glacier]
type = s3
provider = Scaleway
region = fr-par
access_key_id = your-key
secret_access_key = your-secret
endpoint = https://s3.fr-par.scw.cloud
storage_class = GLACIER

Verdict: Scaleway Glacier is for archives you’re genuinely okay with waiting a day to restore, and where EU jurisdiction is non-negotiable. The tape-backed storage is genuinely cold, and the price reflects it. Don’t use it for anything you might need to recover in under 12 hours.

The Comparison Table (In Plain English)

MetricB2StorjScaleway Glacier
Monthly storage (1 TB)$6$15.60$2–$3
Restore speedInstantMinutes1–24 hours
Restore complexitySimple (S3)Moderate (shards)Requires API call
Egress per 1 TB$10 (or $0 via Cloudflare)$45 external / free internal$11 (€10)
Retrieve cost (1 TB)$0$0$20
Total egress + retrieve$0–$10$45$31
Lock-in riskLowHigh (key rotation)Medium (egress fees)
GeographyUS (multi-region)DistributedEU (France)

A Real Example: 1 TB Archive Over 3 Years

You’ve backed up 1 TB of home lab configs and databases. You plan to restore it exactly once in the next three years (probably never, but you need one restore scenario to feel safe).

B2:

Storj:

Scaleway Glacier:

B2 wins for most people. Scaleway wins if you’re okay waiting a day and can amortize the cheap storage over years with no restores. Storj costs 3× more and adds operational complexity.

Encryption: Do It Yourself

None of these services offer transparent encryption that you can’t shoot yourself in the foot with. Backblaze and Storj offer server-side encryption, but here’s the rub: the provider holds the keys. If they disappear, get hacked, or have a policy change, your data security is downstream of their competence.

Better approach: Encrypt client-side with rclone crypt or restic’s native encryption before it leaves your machine.

Terminal window
# rclone crypt overlay
[b2-encrypted]
type = crypt
remote = b2-backup:bucket-name
password = your-password
password2 = your-password-2nd-factor

Both restic and Borg encrypt by default, so if you’re already using them, you’re fine. But if you’re uploading raw images or configs directly to B2 via rclone, layer encryption on top.

Object Lock: Protection Against Your Own Mistakes

If you’re paranoid about ransomware (you should be), consider object lock—a feature where you can make objects immutable for a specified period. B2 supports it. Scaleway supports it. Storj… is less clear on the docs, which should tell you something.

Object lock means that even if your credentials get compromised and an attacker gets into your bucket, they can’t delete your backups immediately. You’ve bought yourself time to react.

Terminal window
# B2 bucket with object lock (set at creation time)
# This is usually done via web console or API
# b2 create-bucket --object-lock-enabled my-backup-bucket

Picking a Cold Target

Here’s the decision tree:

The unsexy truth: B2 + restic, set-it-and-forget-it, is the right answer for 90% of home labs. Pair it with object lock, encryption, and a backup verification schedule (test restores quarterly), and you’re done. Your 3 AM self will appreciate it.

One more thing: check your service’s terms on deletion and retention locks. Some services charge you to delete data early (looking at you, AWS Glacier). B2 doesn’t, and neither does Scaleway—you can yeet your archives anytime. That’s worth remembering when you’re calculating the cost of switching providers.


Share this post on:

Send a Webmention

Written about this post on your own site? Send a webmention and it'll show up above once verified.


Next Post
Boundary vs Teleport

Discussion

Powered by Garrul . Sign in with GitHub or Google, or post anonymously.

Related Posts