
Heroku bills each app by its dynos: $7 a month for a Basic dyno and $25 for a Standard-1X (Heroku pricing, checked 31 October 2026). Vercel Pro costs $20 a month for one deploying seat with $20 of usage credit, plus on-demand usage beyond that credit and $20 for each extra seat that deploys (Vercel Pro plan, checked 31 October 2026). Or you can run your own platform on a VPS. Coolify and Dokploy put no licence cap on the number of apps you deploy: the CPU, RAM, disk and network of the server set the limit.
What is Self-Hosted PaaS?
Platform as a Service (PaaS) handles deployments, SSL, domains, and process management. Self-hosted PaaS gives you the same convenience on your own server.
| Feature | Heroku | Vercel | Self-Hosted PaaS |
|---|---|---|---|
| Price (5 apps) | $35 on Basic dynos, $125 on Standard-1X | $20 platform fee, plus usage beyond the $20 credit | One VPS plan |
| Deploy from Git | Yes | Yes | Yes |
| Auto SSL | Yes | Yes | Yes |
| Custom domains | Yes | Yes | Yes |
| Databases | Add-on, Heroku Postgres from $5 | Marketplace providers such as Neon, Upstash and Supabase | On the same server |
| Docker support | Yes, through Container Registry | Beta: a Dockerfile runs as a Vercel Function | Yes |
| Full server access | No | No | Yes |
Prices checked on 31 October 2026 on Heroku's pricing page and in Vercel's Pro plan docs. Heroku runs Docker images through its Container Registry. Vercel runs container images as Vercel Functions and says "The Container runtime is in beta on all plans" (Vercel KB); its databases come from providers in the Vercel Marketplace.
The trade-off is that you run the platform. For a self-hosted install, Coolify's docs are explicit: you install, update, back up, monitor and restore Coolify yourself, you secure the operating system, SSH access, firewall and network, and your apps, databases, volumes and secrets stay your responsibility. The same split applies to any PaaS you run on your own VPS, Dokploy included. Our Coolify backup guide shows what Coolify's built-in backups cover and how to restore them.
Coolify
Open-source, self-hosted Heroku alternative, under the Apache 2.0 licence (GitHub).
Installation
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
That's it. The installer sets up Docker Engine when your distribution supports it, then the web dashboard. Coolify needs 2 CPU cores, 2 GB RAM and 10 GB of disk to run, plus space for Docker images, volumes and backups. Create your admin account on port 8000 as soon as the installer finishes: Coolify's install docs warn that whoever reaches the registration page first becomes the instance admin with root access to your server. Then back up /data/coolify/source/.env, which you need to restore Coolify from a backup. Our Coolify migration guide shows what else to save when you move it to another server.
Features
| Feature | Included |
|---|---|
| Git-based deployments | Yes (GitHub, GitLab, Bitbucket) |
| Docker support | Yes |
| Database management | MySQL, PostgreSQL, MongoDB, Redis |
| SSL certificates | Automatic (Let's Encrypt) |
| Custom domains | Yes |
| Environment variables | Yes |
| Deployment previews | Yes |
| Monitoring | Basic |
| Backups | Databases, app volumes and directory mounts (4.3.0 and later), and Coolify's own data |
Database backups cover PostgreSQL, MySQL, MariaDB, MongoDB, ClickHouse and SQLite, but not Redis, Dragonfly or KeyDB (database backups). Coolify 4.3.0 added scheduled backups of volumes and directory mounts (release notes, storage backups). The instance backup under Settings > Backup saves Coolify's own projects, resources, settings and deployment history, but not the APP_KEY in /data/coolify/source/.env that decrypts its stored secrets, so keep a copy of that file elsewhere.
Deploying an App
- Connect GitHub repository
- Select branch (main)
- Coolify detects the language (Node.js, Python, etc.) with the Nixpacks or Railpack build option
- Set environment variables
- Click Deploy
Coolify builds a Docker container, configures its proxy (Traefik by default, Caddy as an option), generates SSL, and your app is live.
Build Options
Coolify offers five ways to build an app (builds overview). Only Nixpacks and Railpack detect the project for you:
| Build option | What it does |
|---|---|
| Nixpacks | Detects the language: Node, Python, PHP, Ruby, Go, Rust and the other language providers Nixpacks lists, including Staticfile |
| Railpack (Beta) | "Railway's successor to Nixpacks", for Git-based apps only (Railpack) |
| Static | Serves a repository that already holds the final HTML, CSS and JavaScript, without a build command (Static) |
| Dockerfile | Builds an image from your Dockerfile, from a Git repository or stored in Coolify (Dockerfile) |
| Docker Compose | Deploys a Compose file from a Git repository or pasted into Coolify (Docker Compose) |
Dokploy
A newer open-source alternative to Coolify, also built on Docker with Traefik in front.
Installation
curl -sSL https://dokploy.com/install.sh | sh
Ports 80, 443 and 3000 must be free: Traefik takes 80 and 443, the dashboard opens on port 3000, and the installer fails if any of them is already in use (Dokploy installation).
Features
| Feature | Included |
|---|---|
| Git deployments | Yes |
| Docker & Docker Compose | Yes |
| Database management | Yes |
| Auto SSL | Yes |
| Custom domains | Yes |
| Monitoring dashboard | Basic; the advanced dashboard comes only with Dokploy Cloud |
| Multi-server support | Yes, remote servers (without monitoring on them) |
| Traefik reverse proxy | Built-in |
Dokploy's own comparison lists the self-hosted edition as free and puts its user, organization and backup caps on the Cloud plans only; SSO, audit logs and the other enterprise features need a licence, and the advanced monitoring dashboard is listed for the Cloud editions only (Dokploy editions). Remote servers run your apps on other machines, and remote server monitoring is "the only feature not supported" there (remote servers).
Dokploy vs Coolify
| Aspect | Coolify | Dokploy |
|---|---|---|
| GitHub repository since | January 2021 | April 2024 |
| Latest release on 31 October 2026 | v4.5.3, 28 October 2026 | v0.30.10, 22 October 2026 |
| Minimum server in its docs | 2 CPU cores, 2 GB RAM, 10 GB disk | 2 GB RAM, 30 GB disk |
| GitHub stars on 31 October 2026 | about 65,000 | about 38,000 |
| Multi-server | Yes, any server added over SSH | Yes, remote servers |
| Licence | Apache 2.0 | Apache 2.0, plus paid enterprise features |
Coolify connects to each extra server over SSH, after which "The server can then be selected as a deployment destination" (add a server). Release dates and stars come from each project's GitHub page (Coolify releases, Dokploy releases).
Cost Comparison
| Setup | Monthly cost | How the bill grows |
|---|---|---|
| Heroku | $7 per Basic dyno, $25 per Standard-1X dyno; Heroku Postgres from $5 | With every app and dyno |
| Vercel Pro | $20 with one deploying seat and $20 of usage credit | Usage beyond the credit on demand, plus $20 per extra deploying seat |
| Railway Hobby | $5 including $5 of usage credit | Usage beyond the credit per resource |
| VPS + Coolify/Dokploy | Space-Node Standard VPS-S €4.99 (3 vCores, 4 GB RAM, 60 GB NVMe) | Only when you move to a bigger plan |
Competitor prices were checked on 31 October 2026 on Heroku's pricing page, Vercel's Pro plan docs and Railway's pricing page; our VPS price is as of 31 October 2026. Those three list US dollars, and Vercel's prices exclude VAT, while ours is in euros including VAT, so convert before you compare. Standard VPS-S is the cheapest of our plans that meets the minimums of both Coolify and Dokploy (see Resource Requirements below).
For a Next.js app, our Vercel vs VPS comparison works out a Vercel Pro bill line by line, with extra seats, the CDN tier and usage beyond the $20 credit.
How the Bills Grow
Five small apps on Heroku come to 5 times $7, so $35 a month, on Basic dynos, or 5 times $25, so $125, on Standard-1X, before any database. On a VPS the five apps share one plan, and whether they fit depends on what each one uses, not on a price per app. That is where self-hosting saves money: the bill only grows when the server runs short and you move to a bigger plan. What you pay instead is your own time for the work in the trade-off section above.
Resource Requirements
| Platform | Minimum from its docs |
|---|---|
| Coolify | 2 CPU cores, 2 GB RAM, 10 GB free disk, plus room for Docker images, volumes and backups |
| Dokploy | 2 GB RAM, 30 GB disk |
There is no fixed number of apps per GB of RAM. A static site or a small API needs far less than a Next.js build or a busy database, and builds need extra headroom: Coolify's docs warn that high resource use from builds on the same server as Coolify can make the server unresponsive, and Dokploy sizes its minimum for the resources Docker uses during builds. Start at or above the minimum, watch CPU, RAM and disk use as you add apps, and move to a bigger plan when one of them runs short.
A Space-Node VPS is a KVM server with full root access, NVMe storage, dedicated RAM and shared vCores in an EU data center, so you can install Coolify or Dokploy yourself and run whatever your stack needs within the CPU, RAM and disk of your plan. Backups of the VPS are not part of the plan price (you can arrange them through a support ticket), which is one more reason to send Coolify's backups to S3.
Sources
All opened on 31 October 2026:
- Competitors: Heroku pricing, Heroku Container Registry, Vercel pricing, Vercel Pro plan, Does Vercel support Docker deployments?, Bring your Dockerfile to Vercel Functions, Vercel Storage, Railway pricing
- Coolify docs: choose your path, start with self-hosted, database backups, storage backups, instance backup, proxy overview, builds overview, Railpack, Static, Dockerfile, Docker Compose, add a server
- Coolify on GitHub: repository, releases, v4.3.0
- Dokploy: installation, Cloud vs self-hosted, remote servers, monitoring, repository, releases, licence
- Nixpacks: language providers