How to ditch Google Photos with Immich on a 200 dollar mini PC
Key takeaways
- Immich is the only self-hosted photo app with background mobile backup, face recognition and semantic search that genuinely matches Google Photos feature for feature.
- The official minimum is 6GB of RAM and 2 CPU cores, which a 200 dollar mini PC clears comfortably. A Raspberry Pi 5 works but the machine learning jobs crawl.
- Storage runs roughly 10 to 20GB per person per year, so a 20 year family library usually fits inside 1TB. Hard drives are the expensive part in 2026, not the computer.
- On pure cost this does not beat Google One for about four years. Do it for control and offline access, not to save money this quarter.
This article contains affiliate links. We may earn a small commission if you make a purchase, at no extra cost to you.
Immich passed 112,000 GitHub stars in August 2026, which makes it the most starred self-hosted project on the platform. It is not close. The reason is narrow and specific: it is the only open source photo app where the phone app backs up in the background without you opening it, faces get grouped automatically, and typing "dog on a beach" finds the dog on the beach.
That last part matters more than it sounds. Every other self-hosted photo tool is a file browser with a nice grid. Immich is the first one that behaves like the product people are actually trying to leave.
What you get, and what you give up
The feature list maps onto Google Photos almost exactly. Native iOS and Android apps with background upload. On-device machine learning for face recognition and object detection. CLIP-based semantic search, so you search by what is in the picture rather than by filename. Shared albums, a map view, duplicate detection, and a web interface that looks deliberately familiar.
What you give up is someone else's problem becoming your problem. Google runs the database, patches the server, replaces the failed drive and keeps three copies of your wedding photos in three buildings. Self-hosting means a PostgreSQL database you are responsible for, Docker containers that need updating, and a backup plan that has to actually be tested rather than assumed.
That is the honest trade. Not "free storage". A transfer of responsibility.
The hardware for a self-hosted Google Photos alternative
Immich's official requirements are 6GB of RAM and 2 CPU cores as a floor, with 8GB and 4 cores recommended. The machine learning workers are the reason. They spin up on demand to index faces and generate search embeddings, and they are the only part of the stack that will make a weak machine feel broken.
The sensible option
A small x86 mini PC is the right answer for most people. An Intel N100 box with 16GB of RAM costs around 200 dollars and pulls roughly 10 watts at idle, which works out to something like 15 to 25 dollars a year in electricity depending on where you live.
Check price on Amazon → for the Beelink Mini S12 Pro, which is the configuration most Immich threads land on. If you already own a Mac and want something quieter and considerably faster at the ML jobs, the Mac mini M4 with 24GB of unified memory runs Immich in Docker without complaint, though you are paying roughly three times as much for it.
Already building something bigger? Our home server build guide covers the case, PSU and drive bay decisions, and choosing a home server OS covers whether you want Proxmox, TrueNAS or plain Debian underneath.
The Raspberry Pi option
A Raspberry Pi 5 with 8GB will run Immich. It will also take several days to finish the initial face recognition pass on a large library, and the smart search indexing is slow enough that people regularly assume it has hung. If you only have a Pi, disable the ML jobs, get your library uploaded and browsable first, then enable them and leave it running for a week.
The Pi is a fine long-term host once indexing is done. It is a frustrating one on day one.
Storage, which is the expensive bit in 2026
Budget 10 to 20GB per person per year. A couple with a fifteen year shared library typically lands between 400GB and 900GB. Most families do not need multiple terabytes, which is worth knowing before anyone talks you into a four-bay NAS.
Put the operating system and the Immich database on an SSD. The Samsung 990 PRO 2TB is overkill on speed for this and perfectly sized on capacity, and for many libraries it is the only drive you need. If your library is genuinely large, add a spinning disk for the photo files themselves and keep the database on flash. An 8TB Seagate IronWolf Pro is the usual pick.
Timing warning. Western Digital has confirmed its hard drive output is sold out through the whole of 2026, hyperscalers have booked capacity into 2028, and HDD prices climbed roughly 46 percent between September 2025 and January 2026. In September 2026 new internal drives run somewhere around 24 to 36 dollars per terabyte. Analysts do not expect normal pricing before late 2027, which we covered in detail in the storage shortage explainer. Buy the drive you need, not the drive you might need in 2029.
If you are sizing RAM for the same machine, how much RAM you actually need in 2026 has the current numbers.
The Immich setup guide, start to finish
The Docker Compose install takes under 30 minutes on a machine that already has Docker on it. Four steps.
1. Install Docker. On Debian or Ubuntu, use the official convenience script from docs.docker.com rather than the distribution package, which is usually several versions behind.
2. Pull the compose files. Immich ships a docker-compose.yml and a .env file from its releases page. Do not hand-write these. The project changes service definitions between releases and the maintainers are explicit that the published files are the supported path.
3. Edit three values in .env. UPLOAD_LOCATION points at wherever your photos will live. DB_DATA_LOCATION points at the PostgreSQL data directory, which should be on the SSD. DB_PASSWORD needs to be something you generated rather than something you typed.
4. Bring it up. docker compose up -d, then open port 2283 on the host. The first account you create becomes the admin.
Do not expose that port to the internet directly. Put it behind a reverse proxy with TLS, or better, reach it over a WireGuard or Tailscale tunnel so it is never publicly reachable at all. If you are unsure what is currently exposed on your network, here is how to check.
Getting your photos out of Google
Google Takeout is the only sanctioned export, and it has one well-known flaw: it separates your photos from their metadata. Timestamps, GPS coordinates and album membership come out in sidecar JSON files rather than baked into the images, which means a naive import gives you thousands of photos all dated the day you uploaded them.
The fix is a tool called google-photos-takeout-helper, which reads the JSON sidecars and writes the data back into the files before you import. Run that on the extracted Takeout archive, then point the Immich command line uploader at the result.
Two practical notes. Request your Takeout in 10GB or 50GB chunks rather than one enormous file, because the download links expire after seven days and a failed 200GB transfer is a genuinely miserable afternoon. And keep the original Takeout archive somewhere safe until you have confirmed the dates and locations survived the trip.
The backup rule that makes this safe
One copy on your server is not a backup. It is a single drive with your family history on it.
The minimum viable setup is the photo directory plus a nightly PostgreSQL dump, replicated somewhere off the machine. Cloud object storage works and costs a few dollars a month at these volumes. An external drive that lives at a relative's house also works, and in 2026 may be cheaper.
Test the restore before you delete anything from Google. Specifically: wipe your Immich instance in a test container, restore from your backup, and confirm the photos and the face groupings both come back. Everyone who has lost a self-hosted library skipped this step.
When you should just pay Google
Google One's 2TB tier runs 9.99 dollars a month or 99.99 a year. Over five years that is around 600 dollars for storage you never think about.
A mini PC at 200 dollars plus a drive at current prices lands you somewhere between 400 and 500 dollars up front, plus electricity. On money alone, the break-even is about four years, and that assumes nothing fails.
So the financial case is thin right now, and anyone telling you otherwise is ignoring what happened to drive prices. The real reasons to do this are different: your photos stop being training data, they work when your broadband does not, nobody can lock you out of the account, and the storage tier can never be repriced underneath you.
If those things do not matter much to you, Google One is a reasonable product and you should keep paying for it. If they do, Immich is the first self-hosted option where the switch does not feel like a downgrade.
Frequently asked questions
Is Immich actually free? The software is, under the AGPL. There is a paid product key that supports development and unlocks nothing functional. You pay for hardware and electricity, not licences.
Can Immich replace Google Photos on iPhone? Yes. The iOS app does background backup, though iOS is stricter than Android about waking apps, so expect uploads to happen in bursts when the app is opened or the phone is charging on Wi-Fi.
Do I need a NAS? No. A NAS is a convenient box with drive bays in it, not a requirement. A mini PC with one SSD runs Immich perfectly well for most libraries.
How much RAM does Immich really need? Six gigabytes will run it. Eight or sixteen will stop the machine learning jobs from making everything else feel slow. This is the single spec worth overbuying.
Will my albums survive the migration? Album membership is in the Takeout JSON, and the takeout helper preserves it if you run it before importing. Import raw and you will get the photos without the albums.
Last updated: 26 September 2026