Compare clouds

Picking a cloud is partly engineering and partly TCO modeling. This page walks through the three honest-comparison axes — what you're billed for, what the receipts look like, what migration costs — against six other clouds. If you want help running this against your own workload, write to [email protected] and we'll do the modeling with you.

What this page covers

  1. Billing units. What the cloud charges for — tokens, GB-month, GPU-second, vCPU-hour, joules.
  2. Audit / ESG evidence. What you can show your auditor for a given line item.
  3. Migration cost. Realistic estimates of code-change effort + parallel-run window.

By billing unit

CloudUnitIdle costEgressPer-call receipt
AWSvCPU-hour, GB-month, requests, GB-egressFull reserved cost$0.05-$0.09/GBNone per request; aggregate monthly
GCPvCPU-hour, GB-month, per-100ms, GB-egressFull reserved cost$0.08-$0.12/GBNone per request; aggregate monthly
AzurevCPU-hour, GB-month, GB-egressFull reserved cost$0.05-$0.087/GBNone per request; aggregate monthly
CloudflareRequests, GB-egress (zero on R2)Workers free at small scale$0/GB (R2)None
OpenAI / AnthropicTokens (in + out)n/an/aNone — token count, not energy
VercelVFC-time, requests, GB-storage, GB-egressCompute scales to zero; storage continues~$0.04/GBNone per request
Joule CloudJoules consumedNear-zeroFree on meshSigned receipt, every call

By migration cost

FromCode changeData moveParallel-run window
OpenAI2 lines (base_url + api_key)none1-2 weeks
AnthropicSDK swap + system-prompt movenone1-2 weeks
AWS S32 lines (endpoint + creds)rclone / aws-cli1-3 days (size-dependent)
AWS (full)service-by-service mappingper-service2-6 weeks
GCP (full)service-by-service mappingper-service2-6 weeks
Cloudflare Workershandler-signature swap + bindings → env varsR2 → Object Store (rclone)1 week
Verceladd Dockerfile + invisible.hclper-service (Postgres, blob)1-2 weeks
Flyfly.toml → invisible.hcl (one-to-one)per-service1 week
Railwaywire CI to invisible deployper-service1 week
Modaldecorators → containers + invisible.hclvolumes → Object Store1-2 weeks
ReplicateSDK swap (or Cog container deploy)none for listed models1 week

The dedicated migration guides have the actual diffs and CI snippets:

When NOT to pick Joule Cloud

We're honest about this:

The one-week test

If you're considering us: run a week of representative traffic in parallel. Compare the two bills line for line. Compare the latency p50 and p99. Compare what your CSRD auditor would do with the two sets of evidence. Make the call from data.