Skip to content
HomeTechOps

Self-Hosting

Immich vs PhotoPrism vs Nextcloud Photos: How to Choose

Compare phone backup, existing-folder libraries, search, GPU integrations and restore needs in Immich, PhotoPrism and Nextcloud with Memories.

Start here: Choose the workflow you actually need

List your phone platforms, existing photo folders, household accounts, sharing needs, search requirements and whether Nextcloud already runs. Keep a separate copy of original photos while evaluating.

Do not move the only copy of a photo library into an evaluation instance.

Problem summary

Choose by the job: Immich for a dedicated phone-photo service, PhotoPrism for browsing an existing folder archive, or Nextcloud with Memories when photos belong in an existing files platform. Run a small upload and restore trial before migrating the library; no app guarantees immediate iOS background uploads.

Operator snapshotEvidence first
First proof

List your phone platforms, existing photo folders, household accounts, sharing needs, search requirements and whether Nextcloud already runs. Keep a separate copy of original photos while evaluating.

Screen to open

Mobile backup screen → upload one test album → open the server timeline and download an original

Expected signal

You have a short list of required jobs instead of a generic “best app” target.

Stop boundary

Do not move the only copy of a photo library into an evaluation instance.

Layer path

1Immich is a dedicated photo application; PhotoPrism indexes a folder-based library; Nextcloud is a files platform with gallery/search features supplied by additional apps. These starting points change administration and backup work.
2Phone background upload depends on the mobile operating system, permissions, network and app/server versions. We have not measured a universal iOS reliability winner.
3Search pipelines differ. Immich supports multiple machine-learning acceleration backends; PhotoPrism offers optional Ollama/OpenAI captions and labels in addition to built-in TensorFlow. An optional GPU-backed caption service is not proof of native face-recognition parity.
Runbook

Step-by-step runbook

Start here. Do each check in order, compare it to the expected result, and stop when the evidence explains the failure or the safe stop point applies.

1

Choose the workflow you actually need

Check: List your phone platforms, existing photo folders, household accounts, sharing needs, search requirements and whether Nextcloud already runs. Keep a separate copy of original photos while evaluating.

Expected result: You have a short list of required jobs instead of a generic “best app” target.

If not: If the goal is only phone backup, test that path first; if it is browsing an existing folder archive, test indexing and original-file access.

Safe stop: Do not move the only copy of a photo library into an evaluation instance.

2

Test phone uploads in foreground, then background

Check: Upload a small album with the app open on your usual Wi-Fi, verify the files on the server, then test the same workflow with the screen locked over several days. Check app/server compatibility and photo permissions.

Expected result: New originals arrive and can be downloaded; you observe background behavior on your own devices.

If not: iOS decides when background tasks run. An app supporting background upload is not a guarantee of an immediate or complete background backup. Do not use an unmeasured reliability ranking.

3

Test the search feature and its actual compute path

Check: Try representative faces and text queries. For Immich inspect its machine-learning service and supported acceleration backend. For PhotoPrism distinguish built-in TensorFlow from optional Ollama captions/labels. For Nextcloud distinguish Memories gallery from Recognize processing.

Expected result: The required feature works with acceptable latency and resource use on the chosen configuration.

If not: A GPU-supported integration does not imply identical face recognition or semantic search support. PhotoPrism can use a GPU-backed self-hosted Ollama service for captions/labels; do not call the whole application CPU-only.

4

Prove a complete backup and restore before migration

Check: Back up original files and the platform database/configuration. Restore a small library into a separate instance and check users, dates, albums, shares and downloaded originals. Use the Immich recovery guide for its database-plus-files restore.

Expected result: The restored application contains the intended library and original files, not just a healthy login screen.

If not: Originals remain valuable independently, but copying them alone does not recreate every application’s database state. PhotoPrism can re-index originals, while albums/metadata/settings may still require database and storage backups.

5

Pick using observed results and maintenance cost

Check: Compare your upload tests, search results, restore exercise, upgrades and resource use. Immich suits a dedicated phone-photo workflow; PhotoPrism suits an existing folder archive; Nextcloud plus Memories can fit an already-operated files platform.

Expected result: The choice follows your required workflow and evidence from the same trial library.

If not: If none meets a must-have requirement, retain the existing backup and extend the evaluation rather than promising that a feature badge will solve it.

Did this help you choose?

Your answer helps us improve this page.

No account or personal details. We store the page, answer, optional reason and day with a 90-day retention period. A random reference in this browser prevents repeat votes. Feedback privacy

Decision tree

Decision tree

If: Your priority is a dedicated phone-photo workflow

Then: Immich provides a focused mobile/server photo stack

Action: Trial foreground and background uploads plus a restore on your own phone/server before moving the library.

If: Your priority is browsing an existing folder archive

Then: PhotoPrism’s indexing workflow may fit that starting point

Action: Test indexing a copy and preserve originals plus database/storage backups; re-indexing is not full-state recovery.

If: Nextcloud already hosts your household files

Then: Memories can fit the existing files platform, with additional app/job administration

Action: Verify Memories/Recognize and the mobile upload path rather than assuming the file-sync client supplies every photo feature.

If: You want GPU-backed captions/labels in PhotoPrism

