Deployment.sh

PaaS vs VPS cost for a team of five running four apps

The paas vs vps cost question comes up the moment a small team's hosting bill crosses a few hundred dollars a month. Managed platforms are fast to start with, but they price compute, workers, databases and seats separately, and the total grows with every app. Your own servers cost far less per unit of compute, but someone has to run them. This post works through the arithmetic for one concrete setup, a team of five running four apps, with every assumption stated, so you can replace our round numbers with your own.

CTO crouching at an open server cabinet in a small office server room lit by cool blue LED strips, laptop on the rack rail showing a dark terminal

Read this before the numbers

Every price in this post is a round, illustrative figure chosen to make the arithmetic easy to follow. None of them is a quote from any provider, and real prices change often and vary by region, plan and commitment. Before you decide anything, open the current pricing pages of the platforms and cloud providers you are considering and put their real numbers into the same calculation. The structure of the calculation is the useful part, not our figures.

The setup we are pricing

We price a typical small product team. The assumptions are deliberately simple.

  • Five people deploy and need access to logs and settings
  • Four production apps, for example two web apps, one API and one internal admin tool
  • Each app has one web process, one background worker, a PostgreSQL database and a Redis instance
  • Traffic is steady, with each web process needing around 1 GB of RAM and a share of a CPU core
  • Databases are small to medium, up to a few tens of GB each
  • Staging environments exist but we leave them out of the main calculation and come back to them later

That gives 8 application processes (4 web, 4 workers), 4 databases and 4 Redis instances, plus 5 seats.

Scenario one, a managed PaaS

On a typical PaaS, each process, database and cache is a separate billable resource. We use these round illustrative unit prices per month.

ItemIllustrative priceQuantityMonthly
Web process, about 1 GB RAM25 USD4100 USD
Background worker, about 1 GB RAM25 USD4100 USD
Managed PostgreSQL, small production tier30 USD4120 USD
Managed Redis, small tier15 USD460 USD
Team seat20 USD5100 USD
Total480 USD

So in this model the four apps cost about 480 USD a month, or about 5 760 USD a year, before bandwidth, build minutes, logs retention add ons or extra environments. Some platforms charge by usage rather than by fixed process size, and some include seats, so your real number can be lower or higher. The point is the shape: cost scales with the number of processes, and every new worker or app adds a line.

Scenario two, your own servers with a management panel

Now run the same four apps on your own servers. A VPS with 4 vCPU and 8 GB of RAM comfortably runs two of these apps, including their workers, PostgreSQL and Redis, at the traffic we assumed. We again use round illustrative prices.

ItemIllustrative priceQuantityMonthly
VPS, 4 vCPU and 8 GB RAM30 USD260 USD
Small VPS for staging10 USD110 USD
S3-compatible backup storage10 USD110 USD
Deployment Team plan, billed yearly99 USD199 USD
Total179 USD

The servers come from any provider you like, at that provider's raw price. The Deployment Team plan covers up to 15 servers, 100 sites and 10 team members, so it fits five people with room to grow. Billed monthly, the Team plan is 199 USD, which brings this scenario to about 279 USD a month. In this model the yearly total is about 2 148 USD with yearly billing, compared with about 5 760 USD for the PaaS scenario.

Scenario three, your own servers with no tools

You can also run the servers entirely by hand. The bill drops to about 80 USD a month in our model, but the hours rise sharply. Provisioning, hardening, TLS, deploy scripts, rollbacks, backups, monitoring and access control all become your team's work. For a team of five shipping product, that time usually costs more than the panel fee within the first month.

Do not forget the cost of time

A fair paas vs vps cost comparison includes people. Let us assume a fully loaded engineering cost of 100 USD an hour, again a round number for the arithmetic.

  • PaaS: around 1 hour a month of platform related work, about 100 USD
  • Own servers with a panel: around 2 hours a month (reviewing alerts, resizing a server, occasional updates), about 200 USD
  • Own servers by hand: around 10 hours a month once you include setup amortized over a year, deploy script maintenance and incidents, about 1 000 USD

Adding time to the bills gives roughly 580 USD a month for the PaaS, 379 USD for own servers with a panel billed yearly, and 1 080 USD for own servers by hand. Your hourly cost and hours will differ, so plug in your own. The ranking changes only if your team spends much more time on servers than this, or if your PaaS bill is much smaller than our model.

How the gap grows with scale

The gap widens as you add apps and workers. On a PaaS, a fifth app adds another web process, worker, database and cache, around 95 USD a month in our model. On your own servers, a fifth app often fits on existing capacity for nothing extra, and when it does not, the next 8 GB server costs about 30 USD in our model. Heavy background work shows the difference most clearly: ten extra workers on a PaaS are ten more billable processes, while on a server they are ten more systemd units sharing CPU you already pay for.

What about staging environments

Staging is where PaaS bills often surprise teams. If every app gets a full staging copy, the PaaS scenario roughly doubles its process and database lines, adding several hundred dollars a month in our model, unless you use smaller tiers or sleep staging apps outside working hours. On your own servers, staging for all four apps fits on the one small VPS we already included. Branch per environment deploys make that server as easy to use as production.

When a PaaS is still the right choice

The arithmetic does not always favor servers. A managed platform makes sense in a few clear cases.

  • One small app with low, spiky traffic where a single process covers everything
  • A prototype you may throw away in a month
  • No one on the team is willing to own anything at the server level, even through a panel
  • You need instant scaling to many instances for short bursts and the platform does it well

For steady production workloads with several apps, workers and databases, own servers with a management tool are cheaper in most realistic models. Run the numbers for your own case, with real prices from current pricing pages, before you commit either way.

Run your own paas vs vps cost model

To redo this for your team, list every process, database, cache and seat on your current or intended PaaS, price each from the provider's current pricing page, then estimate how many servers would host the same workload and price those from your cloud provider. Add your management tool and an honest estimate of hours. Our PaaS pricing page shows Deployment's plans for that line of the sheet, and the heroku alternative page compares the two approaches feature by feature.

How Deployment keeps own servers cheap to run

Deployment exists to make scenario two as easy as scenario one. You connect your own servers over SSH or a cloud account by API token, and Deployment provisions them with security hardening, runtimes, databases and Redis. Each push deploys with zero downtime and one click rollback, workers and cron jobs are managed, monitoring and alerts are built in, and backups go to your own S3-compatible storage. There is no markup on compute, because servers stay in your cloud account and you pay your provider directly. Plans start at 49 USD a month, or 24 USD a month billed yearly. Paste a public repository into the demo on the home page to see the server plan Deployment proposes for your app.