>
Software

Self-hosting did not kill these four subscriptions

I spent two years replacing cloud subscriptions with self-hosted alternatives. Immich holds my photos. Nextcloud replaced Google Drive. Jellyfin runs the music. Plex serves the movies. After all that work, four services survived the purge, and the reasons are less ideological than I expected.

This is the article I wish I had read before I started. Most “replace your subscriptions” lists are written from the perspective of a person who has not actually finished the migration. The reality of running every service yourself for two years is that some things are not worth the savings, and the line is rarely where the blog posts claim.

What the self-hosting math actually looks like

The standard pitch goes like this. A Google One subscription costs $20 a month. The hardware to self-host your photo library is a one-time $300. Over three years, you save $420. Add Dropbox ($120/year), Netflix ($240/year), Spotify ($120/year), and the savings are real.

What the pitch skips is the second tier of costs.

  • Power. A home server that runs 24/7 costs somewhere between $5 and $25 a month in electricity, depending on how aggressive you are with sleep modes and how modern your hardware is.
  • Time. Backup verification, security patching, OS upgrades, and the occasional hardware failure all cost hours. If your time is worth $50 an hour, two hours of unplanned maintenance per month already erases the savings on a $20 subscription.
  • Risk. A single bad backup strategy can lose you the same photos the cloud would have kept safe. Self-hosting trades one risk (vendor lock-in, subscription cancellation) for another (hardware failure, house fire, forgotten backup password).
  • Learning curve. The first time you set up Nextcloud, the documentation looks reasonable. The fifth time you debug a permission error after an OS upgrade, you remember that “free” software has a learning tax you pay on every upgrade.

If you run the numbers honestly, the break-even point for a typical self-hosted setup is two to three years. After that, you save money. Before that, you are paying for the privilege of learning.

The four services that survived

Email

I tried. I really tried. I configured Postfix, Dovecot, DKIM, SPF, DMARC, and a reverse DNS record on a residential IP. I even set up a submission port behind a firewall.

Here is what happens. Major email providers (Gmail, Outlook, Yahoo) use reputation-based filtering. Their systems score sending IPs based on historical behavior, complaint rates, and a long list of signals that are not documented publicly. A residential IP with no sending history looks exactly like a spammer’s compromised home router. Even with everything configured perfectly, my outbound mail was being silently flagged or dropped into recipients’ spam folders.

I pay Google $7 a month to host my email. The math says this is the wrong choice. The math also says I do not want to spend another six months debugging why my cousin’s wedding invitation landed in her spam folder.

Cloud AI reasoning

I self-host local AI models for the everyday stuff. A small LLM (large language model, an AI that generates text by predicting the next most likely word in a sequence) running on a 4090 (a high-end consumer GPU from Nvidia) handles summarization, classification, and most of my coding questions. For 90% of what I do, the local model is good enough and costs nothing per query.

The remaining 10% is where I pay. When I have a hard debugging session and need a model that can hold a long context and reason across multiple files, I throw $20 a month at Anthropic for Claude Pro. The local model is faster, the cloud model is smarter, and the difference matters on the days where the bug has been hiding for three hours.

The decision rule is simple. If the task is “summarize this article” or “rewrite this paragraph,” local. If the task is “explain why this distributed system has a race condition (a flaw where two operations run at the same time and step on each other, producing unpredictable results) I have been chasing for a week,” I pay.

Domain registration and DNS

This is the obvious one. You cannot self-host your domain registrar. You can self-host DNS, and I do, but the registrar itself is a non-negotiable $12 a year. Some services do not have a self-hosted alternative because the service IS the infrastructure.

The decision rule here is to pick a registrar that does not also try to upsell you on hosting, email, and SSL certificates. Hover and Porkbun both do this well. Avoid registrars that bundle.

Streaming services that I cannot replicate

I tried Jellyfin for movies and it works. Plex also works. Both handle local files, both transcode for the TV, and both are free. Where they fail is content. The movies I actually want to watch are licensed to Netflix, Max, and Apple TV+. Self-hosting does not get me those libraries.

This is not a technical problem. It is a licensing problem, and there is no amount of Docker containers that fixes it. I pay for two streaming subscriptions and rotate them based on what I am watching that quarter. The total is about $35 a month, and the alternative is not “free self-hosted streaming.” The alternative is “I do not watch those shows.”

What I gave up by self-hosting most things

Self-hosting is not free, even when the subscription goes to zero.

  • Convenience. My Nextcloud is up 99% of the time. The 1% of the time it is down, I do not have my files. Google Drive has better uptime than my UPS (uninterruptible power supply, a battery backup that keeps a home server running through short outages).
  • Cross-device sync polish. Immich works on my phone. It works less well than Google Photos at handling spotty cellular connections and low-bandwidth uploads. The gap is small but real.
  • Shared family access. My parents do not want to learn Nextcloud. With Google Drive, I send a link and they have it. Self-hosted alternatives require user education.

What I would tell past me

Three things, in order of how much money they would have saved me.

  • Do not self-host email. I lost six months on this and the math did not work. The reasoning was correct (it is a privacy concern, vendor lock-in matters), but the engineering cost was higher than I estimated by a factor of five.
  • Do not chase the streaming libraries. If you want to watch Severance, pay for Apple TV+. The legal self-hosted alternative does not exist, and the grey-market alternatives are a different kind of risk.
  • Self-host the things you actually use every day. Photo backup (Immich), file sync (Nextcloud), and a media server (Jellyfin or Plex) are all real wins if you use them daily. Self-hosting a thing you touch once a month is a worse trade than the subscription cost suggests.

Trade-offs

Self-hosting is not free in time. Backup verification takes an hour a week. Security patches take another hour a month. Hardware failures happen roughly once every two years, and each one costs a Saturday.

In our case, the trade-off worked because I use these services daily and I value the privacy and the absence of subscription churn. Your math will be different if you check email on your phone once a day and do not care about vendor lock-in. The migration took about six months total, with about half of that going to email and the other half to the services that ended up sticking. One specific thing that was harder than expected was figuring out the right backup cadence for a server that is also my photo library. One thing that was easier than expected was discovering that Immich’s mobile app is genuinely good, not just acceptable.

If you have a home lab already and you enjoy running services, the four subscriptions above are the ones worth keeping. If you do not have a home lab and are not going to build one, the savings from self-hosting almost certainly do not justify the time cost. Self-hosting is a hobby with a financial upside, not a financial decision with a hobby attached.

Leave a comment