OpenSourcePicks

Open source alternatives to popular software, with live GitHub data

GitHub stats refreshed every day

Immich

Self-hosted photo and video library with native mobile backup apps and local machine-learning search

Open source alternative to

Visit ImmichGitHubDocumentation

Main features

  • Android and iOS apps with automatic background backup of chosen albums
  • Timeline web app with albums, favorites, archive and map
  • Face detection and grouping into people
  • Smart search with CLIP models, plus metadata, object and text (OCR) search
  • Shared albums, public links and partner sharing
  • External libraries that index existing folders in place
  • RAW, HEIC, JPEG XL, Live Photos and Motion Photos
  • Memories, tags, folder view and photo stacks
  • Non-destructive crop, rotate and mirror
  • PIN-protected Locked Folder
  • OAuth login, API keys and a command-line uploader

What Immich does

Immich is the open source project that comes closest to the everyday experience of Google Photos or iCloud Photos. Its Android and iOS apps upload the photos and videos from albums you pick, in the foreground or in the background, to a server you run. The web app and the mobile apps then show the library as a scrollable timeline, with albums, favorites, an archive, a map, “on this day” memories, tags and a folder view.

Search goes beyond dates and places. A machine-learning service detects and groups faces, CLIP models let you search by description (“dog on a beach”), and text inside images can be found through OCR. Sharing covers shared albums, public links and partner sharing, where two accounts see each other’s timelines. Immich handles RAW, HEIC, JPEG XL, Live Photos and Motion Photos, and related shots can be grouped into stacks.

If you already keep photos in folders, an external library indexes them where they are, without moving or copying the files.

Privacy and data handling

Everything, including the machine-learning models, runs on your own hardware. The machine-learning container can also be moved to a more powerful machine or switched off. Immich does not change original files: edits are non-destructive, and metadata changes go to XMP sidecar files and the database. There is no end-to-end encryption, so anyone with administrative access to the server can see the photos. A Locked Folder protected by a PIN hides sensitive items inside the app, and Google Cast is opt-in and web-only.

Self-hosting Immich

The recommended install is Docker Compose with four containers: the server, the machine-learning service, Valkey and Immich’s own PostgreSQL image with the VectorChord extension. Kubernetes (Helm), Portainer and community packages for Unraid, TrueNAS, Synology and QNAP are also documented, and DigitalOcean and Vultr offer one-click marketplace images that those providers support.

It is heavier than most alternatives. The documentation asks for at least 6 GB of RAM (8 GB recommended) and 2 CPU cores (4 recommended). With only 4 GB, machine learning has to be disabled. The database should sit on a local SSD rather than a network share, and thumbnails and transcoded videos add roughly 10–20% to the size of the library.

Immich writes a database dump automatically every day and keeps 14 by default, but those dumps contain metadata only. The project stresses a 3-2-1 backup of both the photo files and the database. For moving from Google Photos, the docs point to the community tool immich-go rather than a built-in Takeout importer.

Hosted version

The Immich team does not run a hosted service. Development is funded by FUTO, which employs the core team, and by an optional product key sold per user or per server. The project states that no features sit behind that key.

Limitations

Immich needs more memory than any other app in this category. It has no end-to-end encryption, and metadata you add to external-library photos lives in Immich, so it is lost if the files move. Google Takeout imports depend on a community tool. The FAQ also notes that photos inside an album cannot yet be reordered by hand.

Who it suits

Immich suits households and individuals who want to stop paying for Google Photos or iCloud storage, have a home server or VPS with enough RAM, and want native apps that back up phones without extra tools. If you need encryption that keeps the server operator out, look at Ente Photos. If you only want to browse an existing archive on a small device, PhotoPrism or PiGallery2 are lighter options.

License details

AGPL-3.0. An optional paid product key supports development but unlocks no features. The Immich name and logo are trademarks.

Technical details

Self-hosting needs

  • PostgreSQL
  • Valkey or Redis

Built with

  • TypeScript
  • NestJS
  • SvelteKit
  • Flutter
  • Python

GitHub topics

  • backup-tool
  • flutter
  • google-photos
  • google-photos-alternative
  • javascript
  • mobile-app
  • nestjs
  • nodejs
  • photo-gallery
  • photos
  • photos-management
  • self-hosted
  • svelte
  • sveltekit

Reviewed by the OpenSourcePicks editors from the project's repository and documentation. Something out of date? Tell us.