Introduction
The growing availability of high-quality open-source software is transforming the technology landscape, offering powerful alternatives to traditional SaaS platforms. These tools empower individuals and organizations with greater control, privacy, and cost savings. Applications like Immich (photo galleries and mobile photo backups), Baserow (no-code database), n8n (workflow automation) and Vaultwarden (password manager) demonstrate that open source is the future of technology. To embrace this shift, it’s essential to learn how to self-host these applications, either on home servers or through cloud hosting.
To determine the best approach, we conducted a study comparing the costs of hosting open-source software on home servers versus using cloud hosting. We also researched the providers, configurations and model numbers of the required hardware and software.
Both home hosting and cloud hosting represent forms of self-hosting. Users retain ownership and control of their software and infrastructure, enabling them to harness the full potential of open-source tools. Users also assume full responsibility for managing their software and backups.
This comparison arose from our desire to balance cost, control, and scalability. While home hosting involves an upfront investment in hardware, it provides long-term savings, complete ownership of hardware, and full control over data. Cloud hosting, on the other hand, offers convenience and scalability but incurs higher recurring costs and relies on third-party infrastructure for data storage and management.
Our research relied heavily on guidance from the members of the Immich Discord community, whose expertise helped us identify the optimal hardware setup for home hosting. Their invaluable input ensured our comparison accurately reflected the costs and requirements of self-hosting.
Our Requirements
For our study, we assumed one instance of each application: Immich, Baserow, n8n, and Vaultwarden.
Immich was allocated approximately 1TB of storage for managing photo galleries, while the other applications required minimal storage.
For cloud hosting, we initially considered Amazon AWS, but its pricing was significantly higher than DigitalOcean, making the latter our preferred cloud option. Alternatives to DigitalOcean include Linode and Vultr.
Results
Below, we present our results, along with recommended hardware and links to purchase (as of January 2025).
Home Hosting: Proposed Hardware Setup
1. Synology DS423+ (Diskless) NAS
- Model: Synology 4-Bay DiskStation DS423+
- Price: $499
- Specifications: Height: 166 mm, Width: 199 mm, Depth: 223 mm, Weight: 2.2 kg
- Less expensive alternative: Synology 2-bay DiskStation DS224+ (Diskless)
2. WD Red Plus 4TB Drives (x4)
- Model: WD Red Plus 4TB NAS Hard Disk Drive (WD40EFPX)
- Price: $100 each ($400 total)
3. RAM
- Model: Samsung 16GB DDR4 SO-DIMM 2666MHz (Dual Rank)
- Price: $28
4. Uninterruptible Power Supply (UPS)
- Model: APC BE670M1 675VA 360 Watts
- Purpose: Provides backup power during outages to ensure the NAS shuts down safely.
- Price: $79
Home Hosting Costs
- Initial Cost: $1,006
- Includes NAS, 4 drives, RAM, and UPS
- Recurring Monthly Costs: $11.62
- Includes Electricity (43.2 kWh/month at $0.13/kWh: $5.62) and Backblaze B2 (1TB backup: $6)
Home Hosting Cumulative Cost Over Time
- Year 1: $1,145.44
- Year 2: $1,284.88
- Year 3: $1,424.32
- Year 4: $1,563.76
- Year 5: $1,703.20
Costs above include NAS + Drives + RAM + UPS + Electricity + Backblaze
Cloud Hosting: Proposed Setup In DigitalOcean
For cloud hosting, we suggest:
Hosting: 1 vCPU, 1GB RAM DigitalOcean Droplet
Storage: DigitalOcean Spaces allows for scaleable storage
Cloud Hosting Costs
- Initial Cost: $0
- Recurring Monthly Costs: $44 for Droplets & Storage
- Droplets: $24
- We need four droplets (one each for Immich, n8n, Baserow, and VaultWarden) and each droplet costs $6/month
- Storage: $20
- DigitalOcean Spaces costs $5/month for 250GB and $0.02/GB beyond that. For 1TB, the total is $20/month.
- Droplets: $24
Cloud Hosting Cumulative Cost Over Time
- Year 1: $528
- Year 2: $1,056
- Year 3: $1,584
- Year 4: $2,112
- Year 5: $2,640
Annual Savings Or Loss Choosing Home Hosting Rather Than Cloud Hosting
- Year 1: -$617.44 (loss)
- Year 2: -$228.12 (loss)
- Year 3: $159.68 (savings)
- Year 4: $548.24 (savings)
- Year 5: $936.80 (savings)
Cost Comparison Summary
- Home Hosting Total 5-Year Cost: $1,703
Has a higher upfront cost ($1,006) but significantly lower recurring monthly costs (~$11.62). It breaks even by Year 3, leading to growing savings over time. - Cloud Hosting Total 5-Year Cost: $2,640
Has no upfront costs but higher recurring monthly fees ($44/month). - By Year 5, the home hosting setup saves $936.80 compared to cloud hosting.
Home Hosting Yields Even Greater Savings With Increasing Storage Needs And Applications Hosted
What if you are a heavier user? Here are the cumulative costs for home hosting versus cloud hosting over the first five years, assuming 2TB of storage and 8 applications:
Costs 170898_cd80ba-a3> |
Home Hosting 170898_536fb4-b0> |
Cloud Hosting 170898_2a463c-92> |
Savings or Loss with Home Hosting 170898_a93e1b-0e> |
---|---|---|---|
Year 1 170898_c9fd34-d2> |
$1,217 170898_622a40-02> |
$1,056 170898_c069d9-7e> |
-$161 (loss) 170898_0796db-e8> |
Year 2 170898_8e42ed-2c> |
$1,429 170898_d64413-72> |
$2,112 170898_e5a633-86> |
$683 (savings) 170898_b11570-0a> |
Year 3 170898_5409c1-3c> |
$1,640 170898_f70401-e0> |
$3,168 170898_3f0833-d8> |
$1,528 (savings) 170898_d2fc2c-e1> |
Year 4 170898_6ea494-a6> |
$1,852 170898_e0a236-13> |
$4,224 170898_cc3812-7d> |
$2,372 (savings) 170898_738a69-8b> |
Year 5 170898_4a7433-33> |
$2,063 170898_900304-f2> |
$5,280 170898_d803be-eb> |
$3,217 (savings) 170898_4b241e-b2> |
As you can see, in this scenario, home hosting breaks even by Year 2 and generates growing savings each year thereafter, with total savings of $3,217 compared to cloud hosting by the end of Year 5.
If you have opted to go with home hosting (like we have!), read on…
Storage Configuration
For our storage configuration, we will use Synology Hybrid RAID (SHR) with Btrfs and snapshots, which balances redundancy, capacity, and performance while adding advanced data protection.
SHR is a proprietary option from Synology that offers similar benefits to RAID 5 (such as distributing data and parity information across drives to allow recovery from a single drive failure, while maximizing usable storage). However, SHR provides greater flexibility by supporting mixed drive sizes, making it easier to expand storage in the future without complex reconfigurations. Combined with the Btrfs file system, SHR ensures data integrity through checksumming and provides robust recovery options with snapshots.
Alternatives like mirrored pairs (RAID 1) offer simplicity and excellent redundancy, but sacrifice significant storage capacity (only 50% of the total drive space is usable). Since our current data needs are modest (~1TB) and we have ample storage for growth, SHR with Btrfs and snapshots provides the optimal balance of scalability, efficiency, and data protection for our use case.
Backups
RAID is not a backup. We have chosen to use Restic or Borg as our backup tools for storing data securely on Backblaze B2, due to their powerful features tailored for efficient and reliable backups. Unlike simple data copying tools, Restic and Borg are designed specifically for backups, offering capabilities such as scheduled backups, incremental updates (copying only new or changed data), and versioning to track changes over time. These tools also enable space efficiency through deduplication, and allow restoration of files to a previous point in time, making them ideal for recovering from accidental deletions or data corruption. For more information, visit the official repositories: Restic and Borg.
Streamlining Self-Hosting with Docker Containers
Docker containers play a crucial role in simplifying the deployment and management of self-hosted applications. By encapsulating applications and their dependencies into lightweight, portable containers, Docker ensures consistent performance across different environments. This approach minimizes compatibility issues and reduces the complexity of setting up tools like Immich, n8n, and Baserow. Whether self-hosting on home servers or in the cloud, Docker allows for efficient resource use and quick recovery in case of system failures. This tutorial explains how install Docker on any operating system.
More About The Applications We Mention
We were compelled to do this research because we needed to find a way to gain access to open-source software, some of which requires self-hosting. The applications of interest to us included:
- Immich (alternative to Google Photos or Flickr)
- Baserow (alternative to Airtable)
- n8n (alternative to Make and Zapier)
- Vaultwarden (alternative to 1Password, MSecure and LastPass)
- Ente (alternative to Google Photos or Apple iCloud for mobile photo backup)
We have no doubt that over the coming years we will find many more open-source applications that we will only be able to make use of by having made use of the suggestions and ideals detailed in this study.
Conclusion
Open-source software presents a unique opportunity to reduce costs, enhance privacy, and gain independence from proprietary platforms. Whether hosting at home or in the cloud, self-hosting is becoming an essential skill in today’s technology landscape. We hope these findings help guide your decisions and inspire you to explore the flexibility of open-source technology. Best of luck with your business and personal projects!