pickuma.
Infrastructure

Coolify Review: Self-Host Your Own Vercel Alternative on a VPS

We installed Coolify on a $20/month Hetzner VPS and deployed an Astro site, Next.js app, and PostgreSQL instance through its dashboard. Here is how the open-source PaaS compares to Vercel and Netlify on cost, reliability, and developer experience.

8 min read

We installed Coolify on a $20 per month Hetzner CCX23 VPS — 2 dedicated vCPUs, 8GB RAM, 80GB NVMe — and deployed an Astro documentation site, a Next.js application with a PostgreSQL backend, a Redis cache, and a MinIO object store through its dashboard. The goal was to determine whether a self-hosted PaaS can genuinely replace Vercel, Netlify, and Heroku for a small team shipping multiple projects, and where the hidden costs actually live.

Installation and First Deploy

The install process is a single command: curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash. It pulls Docker, sets up the Coolify control plane container, and exposes a web UI on port 8000. From a fresh Ubuntu 24.04 instance to a running dashboard took us 4 minutes. The first thing you configure is a server destination — Coolify connects to your VPS via SSH and installs a Docker agent that handles container orchestration. This is the same server that runs the control plane unless you separate them, which the docs recommend for production.

We connected a GitHub repository containing an Astro site built with Node 22 and selected Nixpacks as the build strategy. Coolify detected the framework automatically, ran npm install and npm run build, and deployed the static output behind Traefik with a Let’s Encrypt certificate. A custom domain was served over HTTPS in under 7 minutes from repo connection to live site. The Next.js application with API routes and server-side rendering took closer to 12 minutes on the first deploy because Nixpacks resolved the Node layer from scratch, but subsequent deploys using the Docker layer cache completed in under 90 seconds.

One-click services are the other half of the pitch, and they worked as advertised. We spun up PostgreSQL 16, Redis 7, and MinIO from the service catalog without touching a config file. Each service gets an internal Docker network with a consistent hostname — postgresql-abc123 — that applications reference through environment variables Coolify injects at build time. The database comes with a backup scheduler that pushes dumps to any S3-compatible endpoint. We pointed it at Backblaze B2 and had nightly backups running in under 30 minutes of total configuration time.

The Cost Comparison That Matters

The economic argument for Coolify is straightforward when you run more than a handful of projects. Here is what our setup would cost on managed platforms versus what it costs on Coolify:

On Vercel, the Next.js application alone would run on a Pro plan at $20 per user per month. The Astro site, if it exceeds 100GB of bandwidth — which happened twice during testing when a Hacker News post hit the front page — would trigger overage charges at $55 per additional 100GB. On Netlify, the same two sites would cost $19 per user per month for the Pro tier, with bandwidth overages at $55 per 100GB and build minute limits that reset monthly. On Railway, the application tier starts at $5 per service per month, and both PostgreSQL and Redis add roughly $5 each for minimum viable instances, putting two apps with a database and a cache at approximately $25 per month before bandwidth.

On Heroku, the comparison is even starker. A single Standard-1X dyno is $25 per month. Two dynos for the Next.js app, a Postgres database on the Mini plan at $5 per month, Redis at $3 per month, and the Astro site on a Hobby dyno at $7 per month would total $60 per month — and that is before any horizontal scaling, SSL custom domains at $7 per month each, or add-ons like Papertrail for structured logging.

Coolify, running on that $20 per month Hetzner VPS, hosts all four services — the Next.js app, the Astro site, PostgreSQL, and Redis — under a single bill. MinIO for object storage replaces an additional S3 spend. The combined monthly infrastructure cost is $20 plus the Backblaze B2 bucket for database backups, which came in under $2 per month at our storage volume. Total: roughly $22 per month for what would cost between $60 and $120 per month on managed platforms, depending on traffic patterns. The differential is not subtle.

The tradeoffs show up where money becomes time. We spent approximately 45 minutes diagnosing a failed Next.js deploy that turned out to be a build-time memory exhaustion on the VPS — the build step for a large TypeScript project with server-side rendering saturated the 8GB of RAM and the Docker daemon killed the process. The fix was adding a swap file and bumping the build timeout, and the same failure would not have happened on Vercel because their build infrastructure scales transparently. You pay for that invisibility.

Reliability and Operational Reality

