Back to Blog

Self-Hosting Cost Analysis: Kdral vs Vercel vs Railway (2026)

Cost comparison: Kdral vs Vercel vs Railway. Save 80%+ running self-hosted apps with strong security instead of PaaS.

· 6 min read

Introduction

PaaS platforms are convenient. Push your code, get a URL, move on. No SSH, no server config, no thinking about infrastructure. For a weekend project, that trade-off makes perfect sense.

But convenience has a price — and it compounds fast.

Once you're running a real product — a SaaS, a client project, an internal tool — those $20/month line items start multiplying. And before you know it, you're paying $100+ per month for resources that would cost $7 on bare metal.

What we did

We did the math so you don't have to. Here's a side-by-side comparison with real pricing, real numbers, and no hand-waving.

Prices verified February 2026. Check each provider's pricing page for current rates.

The Comparison Setup

We modeled a realistic scenario: a small SaaS or agency running 5 applications:

  • A web application (Next.js, Nuxt, SvelteKit, etc.)
  • A REST or GraphQL API
  • A PostgreSQL database
  • A monitoring/observability stack
  • An automation tool (n8n, Temporal worker, cron jobs)

Traffic profile: ~50,000 monthly visitors and roughly 500GB bandwidth/month. This is a modest but real workload — not a toy project, not Netflix.

Vercel: Great for Frontends, Expensive for Everything Else

Vercel is optimized for frontend frameworks. It's genuinely excellent at what it does. But the moment you need a full stack, you're combining multiple services — and multiple bills.

Vercel Pro Plan Pricing

  • Base cost: $20/month per team member (minimum 1)
  • Bandwidth: 1TB included, then $40 per 100GB overage
  • Serverless function execution: 1,000 GB-hours included
  • Edge requests: 10M included

The catch

Vercel is primarily a frontend hosting platform. You still need separate hosting for your API server, database, monitoring stack, and background workers. Vercel can't run a persistent Node.js process, a PostgreSQL instance, or a long-running automation tool.

Realistic Total for 5 Apps

Vercel + External Services

Vercel Pro (frontend) $20/mo
Railway (API server) $25/mo
Managed PostgreSQL $15/mo
Monitoring (Grafana Cloud) $10/mo
Total: ~$70-100/month

And that's the floor. Bandwidth overages, additional team members, or heavier serverless usage push this higher fast.

Railway: Simple but Usage Adds Up

Railway is more full-stack friendly than Vercel. You can run databases, workers, and APIs all in one place. The pricing model is usage-based on top of a base fee, which sounds fair until you see how it compounds.

Railway Pro Plan Pricing

  • Base cost: $20/month per seat
  • RAM: $10 per GB/month
  • CPU: $5 per vCPU/month
  • Bandwidth: $0.10/GB after 100GB included

Realistic Total for 5 Apps

Running 5 services with a combined 4GB RAM and 2 vCPU:

Railway Pro (5 services)

Railway Pro base $20/mo
RAM (4GB x $10) $40/mo
CPU (2 vCPU x $5) $10/mo
Bandwidth (400GB x $0.10) $40/mo
Total: ~$110/month

That's $110/month for resources that are, frankly, modest. And every additional service or traffic spike adds to the bill.

Self-Hosting with Kdral

Now let's look at the same workload on bare metal with Kdral as your security layer. Think of it this way: Kdral is to self-hosted apps what Cloudflare is to origin servers — every app in our catalog runs inside a protected, isolated environment with runtime protection and ephemeral secrets.

Ghost, Plausible, Gitea, Vaultwarden, n8n, PostgreSQL—every app you install gets the same security. Container platforms like Coolify are just one type of app in the catalog. The security layer applies to everything.

Option A: VPS (Small Setup)

  • Hetzner CX32: 4 vCPU, 8GB RAM, 80GB SSD — ~$7/month
  • Warhorse: unlimited apps — $149/year (~$12.50/mo)
  • Bandwidth: 20TB included with Hetzner (yes, twenty terabytes)

Hetzner VPS + Kdral

Hetzner CX32 VPS $7/mo
Warhorse $12.50/mo (billed annually)
Total: ~$19.50/month
Save $800-1,100/year

Compatibility: Works on Hetzner Cloud (CX/CPX), DigitalOcean, Vultr, and any standard VPS. Not compatible with OpenVZ or LXC containers.

Option B: Dedicated Server (Serious Setup)

  • Hetzner AX42: AMD Ryzen 5 3600, 64GB RAM, 2x512GB NVMe — ~$44/month
  • Warhorse: unlimited apps — $149/year (~$12.50/mo)
  • Bandwidth: 20TB included

Hetzner Dedicated + Kdral

Hetzner AX42 dedicated $44/mo
Warhorse $12.50/mo (billed annually)
Total: ~$56.50/month

For ~$56.50/month, you get a dedicated Ryzen with 64GB of RAM — more raw power than most startups will ever need. Same isolation applies to every app you install.

