Kamal · Self-hosted
Last updated
Temps vs Kamal
From deployment tool to full platform
Monthly cost at a glance
The short answer
- Kamal
- Kamal is a CLI from 37signals that builds a Docker image and pushes it to servers over SSH: no web dashboard, no persistent control plane, no database management and no monitoring, and nothing left on your machines except Docker.
- Temps
- Temps is a platform — a control plane with a web UI, git-push deploys with preview environments, managed Postgres, MySQL, MongoDB and Redis with HA, and analytics, error tracking, session replay and uptime monitoring included.
- What Kamal has that Temps doesn't
- A far smaller surface area: no agent on your servers, nothing to keep patched beyond Docker. Both are free and both deploy containers to hardware you own; what differs is how much runs on your machines.
Scored, dimension by dimension
What it is
TieTemps
Full self-hosted PaaS with a dashboard
Kamal
CLI deploy tool, no control plane
Built-in observability
TempsTemps
Analytics, errors, replay, uptime
Kamal
None — bring your own
Managed databases
TempsTemps
Postgres, MySQL, Mongo, Redis with HA
Kamal
Plain Docker containers, no HA
Git-push deploys and preview URLs
TempsTemps
Built in
Kamal
Manual CLI deploy; wire up your own CI
Footprint on your servers
KamalTemps
Control plane agent required
Kamal
Nothing beyond Docker
| Dimension | Temps | Kamal | Winner |
|---|---|---|---|
| What it is | Full self-hosted PaaS with a dashboard | CLI deploy tool, no control plane | Tie |
| Built-in observability | Analytics, errors, replay, uptime | None — bring your own | Temps |
| Managed databases | Postgres, MySQL, Mongo, Redis with HA | Plain Docker containers, no HA | Temps |
| Git-push deploys and preview URLs | Built in | Manual CLI deploy; wire up your own CI | Temps |
| Footprint on your servers | Control plane agent required | Nothing beyond Docker | Kamal |
Why teams switch from Kamal
Kamal deploys containers over SSH. Temps gives you that plus a dashboard, git-push deploys, preview environments, and built-in observability — in a single binary.
- Full PaaS, not just a deploy tool
- Kamal is a CLI-only deployment tool — no web UI, no dashboard, no git-push triggers. Temps is a complete platform with a web interface and automated workflows.
- Built-in observability
- Kamal has zero built-in monitoring. You need Sentry, PostHog, Pingdom, and a logging stack separately. Temps includes analytics, error tracking, session replay, and uptime monitoring.
- No Ruby required
- Kamal requires a Ruby environment and Docker on your local machine. Temps is a single Rust binary — install and go.
- Git-push deploys out of the box
- Kamal needs GitHub Actions or CI/CD glue for automated deploys. Temps supports native git-push deployment with zero configuration.
Feature comparison
What each platform includes out of the box, and what needs a separate subscription.
Git push deployments
Temps
YesNativeKamal
NoRequires CI/CD setupWeb dashboard
Temps
YesFull management UIKamal
NoCLI-onlyDocker support
Temps
YesKamal
YesZero-downtime deploys
Temps
YesKamal
YesAutomatic SSL
Temps
YesAutomaticKamal
YesVia kamal-proxyCustom domains
Temps
YesKamal
YesPreview environments
Temps
YesPer pull requestKamal
NoManual setup requiredManaged PostgreSQL
Temps
YesHA clustersKamal
NoDocker accessory (no HA)Managed Redis
Temps
YesIncludedKamal
NoDocker accessoryS3-compatible storage
Temps
YesBuilt-in (RustFS, MinIO supported)Kamal
NoError tracking
Temps
YesSentry-compatibleKamal
NoNot availableAnalytics
Temps
YesPrivacy-first, unlimitedKamal
NoNot availableSession replay
Temps
YesBuilt-inKamal
NoUptime monitoring
Temps
YesBuilt-in checks + alertingKamal
NoNot availableTransactional email
Temps
YesSMTP, SES, Scaleway, Cloudflare built inKamal
NoMulti-server support
Temps
YesKamal
YesRolling deployments
Temps
YesKamal
YesOpen source
Temps
YesMIT / Apache 2.0Kamal
YesMIT
What it actually costs
Both are free and open-source. But Kamal is a deployment tool only — adding a dashboard, observability, managed databases, and preview environments means integrating 5+ separate tools. Temps includes everything.
| Scenario | Temps | Kamal |
|---|---|---|
| Self-hosted | $0 | $0 |
| Cloud version | Coming soon | N/A (no cloud offering) |
| With full observability | $0 (included) | $0 + several tools to run yourself, or paid SaaS from $26/mo |
| With managed databases | $0 (included, HA) | $0 (basic Docker containers, no HA) |
Which one should you choose?
Choose Temps if you…
- You want a full PaaS with a web dashboard, not just a CLI tool
- You want git-push deploys without configuring GitHub Actions
- You need built-in analytics, error tracking, and monitoring
- You want preview environments for every pull request
- You need managed databases with HA support
- You don't want to install Ruby or manage a local toolchain
What Kamal does better than Temps
- You want the simplest possible deployment — just SSH + Docker
- You prefer a minimal tool with no server-side control plane
- You're deploying Rails apps and want first-party Basecamp tooling
- You already have a mature observability stack you're happy with
- You want zero dependencies on your servers beyond Docker
Migrating from Kamal
Easy difficulty
Kamal apps are Docker-based, so your images port directly. Replace the kamal.yml deploy config with a Temps service definition — most settings have direct equivalents. You gain a web dashboard and native git-push automation that replaces the manual SSH-based deploy workflow. The main learning curve is un-learning Kamal's CLI-centric approach, not any app code changes.
Frequently asked questions
Is Temps better than Kamal?
It depends on how much platform you want. Kamal is better if you want the smallest possible deployment tool: SSH plus Docker, no control plane, nothing running on your servers that you did not put there. Temps is better if you want a dashboard, git-push deploys, managed databases, and analytics, error tracking, session replay and uptime monitoring included rather than assembled from separate tools. Kamal deploys apps; Temps runs a platform.
What is the difference between Temps and Kamal?
Kamal is a command-line tool from 37signals that builds a Docker image and pushes it to servers you specify over SSH. It has no web dashboard, no persistent control plane, no built-in database management and no monitoring. Temps is a self-hosted PaaS: a control plane with a web UI, git-push deploys with preview environments, automatic SSL, managed PostgreSQL/MySQL/MongoDB/Redis, and built-in observability. Both deploy Docker containers to servers you own.
Can I migrate from Kamal to Temps?
Yes, and it is straightforward. Kamal apps are already Docker-based, so your images port over directly with no application code changes. You replace the kamal.yml deploy configuration with a Temps service definition — most settings have direct equivalents — and connect your git repository so deploys trigger on push instead of from your laptop. The real adjustment is un-learning the CLI-only workflow, not rewriting anything.
Does Temps replace Kamal entirely?
For most teams, yes. Temps covers everything Kamal does — building images, deploying containers to your own servers, zero-downtime rollouts, environment variables and secrets — and adds the dashboard, databases and observability Kamal deliberately leaves out. The exception is if you specifically want no control plane on your infrastructure. Kamal's design goal is to leave nothing behind except Docker, and Temps does run an agent.
Which is cheaper, Temps or Kamal?
Both are free and open source, so the licence cost is zero either way and you pay only for servers. The cost difference appears in what you have to run alongside them: with Kamal you self-host or subscribe to separate analytics, error tracking, session replay and uptime monitoring — several tools to maintain, or paid SaaS from around $26/month. Temps includes those in the same binary at no extra cost.
Which is better for Rails apps?
Kamal has the edge on affinity: it comes from 37signals, ships as the default deployment path in modern Rails, and its documentation and conventions assume a Rails app. Temps deploys Rails perfectly well through Dockerfile or Nixpacks builds and gives you managed Postgres and Redis alongside it, but you will find more Rails-specific tutorials for Kamal. If you want first-party Rails tooling, use Kamal; if you want the database and monitoring in the same place, use Temps.
Does Kamal have a web dashboard?
No. Kamal is intentionally CLI-only — there is no web interface for viewing deploys, reading logs, managing environment variables, or inspecting running containers. You do all of it through the kamal command and SSH. Temps provides a web dashboard for deployments, logs, metrics, databases, domains and the full observability stack, plus a CLI for scripting and automation.
What does Kamal do better than Temps?
Simplicity and footprint. Kamal has no server-side control plane, so there is nothing on your machines to keep updated, secure or debug beyond Docker itself. It is a smaller tool with a smaller surface area, it is backed by 37signals and used in production at scale by them, and it does not ask you to adopt a platform to deploy a container. Temps is a young project (v0.1.0) with far more moving parts.
Ready to switch from Kamal?
Self-host Temps for free, or join Temps Cloud from $29/month for queryable managed telemetry, query compute, and offsite backups.