Few things annoy me more than paying a subscription for a service I only use once a month, sometimes not at all.
The feeling came back a couple of weeks ago when I saw another charge for Google One’s 2TB tier, knowing I was using less than 350GB of it.
The service is fine, but it costs me over $100 a year to store my amateur photography, and the price has only gone up since I signed on.
I decided to stop paying for it, especially since I already had most of what I needed for an alternative lying around the house.
My plan was to build a home cloud on hardware I owned, back up my phone’s camera roll to it, and access it from anywhere.
With this, I wouldn’t have to deal with monthly charges or outgrowing my storage tier. Plus, I had a little peace of mind knowing my personal photos wouldn’t be stored in a data center I couldn’t control.
If you have ever thought about self-hosting your digital life, this is one of the easiest places to start.
The Raspberry Pi was already doing 5 other jobs
Cloud backup was the natural next step
I have to make it clear that I didn’t just buy a Raspberry Pi to avoid paying a Google bill.
I bought my Pi 5 a long time ago, and it has been more than worth it. It runs my smart home hub, a private VPN, a small personal website, and Pi-hole for blocking ads across my network.
It’s sitting in a corner, running all those tasks on its own backup power source.
When you have a low-power machine that works 24/7, every new use case is nearly free.
Besides, the recurring subscription bothered me more than the actual dollar amount, especially when the price has only gone up and never down.
I’d rather pay once for hardware I control than rent space forever.
What the setup does, and where it falls short
It does almost everything I need, with a couple of gaps
My idea was a large storage device at home that my phone backs up to automatically and that I could open from anywhere.
A friend suggested a proper Linux server, which sounded too complicated, so I chose something more approachable instead.
Even the most basic research lands on the same answer almost every time: Nextcloud. It’s the easiest open source option out there, and it holds its own against Google Drive, OneDrive, and Dropbox in day-to-day use.
Nextcloud runs auto-backup on a per-folder basis, syncs files across all my devices, and includes a Memories feature that gives me a timeline view of backed-up photos and videos. These features alone covered what I needed and then some.
Still, it’s not perfect. There’s no Magic Eraser, AI photo search, or any of the Google Pixel editing tricks I’ve been using for some time now.
Also, depending on the network strength, downloading heavy files when I’m away from home is slower than using Google’s servers.
Since I rarely access my photos and videos remotely, the slower speeds mattered less than I feared.
The components that made it work
A short-term splurge against long-term spending
I already own the Raspberry Pi 5, but for anyone starting from scratch, a CanaKit Essentials starter kit with the 8GB board costs about $270.
It bundles the Pi 5, a microSD card for the OS, a power supply, an active cooler, and a case with decent airflow.
The Pi 5 tends to get warm under sustained load, so the cooler and case aren’t optional extras.
The Pi 5 was the first board to expose a PCIe lane, and for SSD speeds, it’s a better channel to run storage off of than a USB port. This means a $20 investment in a Pimoroni NVMe Base.
I went with a third-party HAT rather than the official M.2 HAT, so it can fit the standard 2280 SSD size rather than a stubby one, which the M.2 HAT only supports.
The drive itself was the real cost. I spent about $160 on a 1TB NVMe SSD, which stung a little because prices went up in 2026 thanks to an industry-wide NAND shortage.
A drive that might have been $60 two years ago is now closer to $110 to $200, depending on the model.
If you’re short on budget, a 4GB Pi board costs less than the 8GB, a budget SSD or even a larger-capacity microSD saves on storage costs, and a third-party case may be cheaper.
I didn’t bother, but you can always find savings on this project.
Putting it together
Easier than it sounds, with one predictable speed bump
Assembling took a little fiddling. I fitted the active cooler first, pressed the HAT onto the Pi’s GPIO pins, ran the ribbon cable into the PCIe port, and screwed the board down.
Then I flashed Raspberry Pi OS Lite onto the Pi’s SD card and pointed it at the NVMe drive for storage.
To install Nextcloud, I opted for the all-in-one installation using Docker, and installed the Nextcloud app on my Pixel.
Then, I connected it by entering the IP address, username, and password. It had been going well, so far so good.
But then I hit the first (and really only) roadblock, which was remote access.
It took a while to remember I’d solved this exact problem before with Tailscale, which gave me an IP I could drop into Nextcloud for connections from outside my network.
After that, it was pretty much ready to go. I set up Nextcloud’s backup routines for safety, ran a few test uploads, and saw my camera roll start uploading to a drive in my own house.
Connecting fast and portable SSD storage to your phone is easier than you think
With just one interfacing accessory
Why I’m sold on a Raspberry Pi cloud server
It’s been a while now, and the setup has been holding up quite well. Honestly, I’m just happy to back up my phone without paying for extra storage.
What I keep coming around to is ownership. My photos are on hardware I can see and physically touch, rather than a server locked behind a pricing page that changes when Google feels like it.
This peace of mind is worth the AI features I gave up, and I’m sure I can have them back with a little tinkering.
I’ve already moved my drive contents over and canceled the subscription.
And because the Pi was always going to run other tasks, the backup half of it pays for itself the next time the Google One charge doesn’t arrive.




