⌂ Self-hosting

What to self-host and what not to: time, risks and dependencies

A practical method for deciding which services belong on your home server and which to leave to a provider, weighing time, risk, data and who relies on it.

People who discover self-hosting tend to want to bring everything home: files, photos, email, passwords, calendars, even their personal website. The enthusiasm is understandable, but every service you host becomes a small, permanent responsibility. Before installing yet another container, it is worth stopping to ask whether that service is really worth the maintenance it will require. In my work I often see home setups collapse not because of a technical problem, but because they grew beyond the time their owner could give them.

Four questions to ask

For each candidate service I try to answer four simple questions. Lined up together, the answers make the choice almost obvious.

1. Who depends on it?

A feed reader that only I use can stay offline for two days without anyone noticing. The calendar shared with the family, on the other hand, becomes a problem on the morning it fails to sync and someone misses an appointment. The more people depend on a service, the more reliable it has to be, and the higher the cost of hosting it at home.

2. What happens if the data is lost?

Some data can be rebuilt (a film library ripped from your own discs, a music cache) and some cannot be replaced (photos of your children, scanned documents, your password vault). For the latter, self-hosting is sustainable only if a tested backup system already exists, with at least one copy outside the house. If that system is missing, building it comes before moving anything at all.

3. What happens if the service is unreachable?

Outages at home are inevitable: a power cut, the router rebooting, an update gone wrong. Some services tolerate pauses well, others do not. Email is the classic case where being unreachable has external consequences: rejected messages, a server reputation to build, spam filters to get past. It is no coincidence that it is one of the services many experts advise against hosting at home.

4. How much time does it need each month?

A mature service with regular updates and clear release notes asks for a few minutes a month. A young project that changes its database schema with every version can eat an afternoon. It is worth reading the release history and the open issues before adopting it.

A table to decide

Putting services in a table helps you see the big picture. Here is a realistic example for a family:

Service Who depends on it Data Tolerance for downtime Decision
Media server Family Rebuildable High At home
Photo library Family Irreplaceable Medium At home with offsite backup
Passwords Everyone Irreplaceable Low At home only with regular exports
Email Everyone Important Very low External provider
Feed reader Just me Rebuildable High At home

The «Decision» column is not absolute: another family, with more time or different skills, might reach different conclusions. What matters is that the choice is a conscious one.

Hidden costs

The cost of hardware is the most visible, but rarely the most important. Other costs appear over time:

  • Energy: an always-on server draws power every hour of the year; a frugal mini PC makes a big difference compared with an old workstation.
  • Concentrated knowledge: if only one person in the house knows how the system works, that person becomes indispensable. A short written guide reduces the problem.
  • Attack surface: every service reachable from the Internet is one more door to watch.
  • Dependencies between services: when the identity provider, the proxy and the local DNS all live on the same machine, one failure takes them all down together.

A gradual path

An approach that works is to proceed in stages, starting with low-risk services:

  1. Personal, rebuildable services: feed reader, bookmarks, media server. You learn to manage containers, updates and logs without putting anything at risk.
  2. Backups: before bringing in important data, you build the backup and test a restore.
  3. Family services: photos, calendars, documents, with separate accounts and access only from the home network or through a VPN.
  4. Critical services: only after months of stable operation, and always with a way out.

Always plan a way out

A good selection criterion is how easily you can go back. A service that stores data in open formats (plain files, standards such as CalDAV or IMAP, exports in common formats) lets you migrate to an external provider in an afternoon if one day you no longer have the time. A service that locks data inside a proprietary database makes the decision far more binding.

Before adopting something, I run a concrete test: I export the data and check that I can open it with another tool. If the export is incomplete or awkward, I factor that into the evaluation.

In short

  • Every hosted service is a maintenance commitment: choose it, do not collect it.
  • The key questions are who depends on it, the value of the data, tolerance for downtime and the time required.
  • A tested backup comes before any irreplaceable data.
  • Start with low-risk services and move up a level calmly.
  • Open formats and easy exports always guarantee a way out.
MM
Marco Marzaduri

Marco Marzaduri works in cybersecurity, digital forensics and web development. A computer science graduate, he combines rigorous technical analysis with attention to the people who use technology.

Read also