Review – Self hosted photo management apps

There are only two options, in my opinion, that absolutely stand out right now. One is called PhotoPrism, and the other is called Immich.

As I mentioned before, I run a modest Chrome Box as a home server. I’ve always wanted to move away from iCloud because it becomes expensive rather quickly, but I couldn’t find a solution that also offered a great user experience.

I initially started with Immich, ran it once, and it crashed my server. I then migrated to PhotoPrism, which was more efficient, but the UI wasn’t great.

After a few days, I switched back to Immich. I hoped I could make it work by disabling many options, and I was right. After completely disabling machine learning and video transcoding, Immich seems to be okay, although it still consumes a significant amount of CPU and heats the server.

But as of now, there’s nothing else like it on the market, and this is the best we have. I hope they optimize the performance and eventually provide tips on disabling heavy features during installation, which would make the onboarding process easier. To be fair, Immich isn’t even at version 1.0 yet—it’s still considered beta software. For a beta, it’s extremely well-polished, so kudos for that.

My recommendation would be to go with Immich, but carefully go through the settings to ensure you’re disabling any unnecessary or resource-intensive features.

The rest of the article is a more formal analysis of the pros and cons.

PhotoPrism

Pros:

  • Does not disturb the external library, making it very easy to migrate and maintain.
  • Machine learning for face detection.

Cons:

  • No Android or iOS app.
  • The UI could be more polished.
  • User management UI is not included in the free version.

Immich

Pros:

  • Excellent Android and iOS apps.
  • Beautiful UI.
  • Machine learning for face detection, etc.
  • Implementation of configuration for custom use cases.
  • Great administration UI, including views on jobs running, active, waiting, etc.

Cons:

  • If you run a lighter home server and forget to disable machine learning and video transcoding features, it will push the CPU to 100% consistently. Some feature flag management at the setup level would be helpful to prevent this.