Same security for every app

Ghost, Plausible, Gitea, Coolify, n8n—protected like every app in the catalog. The security layer applies to everything.

Strong Security, Indie Prices

Here's what most people don't realize: you're not just saving money with Kdral — you're getting better security than the platforms charging 4x more. Let's break down two features that enterprises pay thousands for.

Every App = Complete Isolation

On Railway and Vercel, your apps share infrastructure with other tenants. A vulnerability in one app can potentially affect others. Containers provide some isolation, but they share resources — a CVE in the container runtime puts everything at risk.

Kdral is different. Each app runs on its own dedicated kernel. Not a container namespace. Not a cgroup boundary. A separate kernel. If a CVE hits one of your apps, the blast radius is exactly that one app. Your other apps keep running, untouched.

CVE Blast Radius Comparison

Vercel/Railway: Shared infrastructure — a vulnerability can spread to all apps.
Kdral: Complete isolation per app — a CVE is contained to that single app. Your other apps remain isolated.

This is the kind of isolation that enterprises pay thousands of dollars per month to achieve. With Kdral, it's included in the $149/year Warhorse plan. Strong isolation at indie prices.

~$19.50/mo gets you strong security

For the price of two coffees, you get strong isolation, session-based authentication, runtime protection, and hardened environments. Security that enterprises pay thousands per month to achieve.

The Comparison Table

Vercel + Others Railway Hetzner + Kdral
Monthly cost ~$85 ~$110 ~$19.50
Apps 5 5 Unlimited
RAM Varies 4GB 8GB+
Bandwidth Mixed limits 100GB + overage 20TB
App isolation Shared Container Complete isolation per app
CVE blast radius All apps All apps Single app only
Session auth N/A N/A Dashboard authentication (included)
Runtime protection No No Yes (included)
Container platform support N/A Native Runs with full protection
Annual cost ~$1,020 ~$1,320 ~$233
Annual savings $800–1,100

Key Finding

Switching to self-hosting with Kdral saves you $800 to $1,100 per year on a modest 5-app setup — with better security than what you're paying 4x more for.

*Every app in the catalog—Ghost, Plausible, Gitea, container platforms, and more—runs in its own isolated, protected environment.

At Scale, It Gets Worse

PaaS pricing scales linearly. Every new app, every new service, every GB of RAM — it's another line item on the bill. Bare metal doesn't work that way.

Let's say your product grows and you're now running 20 services (microservices, workers, databases, caches, monitoring, staging environments):

Railway (20 apps)

Base fee $20/mo
Resource usage ~$280/mo
Total: ~$300+/month

Kdral (20 apps)

Same dedicated server $44/mo
Warhorse $12.50/mo (billed annually)
Total: ~$56.50/month

That's not a typo. $300+ versus ~$56.50. The server has the same capacity whether you're running 5 apps or 20. You already paid for the RAM and CPU — Kdral just lets you use all of it.

Annual savings at scale

Over a year, that gap becomes $3,600+ versus $677. Nearly $3,000 in savings annually, just by owning your infrastructure.

When PaaS Makes Sense

We're not going to pretend PaaS is never the right choice. There are legitimate scenarios where paying the premium is worth it:

  • Prototyping and hackathons — When you need something live in minutes and don't care about cost efficiency.
  • Zero-ops requirement — If your team has literally zero infrastructure knowledge and no desire to learn, PaaS removes that concern entirely.
  • VC-funded burn rate — When you're optimizing for speed-to-market and investor money is covering the bill, paying 4x for convenience can be a rational trade-off.
  • Compliance requirements — Some regulated industries require specific managed service certifications that are easier to get from large PaaS providers.

Start with Warhorse

Ready to self-host? Warhorse at $29/month gives you unlimited apps with real security and active threat hunting. Complete isolation, continuous updates, priority support.

Conclusion

Self-hosting isn't the dark ages anymore. You don't need to write Ansible playbooks, maintain Kubernetes clusters, or SSH into servers at 3 AM.

Kdral is a security layer for self-hosted apps. You get the PaaS developer experience at bare metal prices, with security that PaaS platforms can't match.

The numbers don't lie:

  • ~$19.50/month instead of $85–110 for 5 apps
  • ~$56.50/month instead of $300+ for 20 apps
  • 20TB bandwidth instead of worrying about overage charges
  • Complete isolation per app — each on its own dedicated kernel
  • Strong security included — dashboard authentication, runtime protection, ephemeral secrets

You're not just saving money — you're getting better security. This isn't cutting corners; it's getting more for less.

The savings compound every month. Over a year, over two years, over the life of your product — you're talking about thousands of dollars that could go toward hiring, marketing, or just keeping more of what you earn.

If you're an indie hacker, a bootstrapped founder, or a CTO who actually looks at the AWS bill — it's time to do the math on your own infrastructure. Every app you install gets the same hardened security. No exceptions. No extra cost.

Ready to try Kdral?

Request access and deploy with confidence.

Request Access