Immich is the best self-hosted Google Photos alternative available today. It provides automatic mobile photo and video backup, AI-powered face recognition and object search, timeline browsing, album sharing, and a polished mobile app that makes the transition from Google Photos feel natural. It runs via Docker Compose on any NAS with 8GB RAM and an Intel or AMD CPU. This guide covers the complete setup: deploying the Docker stack on Synology or QNAP, connecting the mobile app for automatic backup, and configuring the machine learning pipeline for face recognition.
In short: Deploy Immich via the official Docker Compose file, point the data directory to your NAS storage, connect to your Immich server from the mobile app, enable auto-backup, and let the initial upload run overnight. Face recognition and smart search activate as the ML pipeline processes your library. This takes hours to days depending on library size.
What Immich Includes
Immich's feature set as of early 2026:
- Mobile backup: iOS and Android apps auto-upload photos and videos in the background. Supports HEIC, RAW formats, Live Photos, and videos up to any size
- Face recognition and tagging: AI-powered facial recognition groups photos by person. You assign names to faces. Immich then finds all photos containing that person
- Object and scene search: Search your library with natural language. "beach 2023", "dog playground", "birthday cake". Powered by the CLIP model running locally
- Timeline view: Chronological browse of your entire library with date-based grouping
- Album sharing: Share albums with other Immich users or via public link
- Partners: Share libraries bidirectionally with a partner. Both see each other's photos in their timeline
- Map view: Photos plotted on a map based on GPS EXIF data
Immich is under active development and releases updates frequently. The project is production-quality for personal use but officially labels itself as beta. Always maintain an external backup of your photos independently of Immich.
Critical: Immich is not a backup solution. It is a photo management platform. If Immich is your only copy of your photos, you are not backed up. Maintain an independent backup of the Immich data directory (your original photo files) to an external drive or cloud storage separately from Immich itself.
Hardware Requirements
Immich's core services (photo serving, thumbnail generation, basic search) run on 4GB RAM. The machine learning pipeline (face recognition, smart search) requires more:
- Minimum for ML features: 8GB RAM, Intel or AMD CPU (ARM works but ML is significantly slower)
- Recommended: 16GB RAM on an Intel Celeron N5095 or better (TS-464, DS423+)
- ARM NAS (TS-233, DS223): Immich core works, but the ML container is slow. Face recognition on a 10,000-photo library can take days. Disable ML if on ARM and use basic search only
Storage is proportional to your library size. Immich stores originals (your actual photo files), web-optimised versions, and thumbnails. For a 100GB photo library, expect approximately 120-140GB total storage usage with Immich's generated assets included.
Step 1: Deploy the Immich Docker Compose Stack
Immich provides an official Docker Compose file. Download it from the Immich GitHub releases page (github.com/immich-app/immich):
- Create a directory:
/volume1/docker/immich/(Synology) or/share/docker/immich/(QNAP) - Download the official
docker-compose.ymland.envexample file from the Immich releases page - Edit the
.envfile. The key variable isUPLOAD_LOCATION: set this to the NAS path where your photos will be stored (e.g./volume1/photos/immich-library). This is where Immich will write uploaded photos - Deploy:
docker compose up -d(or via NAS Docker UI). First startup downloads ~5-6GB of container images
After startup, access Immich at http://[NAS-IP]:2283. Create an admin account on first login. The account you create first becomes the admin.
Step 2: Configure External Library (Optional)
If you have an existing photo library on your NAS (e.g. photos already organised in folders on a shared drive), you can add it as an Immich External Library rather than re-uploading everything:
- In the Immich Compose file, add a volume mount pointing to your existing photos folder:
- /volume1/photos:/mnt/nas-photos:ro(read-only) - In Immich Admin Settings, go to External Libraries → Add External Library
- Set the path to
/mnt/nas-photos(the container path from step above) - Run an initial scan. Immich indexes existing files without re-uploading them
External library files are not moved or copied. Immich reads them from their existing location. This is the cleanest approach for users who already have organised NAS photo folders.
Step 3: Connect the Mobile App
Install the Immich app (iOS App Store or Google Play). On first launch:
- Enter your server URL.
http://[NAS-IP]:2283on local network, or your HTTPS domain if configured - Sign in with your Immich account
- Go to Profile → Backup and enable Backup. Select which albums to back up (default: Camera Roll)
- Configure backup to run on Wi-Fi only if you don't want to use mobile data for uploads
The initial backup runs in the background. For a large phone library (10,000+ photos), leave the app open overnight on its first run. Background upload is throttled when the app is minimised on iOS.
For remote access (backing up from outside home network), you need HTTPS configured. Use NGINX Proxy Manager with a domain, or a Cloudflare Tunnel. Same approach as Nextcloud HTTPS setup.
Step 4: Machine Learning Pipeline
Immich's ML container runs face recognition and CLIP (natural language search) on your library. After initial library import, the ML pipeline works through existing photos in the background:
- Face detection: Immich identifies faces and groups them into clusters. You assign names to faces from the People page (Explore → People)
- CLIP semantic search: Enables natural language search. Once processed, you can search "sunset beach" or "birthday cake" and Immich returns visually matching photos
ML processing speed on NAS hardware:
- Intel Celeron N5095 (TS-464, DS423+): Processes ~500-1,000 photos/hour for initial indexing
- Intel Core i5 (TVS-h674): ~2,000-3,000 photos/hour
- ARM Cortex-A55 (TS-233): ~50-100 photos/hour. Very slow, days for large libraries
For ARM NAS users: disable the ML container by setting IMMICH_MACHINE_LEARNING_ENABLED=false in the .env file to save RAM and CPU. You lose face recognition and smart search but retain all other Immich features.
🇦🇺 Australian Buyers: NAS Recommendations
Recommended NAS for Immich in Australia (March 2026):
- QNAP TS-464 (~$989): Best value Immich NAS. Intel Celeron N5095 with Quick Sync, 8GB RAM (expandable to 16GB), PCIe slot for 10GbE if needed. Container Station makes Compose management straightforward
- Synology DS423+ (~$980): Same price range, Intel Celeron J4125, 2GB stock RAM. must upgrade RAM to 8GB before running Immich (third-party DDR4 SO-DIMM, ~$30-40 AUD). Container Manager is clean for Docker beginners
- Synology DS923+ (~$980): AMD Ryzen R1600, 4GB stock RAM. Requires RAM upgrade. More expensive but stronger multi-core performance
Both TS-464 and DS423+ are stocked consistently at Scorptec, PLE, Mwave. Use StaticICE.com.au for live AU pricing.
See the best NAS guide for a full comparison across use cases, or the NAS for photo management guide for photo-specific recommendations.
Use our free NAS Sizing Wizard to get a personalised NAS recommendation.
Related reading: our NAS explainer.
Is Immich safe to use as my only photo storage?
No. Immich should not be your only copy of your photos. Immich is a photo management and access platform, not a backup solution. The Immich team explicitly states this in their documentation. Maintain an independent backup: at minimum, keep the original photo files in a separate folder on your NAS (outside the Immich upload directory) and back that folder up to an external drive or cloud storage. Think of Immich as your Google Photos interface. It needs a separate backup just as you would back up a phone.
Does Immich work on Synology?
Yes. Immich runs on Synology via Container Manager (DSM 7.2+). Deploy the official Docker Compose stack through Container Manager's Projects tab, pointing the upload location to a volume on your Synology. Synology DS423+, DS923+, and DS723+ are well-suited for Immich. The DS223 (ARM) can run Immich core but ML features will be very slow. Disable the ML container on ARM hardware.
Can I import existing photos from Google Photos into Immich?
Yes. Export your Google Photos library via Google Takeout (takeout.google.com). Select Google Photos and download the ZIP archives. Extract the files and use the Immich CLI tool (immich upload) to bulk-import the extracted folder. The CLI preserves original dates from EXIF data. For very large libraries (100GB+), copy files directly to the NAS over the local network first, then run the import from the NAS CLI rather than uploading from your computer.
How do I update Immich?
Immich releases updates frequently (sometimes weekly). Update by pulling the new images: docker compose pull && docker compose up -d. Immich handles database migrations automatically on startup. Check the Immich GitHub release notes before updating. The project is active and occasionally has important notes about breaking changes or migration steps. Back up your database before major version updates: docker compose exec database pg_dumpall -U postgres > backup.sql.
How is Immich different from Nextcloud Photos?
Immich is purpose-built for photo management and does it better than Nextcloud Photos. Immich has superior AI features (face recognition, CLIP semantic search), a faster and more polished mobile app, better timeline browsing, and more active development in the photo management space. Nextcloud is a better choice if you want a single platform for file sync, document editing, and photo backup. The jack-of-all-trades. If photos are your primary use case and you want the best possible Google Photos replacement, Immich is the stronger choice.
Want to explore Immich's AI-powered features in depth? The Immich AI features guide covers face recognition setup, smart search configuration, and the Immich ML pipeline on NAS hardware.
Immich AI Features Guide →