Is Self-Hosting Actually Cheaper? Six Apps, Real Numbers (2026)

The self-hosting argument is normally made one app at a time: “Ghost(Pro) is $18 a month and a VPS is $12, so self-host.” That comparison is wrong, and it is wrong in a way that flips the answer.

Compared app-by-app, self-hosting usually loses. The cloud free and entry tiers are more generous than people admit, and a $12 server plus your time rarely beats $9–25 a month for one service.

Compared server-by-server, self-hosting usually wins by a lot — because one $12 box runs four or five of these at once, and the server cost does not multiply.

Here is the arithmetic, with prices checked against each vendor’s own page.

All cloud prices verified 29 August 2026.


The cloud prices people are comparing against

App What it is Cloud entry price Free tier?
n8n Workflow automation €20/mo (Starter, billed annually) No
Supabase Postgres + auth + storage backend $25/mo (Pro) Yes — genuinely usable
Ghost Publishing / newsletter $18/mo (Starter, billed yearly) No
Plausible Privacy analytics $9/mo (Starter) No (trial only)
Bitwarden Password manager $1.65/mo personal · $3.99/mo family Yes — generous
Uptime monitoring Status checks ~$0–20/mo depending on vendor Usually yes, limited

Sources: n8n, Supabase, Ghost, Plausible, Bitwarden.

Two of those deserve a second look before you self-host anything.

Supabase’s free tier is not a demo. 500 MB database, 5 GB egress, 1 GB file storage, 50,000 monthly active users. The catch is real but specific: projects pause after one week of inactivity, and you get two active projects. For a side project that gets used weekly, free is genuinely free.

Bitwarden Families is $47.88 a year for six people. That is four dollars a month to never think about password sync again. It is the single hardest cloud subscription on this list to justify replacing.


What each one costs you in RAM

This is the number that decides everything, and almost nobody publishes it. The figures below are practitioner guidance from what each stack actually runs — not vendor minimums, which mostly do not exist. Treat them as budgets, not guarantees.

App Self-hosted stack Realistic RAM
Vaultwarden (Bitwarden-compatible) Single Rust binary + SQLite ~100 MB
Uptime Kuma Node + SQLite ~150 MB
Ghost Node + MySQL ~600 MB
n8n 2.x Node + task runner + Postgres ~1 GB
Plausible Elixir + Postgres + ClickHouse ~1.5–2 GB
Supabase Postgres + Kong + GoTrue + Realtime + Storage + Studio ~3–4 GB

Read the top and bottom rows together, because they are the whole article.

Vaultwarden is the best deal in self-hosting. It is an independently written, Bitwarden-compatible server in Rust that runs in about a hundred megabytes. If you already have a server, it costs you effectively nothing and replaces a $47.88/year subscription. It is also the one where you must be honest with yourself about backups — a password vault you cannot restore is worse than a subscription.

Supabase is the worst deal to self-host casually. The hosted product is a coordinated set of six or seven services. Running it yourself means running all of them, plus the upgrades, plus the Postgres you now own. It wants more RAM than everything else on this list combined, and the free tier it replaces costs $0. Self-host Supabase because of data residency or because you outgrew Pro — not to save $25.


The comparison that actually decides it

Here is the same set of apps, priced two ways. Server cost is a DigitalOcean 2 GB droplet at $12/month ($144/year) — see the full VPS price comparison for cheaper options, including Hetzner at roughly half that.

Self-hosting one app

You self-host Cloud cost avoided (yr) Server cost (yr) Net
Plausible only $108 $144 −$36
Ghost only $216 $144 +$72
n8n only (Starter) ~$279 $144 +$135
Bitwarden Families only $47.88 $144 −$96
Supabase only (vs free tier) $0 $144 −$144

Three of five lose money. The two that win, win by less than the value of the hours you will spend.

Self-hosting four on one server

Vaultwarden + Uptime Kuma + Ghost + n8n ~1.8 GB — fits a 2 GB box, tightly
Cloud cost avoided $47.88 + ~$0 + $216 + ~$279 = ~$543/yr
Server cost $144/yr (or ~$77 on Hetzner CX23, 4 GB)
Net +$399/yr, and more on a cheaper box

Same server. Same maintenance routine. Four times the saving.

That is the real rule: self-hosting is priced per server, not per app. The first app you move pays for the machine. Every app after that is close to free. Anyone comparing one app against one VPS is doing the arithmetic that makes self-hosting look pointless.


Where the consolidation argument breaks

Being straight about the limits of my own thesis:

Memory does not stack politely. The RAM figures above are idle-to-light usage. n8n running a Code node inside a loop, or Ghost serving a traffic spike, will take more than its budget. Four apps that “fit” in 2 GB on paper will meet the OOM killer under real load. If you are consolidating, buy 4 GB — which is exactly why Hetzner’s CX23 at €5.49 is interesting, since it gives you 4 GB for less than DigitalOcean’s 2 GB.

One server is one failure domain. Everything on that box goes down together, upgrades together, and gets compromised together. Putting your password vault on the same host as a public web app is a decision, not a default. If Vaultwarden is on there, treat that box as production.

Backups multiply, attention does not. Four apps is four databases to dump and — the part people skip — four restores to actually test. Budget an afternoon once, not “someday.”

Supabase breaks the pattern entirely. It does not consolidate; it consumes the server. If you need it self-hosted, give it its own box and price it separately.


What I would actually do

Situation Answer
You run nothing yet and want one app off the cloud Don’t. One app rarely beats its subscription. Stay on cloud until you have a second reason
You already run a server for something else Vaultwarden first. ~100 MB, replaces a real subscription, immediate
You want to consolidate 3+ services Buy 4 GB, not 2. Hetzner CX23 (€5.49) or DigitalOcean 4 GB ($24)
You need Supabase self-hosted Give it a dedicated box. This is a data-residency decision, not a cost one
Your workflows bill clients Keep the pager in mind. Self-hosting means you are the one who notices at 3am

And the case nobody advertises: if your automation volume is past n8n Cloud’s 2,500-execution Starter tier, self-hosting stops being a $100/year argument and starts being a four-figure one. That is covered in n8n Cloud vs self-hosted, in full.


FAQ

Isn’t the electricity/hardware cheaper at home?
Different question. A machine at home has no static IP guarantee, no upstream bandwidth commitment, and your home network becomes the attack surface. For anything you or a client depends on, rent the box.

Does self-hosting mean I stop paying for anything?
No. You pay for the server, and you pay in time. The honest framing is that you convert a subscription into infrastructure plus attention.

Which of these is genuinely easiest to start with?
Vaultwarden and Uptime Kuma. Both are single containers, both are small, and neither has a complicated upgrade story.

What breaks first when I consolidate?
Memory, under load, at the worst moment. The container that dies is not necessarily the one that caused it. This is why the 4 GB recommendation is not padding.

How often will I actually maintain this?
Steady state is a couple of hours a month across a small stack, spiking on any major version upgrade — n8n 2.x alone changed four environment variables, which is documented in the 2.x upgrade breakdown.


Cloud prices verified 29 August 2026 against each vendor’s own pricing page, linked above. RAM figures are practitioner budgets, not vendor minimums — most of these projects publish no minimum spec, and any guide that quotes one is inventing it. This page is re-checked quarterly. Some links on this site are affiliate links; they do not change your price.

Leave a Comment