Then: An optional self-hosted Ollama service is a distinct compute path

Action: Test the integration and its privacy/resource requirements; do not infer native face-recognition parity.

Evidence

Evidence table

SymptomEvidence to collectLikely layerNext action
Your priority is a dedicated phone-photo workflowYour selected albums, upload completion and original-file download checksImmich provides a focused mobile/server photo stackTrial foreground and background uploads plus a restore on your own phone/server before moving the library.
Your priority is browsing an existing folder archiveOriginal folder layout, indexing results and restored metadataPhotoPrism’s indexing workflow may fit that starting pointTest indexing a copy and preserve originals plus database/storage backups; re-indexing is not full-state recovery.
Nextcloud already hosts your household filesInstalled app versions, completed background jobs and phone upload behaviorMemories can fit the existing files platform, with additional app/job administrationVerify Memories/Recognize and the mobile upload path rather than assuming the file-sync client supplies every photo feature.
You want GPU-backed captions/labels in PhotoPrismConfigured model engine, where inference runs and which feature uses itAn optional self-hosted Ollama service is a distinct compute pathTest the integration and its privacy/resource requirements; do not infer native face-recognition parity.
Reference

Commands and settings paths

Immich upload proof

Mobile backup screen → upload one test album → open the server timeline and download an original

Where: Phone and server web UI

Expected: Every selected test asset is present and its original can be downloaded

Failure means: Queued counts or a thumbnail do not establish successful original-file backup

Safe next step: Compare foreground and background separately and preserve your original copies.

PhotoPrism AI settings

PhotoPrism configuration → built-in TensorFlow and optional Ollama / OpenAI model engine

Where: PhotoPrism and the configured model service

Expected: You can identify which task uses which model and where it runs

Failure means: A remote API is not local inference; an Ollama GPU does not accelerate every PhotoPrism feature

Safe next step: Check privacy, service reachability and resource use before enabling an integration.

Nextcloud gallery boundaries

Nextcloud Apps → Memories and Recognize; Administration → background jobs

Where: Nextcloud admin UI

Expected: Required apps are installed and their jobs complete

Failure means: A working file-sync client alone does not prove gallery or recognition jobs work

Safe next step: Verify each required app and its current support/documentation independently.

Hardware boundary

Hardware and platform boundary

Change only when

  • Add compute only after the trial shows a required processing bottleneck.

Evidence that matters

  • Your phone upload behavior, original-file restore, feature-specific compute path, privacy and administrator time.

Evidence that does not matter

  • A headline stream count without a reproducible workload.

Avoid

  • Do not treat thumbnails as a backup, or assume all GPU integrations provide the same feature.

Related problems

Last reviewed

2026-09-27 · Reviewed by HomeTechOps. Reviewed 2026-09-27 against first-party project documentation. Removed unsupported iOS reliability rankings and the blanket claim that only Immich benefits from GPU resources. No comparative device benchmark or universal winner is claimed.

Sources/assumptions

  • First-party feature documentation reviewed 2026-09-27. No measured cross-platform upload reliability ranking or identical GPU feature support is assumed.

Source-backed checks

HomeTechOps turns official docs and conservative safety rules into a shorter runbook. These links are the source trail for the page direction.

Immich Docs: Hardware-Accelerated Machine LearningUsed for the Immich machine-learning acceleration paths (CUDA/OpenVINO/ARM-NN) and why the model store and PGData belong on a fast pool for smart-search and face-recognition performance.Immich docs: Backup and RestoreReviewed 2026-09-27 for database plus filesystem backups, the current recommended UI restore, folder integrity checks and version-specific procedures; CLI instructions before 2.5.0 differ.Immich: Mobile BackupForeground and background backup behavior; iOS controls background scheduling and default uploads use Wi-Fi.PhotoPrism: Features (official)Used for PhotoPrism's CPU-only built-in TensorFlow AI (label/face, not CLIP-semantic), broad RAW/HEIC/JPEG-XL and Live/Motion-photo support, native Google-Takeout JSON metadata, and Go single-binary + SQLite/MariaDB architecture.PhotoPrism: Using AI ModelsBuilt-in TensorFlow differs from optional Ollama captions/labels; self-hosted Ollama can benefit from a GPU.Nextcloud Memories (official app / GitHub)Used for Memories being a photo UI that runs inside Nextcloud (not standalone), relying on the Nextcloud mobile app for auto-upload and on Recognize/facerecognition for AI tagging.Nextcloud Recognize (official app / GitHub)Used for Recognize's CPU-only TensorFlow.js AI tagging (faces/objects/landmarks/video), ~4 GB RAM need, AVX-or-WASM fallback, and its official 'maintained with limited effort' (critical-fixes-only) status — the long-term risk in the Nextcloud-photos stack.

Planning a purchase?

We keep a source-backed, price-free comparison so you can buy once and right. No star ratings, every spec cited.

Synology vs UGREEN vs DIY NAS in 2026 →

Get the deal & firmware alerts

Home Stack Field Notes: NAS deals, firmware changes worth acting on, restore-test reminders, and new decision guides — plus the capacity & backup sizing cheatsheets from our calculators. Unsubscribe anytime.

Subscribe on beehiiv