You don’t need to pay $10/month for Google Drive. Or $3/month for 1Password. Or $8/month for Notion. You can run all of this at home, on a single Raspberry Pi if you’re careful.
But here’s the honest part: some of it is worth the effort. Some of it isn’t. I’ve run a self-hosted cloud at home for three years. This is what I’ve learned.
The Core Stack β What to Run First
Start here. These are the services that genuinely replace their cloud equivalents and are worth the setup time:
1. File Storage β Nextcloud (replaces Google Drive)
The obvious one, and the one where the cloud is genuinely hard to beat on price β I did the numbers in Cloud for Cheap: What It Actually Costs to Run Your Own. Nextcloud gives you:
- File sync across devices (desktop + mobile clients)
- Collaborative document editing (Collabora Online or Only Office)
- Calendar and contacts sync (CalDAV/CardDAV)
- Photo gallery with facial recognition
What it replaces: Google Drive, iCloud Drive, Dropbox
Hardware needed: 2+ CPU cores, 2GB RAM minimum, plus storage for your files. A used Dell Optiplex with a 500GB SSD works well.
Setup time: 30β60 minutes with Docker Compose
services:
nextcloud:
image: nextcloud
ports:
- "8080:80"
volumes:
- nextcloud_data:/var/www/html
- /path/to/your/files:/data
restart: unless-stopped
Verdict: β Worth it. Better than Google Drive for privacy. The mobile apps are decent.
2. Password Manager β Vaultwarden (replaces 1Password, Bitwarden SaaS)
Vaultwarden is a Rust implementation of the Bitwarden API. It’s compatible with all Bitwarden apps and browser extensions, but runs on your own server.
What it replaces: 1Password, Bitwarden (paid), LastPass
Hardware needed: 512MB RAM, single core. Runs on a Pi 4 without complaint.
Setup time: 5 minutes with Docker
services:
vaultwarden:
image: vaultwarden/server:latest
ports:
- "8080:80"
volumes:
- vb_data:/data
restart: unless-stopped
environment:
- SIGNUPS_ALLOWED=false # Set to true if you want new users
Then install the Bitwarden browser extension and point it at http://your-server:8080. It works seamlessly.
Verdict: β Absolutely worth it. The Bitwarden apps are excellent, and the self-hosted version is identical. This is the one service I recommend to everyone.
3. Photo Management β Immich (replaces Google Photos)
Immich is the best self-hosted Google Photos alternative I’ve tried, and I wrote up the whole migration β including the 8 GB of RAM it actually needs and the phone permissions that quietly break the backup β in Replace Google Photos with Immich. It:
- Auto-uploads from your phone (Android + iOS apps)
- Does facial recognition and grouping
- Has album management
- Shows location data on a map
- Handles video too
What it replaces: Google Photos (specifically the storage + auto-upload part)
Hardware needed: 4GB+ RAM recommended if you want fast AI processing. 2CPU cores minimum.
Verdict: β Worth it if you have a lot of photos. Setup is a bit involved (requires PostgreSQL and MinIO), but the result is worth it.
4. DNS-Level Ad Blocking β Pi-hole (replaces every device ad blocker)
Pi-hole blocks ads and trackers at the network level. One Pi-hole instance on your router means ad-free browsing on every device β TV, phone, laptop, guest devices β without installing anything. It is a close call against AdGuard Home, and I compared the two in Pi-hole vs AdGuard Home β short version is that AdGuard Home ships encrypted DNS natively and Pi-hole needs a sidecar for that.
What it replaces: uBlock Origin (browser), AdGuard (device-level), various DNS-based blockers
Hardware needed: Raspberry Pi 3 or better. 1GB RAM. Sits idle at <5% CPU.
Setup time: 20 minutes including configuring your router to use it as DNS
docker run -d \
--name pihole \
-e WEBPASSWORD='your-password' \
-p 53:53/tcp -p 53:53/udp \
-p 80:80 \
-v pihole_data:/etc/pihole \
-v dnsmasq_data:/etc/dnsmasq.d \
--restart=unless-stopped \
pihole/pihole:latest
Verdict: β Essential. Set it up once and forget it.
The Secondary Stack β Solid Options
These are good but require more commitment:
5. Smart Home β Home Assistant (replaces smart home cloud)
Home Assistant is the open-source hub that ties together every smart device you own β whether it’s Zigbee, Z-Wave, Matter, WiFi, or cloud APIs. Once configured, it lets everything talk to each other without relying on cloud services that might disappear.
What it replaces: Samsung SmartThings hub, Philips Hue bridge, Tuya cloud, Amazon Alexa routines
Hardware needed: 2GB+ RAM, SSD recommended. Runs fine on a N100 mini PC.
Verdict: β Worth it if you have more than 5 smart devices. The automations you can build are genuinely impressive.
6. Media Streaming β Jellyfin (replaces Netflix)
Jellyfin organizes your movie and TV show library and streams it to any device. No subscription, no ads, your own files. It is also the answer if you’ve hit Plex’s paywall β I compared the two in Plex vs Jellyfin in 2026, including the hardware that makes transcoding free.
What it replaces: Netflix, Amazon Prime Video (for your own library)
Hardware needed: 2+ CPU cores for transcoding, 4GB+ RAM. GPU passthrough on a gaming rig makes transcoding fast.
Verdict: β Worth it if you have a media library. Skip if you only stream subscription services.
7. Email β Mailcow (replaces Gmail)
This is where I give you the honest warning. Email is the hardest self-hosted service to run correctly:
- Deliverability (getting emails to inbox, not spam) is genuinely hard without proper SPF/DKIM/DMARC
- Spam filtering requires constant attention
- Security updates are critical β email servers are high-value targets
- Most free email providers (Gmail, Outlook) filter out emails from self-hosted domains
What it replaces: Gmail, Outlook
Hardware needed: 4GB+ RAM, 2+ cores, 50GB+ storage
Verdict: β οΈ Only if you’re determined. For most people, using a custom domain with a paid email service (Cloudflare Email Routing is free, or FastMail at $3/month) is a better choice.
The Cloud Stack β When to Pay Instead
These are the services where self-hosting is more trouble than it’s worth:
| Service | Self-hosted alternative | Better choice |
|---|---|---|
| Mailcow | Cloudflare Email Routing (free) or FastMail ($3/mo) | |
| Note-taking | Outline, AppFlowy | Obsidian (local) + sync via Nextcloud |
| Video calls | Jitsi, Matrix | Google Meet, Zoom |
| CI/CD | Gitea Actions | GitHub Actions (free tier is generous) |
| Object storage | MinIO | Wasabi ($1/TB/mo, no egress fees), or Backblaze B2 |
| Maps/GPS | Self-hosted OSM tiles | OpenStreetMap + Nextcloud Maps |
The rule I follow: if the self-hosted version requires more than 30 minutes of maintenance per month, and a managed alternative costs under $5/month, just pay for the managed version.
Hardware Guide β What to Actually Buy
Budget ($0β$50)
A Raspberry Pi 4 (4GB) is enough for:
- Pi-hole
- Vaultwarden
- One small service
Starter Homelab ($100β$200)
A used Dell Optiplex Micro (i5-8th gen, 16GB RAM, SSD) runs:
- Everything above
- Nextcloud
- Jellyfin (single concurrent stream)
- Home Assistant
- Pi-hole + Vaultwarden + Jellyfin simultaneously
Proper Homelab ($300β$600)
A N100 mini PC (Beelink EQ12, Minisforum UN100L) or a used Dell PowerEdge R320:
- All of the above
- Multiple concurrent Jellyfin streams
- Plex (hardware transcoding)
- Multiple heavy services
- Network-wide backups
“I want to go serious” ($800+)
Build a proper server: an ASRock DeskMini X300 with ECC RAM, or a Supermicro 1U rackmount if you have a closet for it.
The Decision Framework
Before you set anything up, ask yourself:
How much is this data worth to me? Passwords and photos β definitely self-host. Holiday photos from 2019 β not worth the effort.
How much time will I spend maintaining it? Set a timer. If setup + first-year maintenance exceeds $200 of your time at your hourly rate, just pay for the cloud service.
What’s my internet upload speed? Most self-hosted services need decent upload (10+ Mbps). If you’re on a slow connection, the cloud is better.
Do I need it when I’m away from home? DynDNS + custom domain + VPN (WireGuard) solves this. Or Tailscale β free, zero-config VPN that works through NAT.
The Practical Starting Point
If you’re new to this, here’s the order I’d go:
Week 1: Vaultwarden + Pi-hole (low effort, immediate value) Week 2: Nextcloud (file sync across devices) Week 3: WireGuard VPN (access your home network from anywhere) Week 4: Home Assistant (if you have smart devices) or Jellyfin (if you have media)
That’s four services. You now have better password management, ad-free browsing, file sync, and remote access than most people pay subscription fees for.
Have questions about any specific service? Drop me a line β I’ll write a deeper guide on whatever you’re stuck on.