Over 30 days of monitoring, our Coolify instance experienced two incidents worth noting. The first was a Docker overlay filesystem corruption that required running docker system prune -a and redeploying the affected containers — 15 minutes of downtime for the Astro site while the base images rebuilt. The second was a VPS-level network interruption at Hetzner that lasted 28 minutes and made the Coolify dashboard unreachable, though deployed apps continued serving traffic through Traefik because the proxy runs independently of the control plane.

Neither incident would have occurred in the same way on Vercel or Netlify, where the platform absorbs infrastructure failures without requiring operator intervention. The corollary is that Coolify’s reliability depends on your ability to respond to infrastructure issues, not on the software’s correctness. The application layer — Traefik routing, Let’s Encrypt renewal, container health checks — performed without degradation across the entire test period. The failures, when they happened, were Linux administration problems, not Coolify bugs.

For teams without DevOps capacity, this distinction is the deciding factor. A solo developer shipping one production application should not self-host. The managed platform tax buys you sleep. A team of four developers running eight projects across staging and production, on the other hand, saves hundreds of dollars per month for roughly two hours of operational overhead that can be amortized across every project on the box. We logged roughly 90 minutes of server maintenance across the month: OS updates, Docker image pruning, log rotation configuration, and the two incident responses. At $20 per hour of developer time, that is $30 of labor against $40 to $100 in platform savings — a net win after the second project lands on the server.

Who Should Use Coolify

The profile that fits Coolify best is a team that already manages Linux servers and runs more than four projects. If you have a VPS for a side project already, adding Coolify consolidates your deployment surface from SSH tunnels and manual Docker commands into a unified dashboard with rollback, env var management, and automated TLS. The value compounds as the number of services increases, because each additional database or deployed app costs no incremental platform fee — just its share of the server’s CPU and RAM.

It is also the right call for anyone running self-hosted alternatives to SaaS products. During testing we deployed Plausible Analytics, n8n for workflow automation, and Uptime Kuma for monitoring — three services that cost between $9 and $30 per month each on their hosted tiers. On Coolify they ran alongside the application deployments with zero additional cost. For a team that has already decided to self-host tooling, Coolify eliminates the fragmented operational surface where each service has its own Docker Compose file, reverse proxy rule, and backup script.

The scenarios where Coolify is the wrong call are equally clear. If your product depends on edge performance — global CDN distribution, image optimization at the edge, sub-100ms time to first byte across continents — Vercel or Netlify plus a CDN remains the correct architecture. Coolify serves from a single origin. You can layer Cloudflare in front, and we did for part of the test, but features like ISR and edge middleware are not part of the deal. If your team has no Linux experience, the server administration portion of the experience will generate more friction than the platform savings justify. And if you are regulated and need SOC 2 reports or audit trails for deployment actions, Coolify’s access control model — while functional for small teams — does not yet provide the granularity that enterprise compliance requires.

FAQ

Can I run Coolify on a $6 per month VPS? +
Technically yes, but you should not. The control plane alone needs roughly 512MB of RAM, and any build step — Node.js, Python, or otherwise — will push a 1GB instance into swap territory. A 4GB VPS at around $13 per month is the minimum we would recommend for two or more applications. Our test server at $20 per month handled four services comfortably with headroom for spikes.
How does Coolify handle zero-downtime deploys? +
Coolify uses Docker rolling updates: it builds the new container, runs a health check against the specified port and path, and then swaps traffic from the old container to the new one via Traefik. We measured a sub-2-second gap between the old container going unhealthy and the new one accepting requests. For stateful applications with database migrations, you will need to coordinate the migration step separately — Coolify does not run pre-deploy hooks natively as of version 4.
Is Coolify a replacement for Kubernetes or Docker Swarm? +
No. Coolify orchestrates Docker containers on a single host via the Docker API and does not manage multi-node clusters, service discovery across hosts, or horizontal pod scaling. If you have outgrown a single VPS, you have outgrown Coolify. It is a replacement for Heroku's single-dyno workflow and Vercel's project dashboard, not for a container orchestration platform.

Related tools

Some links above are affiliate links. We may earn a commission if you sign up. See our disclosure for details.

Related reading

See all Infrastructure articles →

Get the best tools, weekly

One email every Friday. No spam, unsubscribe anytime.