Open-source alternatives to Vercel: 4 app deployment platform tools compared
Replacing Vercel with software you host means the preview environments, the edge network and the zero-configuration builds are now your problem, and the cost arrives as a server you patch. coollabsio/coolify is the one most readers should look at first, because it puts a dashboard over servers they already rent, while dokku/dokku is the opposite answer: no dashboard at all.
What Vercel does, and why people look elsewhere
Vercel is a hosted platform that builds and deploys web apps from a Git repository, with preview deployments, a global edge network and serverless functions.
- usage-based bandwidth and function billing that jumps once traffic grows
- framework features that behave differently off the platform
- no way to deploy onto a server or cloud account you already pay for
The candidates at a glance
| Project | Licence | Maintenance | Language | GitHub stars | Install | Best for |
|---|---|---|---|---|---|---|
| coollabsio/coolify | Apache-2.0Permissive: commercial use allowed | Commits in the last dayLast push October 11, 2026 | PHP | 62,859 | See analysis | You already have a VPS or bare metal server and want Heroku-style deploys, managed databases and one-click services on it, with a web interface instead of a shell script. The README states that all configurations are saved to your server, so running resources survive if you stop using the tool. |
| Dokploy/dokploy | Custom licenceCustom licence: read the LICENSE file | Commits in the last six monthsLast push October 8, 2026 | TypeScript | 37,753 | See analysis | You want a self-hosted control plane with Traefik routing, native Docker Compose support, Docker Swarm for multiple nodes, and managed databases including MySQL, PostgreSQL, MongoDB, MariaDB, libsql and Redis, with backups you can automate to external storage. |
| dokku/dokku | MITPermissive: commercial use allowed | Commits in the last six monthsLast push October 11, 2026 | Shell | 32,177 | See analysis | You are comfortable on the command line, run Ubuntu 22.04 or 24.04 or Debian 11 or later, and want git-push deploys on a single host with no control plane to maintain. It is the smallest of the four and the only one that is a CLI and nothing more. |
| caprover/caprover | Custom licenceCustom licence: read the LICENSE file | Commits in the last six monthsLast push October 9, 2026 | TypeScript | 15,182 | Command documented | You run one small server and want dropdown installs for MariaDB, MySQL, MongoDB and Postgres, automatic HTTPS and git-push deploys without learning Docker or nginx. Docker Swarm, nginx, Let's Encrypt and NetData sit behind a browser panel and a CLI. |
Each alternative in detail
coollabsio/coolifyAn open-source, self-hostable PaaS alternative to Vercel, Heroku & Netlify that lets you easily deploy static sites, databases, full-stack applications and 280+ one-click services on your own servers.
- Best for
- You already have a VPS or bare metal server and want Heroku-style deploys, managed databases and one-click services on it, with a web interface instead of a shell script. The README states that all configurations are saved to your server, so running resources survive if you stop using the tool.
- What you give up
- High availability, email notifications and better support are what the README places behind the paid cloud version rather than the self-hosted one, so a team that needs an uptime guarantee is not getting it here. Installation is a curl piped into bash, and our analysis of Coolify says to read scripts/install.sh before running it rather than piping it blind. The catalogue is also large, with more than 280 one-click services, only some of which you will ever use.
Dokploy/dokployOpen Source Alternative to Vercel, Netlify and Heroku.
- Best for
- You want a self-hosted control plane with Traefik routing, native Docker Compose support, Docker Swarm for multiple nodes, and managed databases including MySQL, PostgreSQL, MongoDB, MariaDB, libsql and Redis, with backups you can automate to external storage.
- What you give up
- The licence is the thing to read first: the repository root carries LICENSE.MD and LICENSE_PROPRIETARY.md, and our analysis of Dokploy says to confirm which terms apply to your use, because this one cannot be classified in a sentence. The version line is also young, with the releases listed at v0.30.x. The install script assumes Docker and Traefik on the host, so a locked-down server is a question to answer before you commit.
dokku/dokkuA docker-powered PaaS that helps you build and manage the lifecycle of applications
- Best for
- You are comfortable on the command line, run Ubuntu 22.04 or 24.04 or Debian 11 or later, and want git-push deploys on a single host with no control plane to maintain. It is the smallest of the four and the only one that is a CLI and nothing more.
- What you give up
- There is no web dashboard, no multi-node scheduling and no managed upgrade path, and our analysis of Dokku lists all three as reasons not to adopt it, so onboarding anyone means teaching them commands. Installation pins a DOKKU_TAG in the bootstrap URL, which means the version you are leaving is worth reading the upgrade documentation for first. The requirements are also specific: a fresh VM on a supported distribution and an SSH keypair that can be imported for deployment.
caprover/caproverScalable PaaS (automated Docker+nginx) - aka Heroku on Steroids
- Best for
- You run one small server and want dropdown installs for MariaDB, MySQL, MongoDB and Postgres, automatic HTTPS and git-push deploys without learning Docker or nginx. Docker Swarm, nginx, Let's Encrypt and NetData sit behind a browser panel and a CLI.
- What you give up
- There is no documented rollback, no per-service resource policy and no Kubernetes-style API, and our analysis of CapRover lists those as the things that frustrate people who need them, so a bad release is a manual redeploy. The repository reports NOASSERTION rather than a named licence, so the LICENSE and TERMS_AND_CONDITIONS.md files have to be read to establish what you may do with it. One server is the design rather than a starting point.
- First install step
- Full setup guide
npm install -g caprover caprover login caprover deploy
Two dashboards, one more dashboard, and one git-push target
Vercel is a hosted platform that builds and deploys web apps from a Git repository, with preview deployments, a global edge network and serverless functions. The reasons people look elsewhere are three, and each candidate here serves a different one. Bandwidth and function billing that jumps once traffic grows. Framework features that behave differently off the platform. And no way to deploy onto a server or cloud account you already pay for.
Three of these four are control planes, and they differ in scope.
coollabsio/coolify reaches the widest. It manages servers, applications and databases over an SSH connection, and the README says you can point it at a VPS, bare metal or a Raspberry Pi. Alongside your own apps it ships more than 280 one-click services, which is where a lot of its value sits for a team that does not want to run its own mail server or monitoring.
Dokploy/dokploy is narrower and more explicit about the pieces. It integrates with Traefik for routing and load balancing, takes Docker Compose files natively, scales to multiple nodes with Docker Swarm, creates databases for MySQL, PostgreSQL, MongoDB, MariaDB, libsql and Redis, and automates backups to external storage. The README also lists deployment notifications through Slack, Discord, Telegram and email, plus a CLI and an API.
caprover/caprover is the smallest of the three, and the most opinionated about hiding the infrastructure. Docker Swarm, nginx, Let's Encrypt and NetData run underneath, and the panel exposes a dropdown for database installs and a one-line deploy.
dokku/dokku is not a control plane. It is a shell-based set of plugins that turns one Ubuntu or Debian host into a git-push target, which the README calls a Docker powered mini-Heroku. The absence of a dashboard is the design, not a gap, and that is exactly who it is for.
Why Heroku, Netlify and Railway are not on this list
Heroku, Netlify and Railway are the three names most readers arrive with alongside Vercel, and none of them is here, for the same reason Vercel is not here: they are hosted. Each of them runs your build on infrastructure you do not own and bills you for what it uses.
That is not an argument against them. If nobody on the team wants to keep a server patched, a managed platform is the right answer and every project on this page will make things worse. Heroku in particular has a model that developers know, and Netlify's static build pipeline suits a large class of sites without any server at all.
Railway comes up in the same searches because it is closer in shape to the tools here, sitting between a PaaS and a plain container host, which makes it a reasonable reading of the same need. It is still a hosted service.
What is also absent is the Kubernetes ecosystem. A cluster gives you self-hosting and a declarative API, and it is the standard answer for teams with a platform engineer, but it is a different category of commitment from anything on this page: these four assume one or a few servers you already rent, and Kubernetes assumes you want to operate a control plane. If that is the shape of your problem, the search you want is not this page.
One more omission worth stating plainly. None of these four is a global edge network, a CDN or a serverless function runtime in the sense Vercel means it. A self-hosted deployment is a container on a machine, and the global delivery question has to be answered separately.
Choosing by scenario: a solo developer, a small team, a company with compliance needs, a team embedding deployment
The split that matters is how much of the infrastructure you are willing to see.
A solo developer with one or two apps and a rented VPS should look at caprover/caprover or dokku/dokku. Both assume you already have a server. CapRover trades the terminal for a panel, which is worth it if you would rather click than remember commands; Dokku is the reverse, and our analysis of Dokku puts it squarely at people who are comfortable on the command line. Either way the deploy is a git push.
A small team with several services and a database per service is where coollabsio/coolify earns its place. Deploying a static site, a full-stack app and a Postgres instance from one interface, on hardware you control, is the Heroku workflow without a hosted control plane. The README's own framing is the reason: configurations live on your server, so the tool is not the only way to reach what it deployed.
A company with compliance or residency requirements looks at the same three and asks who patches the host. None of them removes the need for someone to run security updates on the server, and a self-hosted control plane adds a second thing to patch on top of that machine. What it does remove is the vendor running your code, which is usually the actual requirement.
A team embedding deployment into its own developer workflow is a slightly different question, and Dokploy/dokploy answers it most directly with its CLI and API, plus deployment notifications. Coolify's paid cloud version adds high availability and support for teams who would rather not hold the pager for the control plane itself.
What each control plane costs you to keep running
The install commands on this page are the shortest way to see the difference in what you end up operating.
Three of the four are a single piped command: curl for Coolify, curl for Dokploy, and npm install -g caprover followed by caprover login and caprover deploy. Underneath them sit Docker, a proxy and a certificate manager, and the README for CapRover names them as Docker Swarm, nginx, Let's Encrypt and NetData. So the promise of a one-line install is real, and so is the fact that you now own a Docker host with a reverse proxy in front of it.
dokku/dokku is the outlier, and its install command says why. It is wget of a bootstrap script followed by running it with DOKKU_TAG set, on a fresh VM running Ubuntu 22.04 or 24.04 or Debian 11 or later, with an SSH keypair that gets imported automatically if it already exists. That is a more constrained starting point, and it is also a much smaller system to reason about once it is running.
The differences that matter after the first week are about the workloads you end up with. Coolify and Dokploy both offer managed databases, which means backups, upgrades and failover become your problems rather than a provider's. Dokploy automates database backups to external storage, which is the single most useful thing on its list for a team that has real data in there. CapRover's one-server design means capacity planning is a resize, not a cluster.
None of these has an answer for the edge network. That is a separate product you buy or run, and it is the piece Vercel gives you that nothing on this page does.
Licences: Apache-2.0, MIT, and two GitHub cannot classify
Half of this list is straightforward and half of it needs a lawyer, and the split is worth knowing before you read the READMEs.
coollabsio/coolify is Apache-2.0. dokku/dokku is MIT. Both let you run a modified version for internal purposes without publishing your changes, and neither imposes a condition on the code you deploy with them. For a team standardising on one of these, the licence conversation ends quickly.
Dokploy/dokploy is a repository GitHub cannot classify from its metadata, and the analysis we keep says to read LICENSE.MD and LICENSE_PROPRIETARY.md in the root and confirm which set of terms applies to your use. Two licence files in the root of a repository usually means an open licence and a proprietary one covering parts of the product, and the interesting question is which parts.
caprover/caprover is the same situation with an extra file: the repository reports NOASSERTION, and our analysis of CapRover tells you to check the LICENSE and TERMS_AND_CONDITIONS.md files, since a terms document attached to self-hosted infrastructure can carry obligations beyond copyright. A permissive licence and separate terms of service are not the same thing, and conflating them is how a company discovers a condition late.
One practical point closes this. Whatever you pick, the licence governs the platform, not the thing you deploy on it. Your applications stay under your own terms; what you are accepting here is the terms of the tool that runs them.
Bottom line
Pick caprover/caprover if you want a panel on one server, dokku/dokku if you want a terminal and nothing else, Dokploy/dokploy if you want Docker Compose, Traefik and Swarm in one control plane with automated database backups, and coollabsio/coolify if you want the widest catalogue of one-click services on hardware you already rent. Before committing, read the install script rather than piping it blind, confirm the host operating system and Docker assumptions match your server, and read both licence files where a repository ships two.