Hetzner vs Kamal for Solo Developers
Comparing Hetzner and Kamal for solo developers. Features, pricing, pros and cons, and which one to pick for your next project.
Quick Comparison
| Feature | Hetzner | Kamal |
|---|---|---|
| Type | Cloud/VPS provider | Deployment tool (CLI gem) |
| Pricing | From EUR 3.99/mo (entry CX VPS, excl. VAT, from 1 April 2026) | Free, MIT licensed |
| Latest version | Ongoing cloud platform (April 2026 pricing) | v2.11.0 (18 March 2026) |
| Built with / language | German cloud infrastructure | Ruby (by the Rails team) |
| Adoption | One of Europe's largest hosting providers | 14.2k GitHub stars, ~18.9M gem downloads |
| Reverse proxy | None provided (your choice) | kamal-proxy (replaced Traefik in Kamal 2) |
| Learning Curve | Moderate (Linux server admin) | Moderate (Docker + a YAML file) |
| Best For | Affordable servers with full control | Zero-downtime deploys to any server |
| Solo Dev Rating | 8/10 | 8/10 |
Hetzner Overview
Hetzner is the European cloud provider that delivers the best price-to-performance ratio in the industry. The entry shared-vCPU cloud server (the CX line, 2 vCPUs, 4GB RAM, 40GB SSD, 20TB of traffic) costs EUR 3.99/month excluding VAT as of the 1 April 2026 price adjustment, up from EUR 2.99. Dedicated servers with 64GB RAM still start in the low double-digit euros per month. These aren't toy specs. They're production-grade machines at hobby-project prices, even after a price round that pushed parts of the catalog up by as much as 37 percent.
The platform is deliberately minimal. You get servers, load balancers, floating IPs, volumes, and DNS. No managed databases, no app platform, no deployment pipelines. Hetzner focuses on doing one thing well: giving you reliable, affordable compute. Everything else is your responsibility.
For solo developers, Hetzner represents the most runway per dollar. Running a full production stack (web server, database, cache, background workers) on a single Hetzner VPS is completely viable, and it costs less than a single entry-level instance on most competitors.
Kamal Overview
Kamal is a deployment tool created by the team behind Ruby on Rails. It deploys Docker containers to any server with zero downtime. No Kubernetes, no PaaS, no vendor lock-in. Just Docker, SSH, and a YAML configuration file. DHH built it to deploy Basecamp and HEY, so it handles real production workloads.
You define your deploy configuration in a deploy.yml file with the server IP, Docker image, environment variables, health checks, and any accessories like databases or Redis. Run kamal deploy and it builds your Docker image, pushes it to a registry, SSHs into your server, pulls the image, and performs a zero-downtime rolling deployment. Since Kamal 2, that routing is handled by kamal-proxy, a purpose-built reverse proxy that replaced Traefik. The Rails team found Traefik to be the most complex part of the stack and its declarative model a poor fit for an imperative CLI, so they wrote their own proxy with clearer errors and simpler config.
Kamal handles SSL automatically via Let's Encrypt through kamal-proxy, manages environment variables securely, and supports deploying to multiple servers as well as running several apps behind one proxy on a single host. It's Capistrano for the Docker age. Simple, opinionated, and effective.
Key Differences
They're complementary, not competing. Hetzner provides the server. Kamal deploys your code to it. Comparing them directly is like comparing a car to a road. You need both, and they work exceptionally well together.
Server management vs. deployment management. Hetzner manages the hardware (uptime, network, physical security). Kamal manages the application deployment (building, shipping, rolling updates). Everything in between, like OS updates, firewall rules, and security patches, is still on you.
Configuration approach. Hetzner is configured through a web dashboard or API. Kamal is configured through a single YAML file checked into your repository. This makes Kamal deployments reproducible and version-controlled, which matters when you're the only person who knows how the server works.
Zero-downtime deployments. Hetzner alone gives you no deployment strategy. You SSH in and restart your app, which means downtime. Kamal gives you zero-downtime deploys by default. It starts the new container, waits for a health check against the /up endpoint, switches traffic via kamal-proxy, then stops the old container. Your users never see a blip.
Learning investment. Hetzner requires Linux administration skills. Kamal requires Docker knowledge and familiarity with its configuration format. Together, you need both skill sets. The upside is that these skills transfer everywhere, unlike learning a proprietary PaaS platform.
By the Numbers (2026)
Here is the verified current state of both tools, checked on 28 May 2026.
Hetzner Cloud
- Entry shared-vCPU server (the CX line): 2 vCPUs, 4GB RAM, 40GB SSD, 20TB traffic for EUR 3.99/month excluding VAT, effective with the 1 April 2026 price adjustment (it was EUR 2.99 before).
- The next CX tier (4 vCPUs, 8GB RAM) runs EUR 6.49/month, and the AMD-based CPX22 (2 vCPUs, 4GB RAM, 80GB SSD) runs EUR 7.99/month, both excluding VAT and post-adjustment.
- A primary IPv4 address adds EUR 0.50/month per instance. IPv6 is always included, so an IPv6-only server shaves that EUR 0.50 off.
- The April 2026 round raised parts of the catalog by up to 37 percent. Even so, the entry server is still cheaper than the smallest always-on instance on most US hyperscalers.
Kamal
- Latest version is v2.11.0, released 18 March 2026. It ships as a Ruby gem (
gem install kamal) and is MIT licensed, so it is free with no usage tiers or seat costs. - The project carries about 14,200 stars and 715 forks on GitHub and has been downloaded roughly 18.9 million times on RubyGems, which is real production adoption rather than a weekend experiment.
- Kamal is written in Ruby by the Basecamp and Rails team, and despite the Rails heritage it deploys any Dockerized app, including Django, Node, Go, or a static site in a container.
- Kamal 2 replaced Traefik with kamal-proxy for routing, automatic Let's Encrypt TLS, and running multiple apps behind one proxy on a single server.
Real Cost at Solo-Dev Scale
The price comparison here is lopsided in the best possible way for a solo developer. One tool charges money and the other is free, so the only number that moves is the Hetzner bill. Take a realistic small production stack: one app container, a Postgres accessory, and a Redis accessory, all on a single server, fronted by kamal-proxy for zero-downtime deploys.
Assumptions: the entry CX server at EUR 3.99/month, one primary IPv4 at EUR 0.50/month, no extra volumes because the 40GB SSD is enough for a young app, and well under the included 20TB of traffic. Kamal contributes EUR 0.00 because it is open source and runs from your laptop or CI.
- Hetzner server: EUR 3.99/month
- Primary IPv4: EUR 0.50/month
- Kamal: EUR 0.00
- Total: EUR 4.49/month excluding VAT, or about EUR 54/year before tax for the full stack
Run that same app, database, and cache on a managed PaaS and you are typically looking at 15 to 30 USD/month once you add a database add-on, and that is before you outgrow the free tier. The Hetzner plus Kamal route trades roughly an hour of one-time Linux and Docker setup for a bill that stays a single-digit euro figure as you grow. If you do outgrow the entry server, you step up to the EUR 6.49 tier or the EUR 7.99 CPX22 without changing your deploy.yml at all, since Kamal does not care how big the box is.
When to Choose Hetzner (Without Kamal)
- You already have a deployment tool you prefer (Ansible, GitHub Actions, Coolify)
- You're running infrastructure that isn't container-based
- You want to use a PaaS layer like Coolify or Dokku instead
- You're experimenting and just need SSH access to a cheap server
When to Choose Kamal
- You want zero-downtime deployments without Kubernetes complexity
- You like having deployment configuration in version control
- You're deploying Docker containers and want a simple, reliable tool
- You prefer CLI-driven workflows over web dashboards
- You deploy to multiple servers and want one command to update them all
The Verdict
Hetzner and Kamal are a natural pairing. Hetzner gives you the cheapest production-ready servers available, and Kamal gives you professional-grade deployments on top of them. Together, you get zero-downtime deploys to affordable infrastructure for the cost of a Hetzner VPS (EUR 3.99/mo plus EUR 0.50 for the IPv4 address) and nothing else, since Kamal is free and MIT licensed.
If you're building a Rails, Django, or any Dockerized application and you want to own your infrastructure without the complexity of Kubernetes or the cost of a PaaS, Hetzner + Kamal is one of the best stacks available to solo developers. You get the reliability of a proven cloud provider, the simplicity of a single deploy command, and the total cost stays under $5/month.
The only reason not to use this combination is if you specifically don't want to manage servers at all. In that case, a managed PaaS like Railway or Render makes more sense. But if you're comfortable with basic server admin, Hetzner + Kamal gives you more control at a fraction of the cost.
Sources
All figures checked on 28 May 2026.
- Hetzner price adjustment effective 1 April 2026, official plan-by-plan old and new prices: https://docs.hetzner.com/general/infrastructure-and-availability/price-adjustment/
- Hetzner Cloud 2026 review with entry CX specs and pricing context: https://betterstack.com/community/guides/web-servers/hetzner-cloud-review/
- Reporting on the up-to-37-percent Hetzner increase: https://www.tomshardware.com/tech-industry/hetzner-to-raise-prices-by-up-to-37-percent-from-april-1
- Kamal GitHub repository, stars, forks, language, and license: https://github.com/basecamp/kamal
- Kamal release and download counts on RubyGems (v2.11.0, 18 March 2026): https://rubygems.org/gems/kamal
- Kamal switch from Traefik to kamal-proxy in Kamal 2: https://kamal-deploy.org/docs/upgrading/proxy-changes/
- Kamal installation and deployment workflow: https://kamal-deploy.org/docs/installation/
Like this? You'll like what I'm building too.
Two ways to support and get more of this work.
HEARTH
A privacy-first Life OS for your desktop. Journal, tasks, and notes that stay on your machine. Coming soon, direct download from this site.
Read moreMY TOOLKITS
Receipts-first toolkits for shipping after hours, building Claude agents, publishing on Amazon, and more. The exact methods I used, not theory.
Browse on WhopRelated Articles
Angular vs HTMX for Solo Developers
Comparing Angular and HTMX for solo developers. Features, pricing, pros and cons, and which one to pick for your next project.
Angular vs Qwik for Solo Developers
Comparing Angular and Qwik for solo developers. Features, pricing, pros and cons, and which one to pick for your next project.
Angular vs SolidJS for Solo Developers
Comparing Angular and SolidJS for solo developers. Features, pricing, pros and cons, and which one to pick for your next project.