DEV Community

jamilxt
jamilxt

Posted on

The Cloud Repatriation Wave - Why Smart Companies Are Leaving AWS Behind

DHH dropped a bomb in 2022. 37signals was leaving the cloud. No more AWS. No more Azure. They went bare metal and cut their hosting bill by 10x.

Everyone called it crazy. "The cloud is the future." "You can't compete without AWS."

Four years later, the cloud repatriation wave is real. Companies of all sizes are pulling workloads back on-premise. And they're not just saving money. They're getting better performance and less complexity while they're at it.

The 37signals Story Is Not an Anomaly

When DHH announced 37signals was leaving the cloud, the backlash was fierce. Cloud providers had spent a decade convincing everyone that running your own hardware was amateur hour.

Then the numbers came out. 37signals saved $2 million in the first year [1]. Their response times dropped. Their ops team got smaller, not bigger.

They stood up a bare metal cluster in 6 weeks and cut their monthly bill from $200k to under $20k [2]. That is not a rounding error. That is your entire engineering payroll.

And this wasn't a tiny startup. Basecamp and HEY serve millions of users. If they can do it, most mid-size companies can too.

Dropbox Did It First

37signals got the headlines, but Dropbox blazed this trail back in 2016. They moved almost entirely off AWS and saved $75 million over two years [3].

Dropbox built their own infrastructure stack. They designed custom hardware. They optimized every layer. The result was faster sync speeds and a cloud bill that stopped growing like a cancer.

The lesson was simple. At scale, cloud margins become your margins. AWS charges a premium for convenience. When your infrastructure spend hits seven figures, that premium starts to hurt.

The Kubernetes Trap

Here is the irony. Containers and Kubernetes were supposed to make cloud costs manageable. Instead, they made everything worse.

K8s added layers of abstraction that nobody fully understands. Your average team spends more time debugging YAML than shipping features. The orchestrator itself burns CPU and memory you are paying for. And those "microservices" you decomposed into 40 containers? Each one has its own egress cost.

Companies are discovering that running K8s on bare metal eliminates the double-spend problem. You pay for compute. You do not pay for every packet that leaves the cluster. Network costs, the hidden tax of cloud architectures, simply disappear when your servers are in the same rack.

Who Should Leave the Cloud

Not everyone should repatriate. If you are a pre-revenue startup, stay in the cloud. You do not know your traffic patterns yet. You do not have the ops muscle. AWS, GCP, and Azure give you flexibility you cannot build yourself in week one.

But if you are a profitable company spending more than $100k a month on cloud, you should model the math. The break-even on bare metal is often under 12 months. At $50k/month, you can buy your own servers every six months for what you are burning on virtual instances.

Predictable workloads are the easiest candidates. Databases. API servers. Background job processors. Anything with steady-state traffic pays back fast on dedicated hardware. The bursty, unpredictable stuff can stay in the cloud. Hybrid works.

The Cloud Giants Have Noticed

AWS and Azure are not stupid. They see the trend. That is why AWS launched Dedicated Hosts and Azure has reserved instances that look suspiciously like long-term leases. The cloud is pivoting from "pay as you go" to "commit and save" because they know the math does not hold at scale.

Even VC money is flowing into bare metal providers. Hetzner, OVHcloud, and smaller regional providers are growing fast. The market for dedicated servers is healthier than it has been in a decade.

What I Actually Recommend

I run a mix. My personal infrastructure sits on a Hetzner dedicated server, and it costs me less than a single AWS RDS instance would. For side projects that might blow up, I use Digital Ocean or a small AWS account. The key is matching the deployment model to the workload, not defaulting to "put it on AWS" because that is what everyone does.

Here is the rule of thumb. If your cloud bill is higher than a junior developer's salary and your traffic is predictable, you should explore repatriation. Run the numbers for one service, not everything. Pick a stateless API or a database replica. See what it costs on dedicated hardware. The results will surprise you.

The pendulum is swinging back. The cloud was never wrong for everyone. But the idea that it is always the right answer is dead. Smart companies are taking control of their infrastructure again. They are saving money, simplifying their operations, and wondering why they did not do this sooner.


[1] https://www.37signals.com/payroll-report
[2] https://world.hey.com/dhh/we-stood-up-a-bare-metal-cloud-in-6-weeks-and-cut-our-hosting-bill-10x-19c58c54
[3] https://www.wired.com/2016/03/epic-story-dropboxs-exodus-amazon-cloud/
[4] https://world.hey.com/dhh/why-we-re-leaving-the-cloud-654b47e0

Top comments (0)