Mastodon
Buyer's Guide · Object Storage · Canadian Hosted Updated Jun 2026

The Canadian S3 alternative.

Three US companies own about 85% of Canada's public cloud market. The harder question is not whether a Canadian option exists, it is how to pick one without trading a US lock-in for a worse one.

100% Canadian Hosted S3-Compatible Open Source (Garage) CAD Pricing No Egress Penalty

If you are reading this, you have probably already decided you want object storage under Canadian jurisdiction. The harder question is how to choose without trading a US lock-in for a Canadian one, paying more for less, or signing up for a migration you cannot reverse.

This guide covers what matters when you evaluate a Canadian S3 alternative, how the real options compare, and how to move your data without downtime. We build one of these products, so treat it as a vendor's guide written in the open. The comparison table includes our competitors with real numbers. Where Storm is not the right answer, we say so.

The gap is not an accident of better engineering. It is the result of default choices, made one storage bucket at a time, and it is reversible the same way.

Why look for a Canadian S3 alternative at all

The comparison

Pricing confirmed May/Jun 2026, per TB per month. USD figures converted at ~1.37 for context only.

Provider Residency Storage /TB/mo Egress Minimums Open engine Agent + upstream
Storm Buckets Canada $9 CAD 3x free, then throttle $1 / 100 GB block ✓ Garage ✓ Pulse + merged PRs
The Object Store Canada $9 CAD (1 TiB incl.) 3x free, then $0.00878/GiB 1 TiB / $9 floor
eazyBackup (e3) Canada $9 CAD (1 TB min) No egress fee 1 TB / $9 floor
FullHost Canada $30 CAD ($0.03/GB) $0.02/GB None
Backblaze B2 USA ~$8.20 ($6 USD) 3x free, then $0.01/GB None
Wasabi USA ~$9.60 ($6.99 USD) Zero (fair-use) 1 TB + 90-day
Cloudflare R2 USA ~$20.50 ($15 USD) Zero None
AWS S3 Standard USA ~$31.50 ($23 USD) ~$0.09 USD/GB None

The Canadian options cluster around $9 CAD per terabyte, which is the honest floor for sovereign hardware run in discrete units. The US engines look cheaper on the storage line until egress, minimums, or the exchange rate move the real number.

Storm is the only row that ships an open engine and an open agent. The storage runs on Garage, and the management agent (Pulse) is public, with our fixes sent back upstream. Nothing in the path is a black box you have to trust on faith.

No row here is "the cheapest." Cheapest is a race that ends in a crippled service. The point of the table is to show what you actually get for the price, and where it lives.

What to look for in a Canadian S3 provider

01 Where the data lives, and who can reach it

Residency is not just the storage region. Ask where the control plane, the backups, and the access logs live, and which legal regime can compel them. A Canadian bucket behind a US control plane is not fully Canadian.

02 Pricing you can forecast

A bill you can predict has three properties:

  • Fixed unit, fixed currency. Blocks in CAD, not per-byte in USD.
  • Egress that cannot surprise you. A throttle is recoverable; a metered overage is an invoice you find out about later.
  • Free operations. Uploads and API calls should not move your bill with request count.

03 S3 compatibility and a real migration path

"S3-compatible" should mean your existing tools work unchanged and your data can leave the same way it arrived. If migrating out needs a special export, it is not really compatible.

04 Durability, stated honestly

Ask for the replication model in plain terms. Storm's Standard tier is single-zone, RAID6-backed, RF1. That is a real, stated guarantee, not a string of nines that hides a single point of failure. Match the tier to how much the data would hurt to lose.

05 An open, auditable stack

Open source is not a slogan, it is the ability to verify. The engine and the agent that touch your data should be inspectable, and the audit log should be yours to read in real time.

How to migrate from S3, B2, or Wasabi

Migration is rclone, dry-run first, verified after. The same tool moves data in and out, which is the whole point of staying S3-compatible.

rclone · migration reversible by design
01 Add Storm and your source as rclone remotes. $ rclone config
02 Dry-run the copy to see exactly what would move. $ rclone copy source:bucket storm:bucket --dry-run
03 Run it for real, with live progress. $ rclone copy source:bucket storm:bucket --progress
04 Verify both ends match before you cut over. $ rclone check source:bucket storm:bucket

Cut over once rclone check is clean. If you ever want to leave, the same four commands run in the other direction. No export ticket, no exit fee.

Frequently asked

Is Storm Buckets actually S3-compatible?

Yes. Storage runs on Garage, an open-source S3-compatible engine. Standard tools and SDKs work against it. Garage publishes its S3 compatibility matrix so you can confirm coverage before you commit.

Where is my data stored?

On Canadian hardware, operated by Storm in Canada. Your objects and your audit log stay under Canadian jurisdiction.

How much does it cost?

Two fixed monthly blocks, priced in CAD: a 100 GB Playground block at $1 CAD, and a 1 TB Production block at $9 CAD. Uploads, API operations, and creating buckets and keys are always free.

What about egress fees?

Your monthly egress allowance is 3x your total capacity. Cross it and reads are throttled, never billed. There is no surprise transfer invoice.

Can I migrate away later?

Yes. Because the API is S3-compatible, the same rclone command that moves data in moves it out. No proprietary format, no exit fee.

Storm Buckets · Open Alpha

Canadian-hosted object storage, priced in CAD.

The alpha is free while we finish billing. Create an account and start with a 100 GB Founding Alpha grant. No card, no checkout, no catch while the meter is off.