How I Cut My SaaS Bill by 90% by Self-Hosting Everything

I added up what I used to pay for Zapier, Datadog, and Notion, then compared it to what I actually pay now running the self-hosted equivalents on one small VPS. Here's the real math.

Share

Every few months I used to open my bank statement and wince at the SaaS line items. Zapier for automation. Datadog for monitoring. Notion for the team wiki and task board. None of them were egregiously priced on their own — that's the trick. Each one looks reasonable in isolation. Added together, they quietly became one of the biggest recurring costs in my setup, bigger than the actual servers doing the work.

So I moved everything to self-hosted alternatives, one tool at a time, and kept the receipts. This post is the summary: what I used to pay, what I pay now, and what actually changed (and didn't) when I made the switch.

The old stack: what I was actually paying

These aren't rack rates I'm guessing at — they're the current published prices for the plans a small team would realistically need, which I dug into properly in each tool's own comparison post (linked below).

ToolPlanMonthly cost
ZapierProfessional (750 tasks, multi-step)$29.99
DatadogInfrastructure Monitoring + APM, 1 host$46.00
NotionBusiness, 3 seats ($18/user/mo annual)$54.00
Total$129.99/month

That's about $1,560/year for automation, monitoring, and a team wiki/task board — three tools, none of which are unusual for a small team or a solo operator running client work.

The new stack: one $12/month box

Here's what replaced all three:

  • n8n instead of Zapier — self-hosted workflow automation, same webhook/multi-step logic, no per-task metering
  • Grafana + Loki instead of Datadog — metrics and log aggregation without per-host or per-GB billing
  • Vikunja instead of Notion — a Kanban/task board a small team can actually run itself

All three run comfortably on a single Vultr instance — the $12/month High Frequency plan (2GB RAM). None of these tools are heavy: Vikunja idles around 200MB including its Postgres database, and Grafana/Loki handle a handful of scrape targets without breaking a sweat. I didn't need three servers, or even two — one box, one bill.

Old (SaaS)New (self-hosted)
Monthly$129.99$12.00
Annual$1,559.88$144.00

That's a 90.8% reduction — $1,415.88 back in my pocket every year, for the exact same three functions.

What this doesn't include, because I'd rather be honest

This isn't a free lunch and I'm not going to pretend it is:

  • Setup time. Standing up each service, wiring up backups, and getting SSL/DNS right took real hours the first time. I've documented the actual steps in each individual post so you're not starting from zero.
  • You're the one on call. If the VPS goes down at 2am, that's my problem now, not a vendor's SLA. In practice this has meant maybe an hour of actual firefighting in months of uptime, but it's not nothing.
  • No built-in redundancy. One box means one point of failure unless you deliberately build in backups and snapshots, which I do and which cost a little extra (Vultr's automatic backups run about 20% of the instance price — so call it $14.40/month all-in, still an 88.9% reduction).

For a solo operator or a small team that doesn't need five-nines uptime, that trade is an easy yes. If you're running something where an hour of downtime costs you real money, do the math for your own situation before you rip out a SaaS tool with an uptime SLA behind it.

The individual breakdowns

Each swap above has its own full write-up with actual setup steps, resource usage, and side-by-side pricing — this post is just the roll-up:

If you want to try this yourself

You don't need to migrate everything at once — I didn't. Pick the SaaS bill that annoys you most and start there. A single small VPS is enough to run any one of these tools, and you can add the rest to the same box later once you're comfortable.

I run all of the above on Vultr, which is where I'd point anyone starting from scratch.

Disclosure: this post contains an affiliate link to Vultr. If you sign up through it, I may earn a commission at no extra cost to you. I only link to providers I actually use.