Immich Hardware Requirements and Sizing: A Doc-Based Worksheet

Guide · Immich · Doc-based

Doc-based, not yet hands-on tested. This guide is written from the official documentation and has not yet been tested hands-on by us. Check the current official docs before running anything.

Pinned version: Immich v3.3.5 (confirmed in our factcheck report — https://github.com/immich-app/immich/releases/tag/v3.3.5). Last checked: 2026-10-24. Requirements are quoted from the v3.3.5 docs (requirements page; source at v3.3.5).

Transparency note (HomelabWise): This guide is based on official documentation only and was not hands-on tested by us. Nothing here was measured. Check the linked docs before you buy hardware.

The official minimums

ResourceMinimumRecommendedNotes from the docs
RAM6 GB8 GB"For systems with only 4GB of RAM, Immich can be run with machine learning features disabled."
CPU2 cores4 coresamd64 or arm64. Since v3, the machine-learning container on amd64 needs the x86-64-v2 microarchitecture level ("Most CPUs released since ~2012").
OS64-bit Linux recommended—Non-Linux OSes "tend to provide a poor Docker experience and are strongly discouraged".
FilesystemUnix-compatible (EXT4, ZFS, APFS…)—Must support user/group ownership and permissions. NTFS and exFAT/FAT32 won't work for the database.
Database diskLocal SSD—Postgres files are "typically between 1-3 GB". Use local SSD, "never a network share of any kind".

Software: Docker Engine with the Docker Compose plugin. The docker compose command is required, and the old docker-compose "is no longer supported by Immich".

Sizing worksheet (our arithmetic on the documented figures)

The ×1.2 factor below is HomelabWise's own rounding of the documented 10–20% range, not an official Immich formula.

The docs say thumbnails and transcoded video "can increase the size of the photo library by 10-20% on average", and that the database is typically 1–3 GB. From those two figures:

text
library storage needed ≈ <YOUR_LIBRARY_GB> × 1.2      # upper end of the 10–20% overhead
database storage (SSD) ≈ 3 GB                          # upper end of the typical 1–3 GB

Example: a 500 GB photo library → about 600 GB for the library, plus about 3 GB of SSD for Postgres. This is a rough estimate, not a measurement. Backups (3-2-1) need additional space on other disks. See our backup guide.

⚠️ Caution: these figures are averages from the docs. Libraries with lots of video may need more space. Leave free-space headroom, and don't put DB_DATA_LOCATION on a NAS share.

The docs say the last version supporting x86-64-v1 is v2.7.5, which "is no longer supported".

Virtual machines and containers

Windows note

The database can't sit on NTFS or on a WSL-mounted host directory (/mnt/...). The docs' workaround is a Docker volume:

env
DB_DATA_LOCATION=pgdata

Then add pgdata: under the top-level volumes: in docker-compose.yml (see the docs).

What hardware fits?

Sources

Related