Move Google Photos into Immich

Takes an evening, most of it waiting

Your whole Google Photos library running on your own server, with the dates Google kept in sidecar files written into the photos themselves so Immich sorts them correctly.

Why bother

Immich gives you the parts of Google Photos worth having - search, albums, phone backup - without the account, the scanning or the subscription.

The bit people get wrong. Takeout puts the real capture date in a JSON file beside each photo rather than inside it. Import the photos without dealing with that and your entire library dates from the day you downloaded it.
1

Ask Google for your data

Free, and required by law - but it takes minutes to a few days depending on size, so start it now and come back. The full guide has the steps and the traps.

The Google guide ->

2

Open it in your browser

Drop the archive into Muletto. It is read on your own machine - nothing is uploaded - and you get a timeline, your pictures, your conversations and a map of where you have been. Open several exports together and they merge into one library.

Large archives are fine. They are read in pieces rather than loaded whole, so size is not the limit it usually is in a browser.

Open an export ->

3

Clean it up before you move it

This is the step worth not skipping, because it is far easier now than once the files are spread across a disk.

  • Duplicates across services. The same photo backed up to two places is one photo. Muletto finds byte-identical copies and near-copies - a burst, a crop, a re-save - and you choose what a tidied library keeps.
  • Dates that got lost. Exports routinely strip the capture date, so everything looks like it was taken the day you downloaded it. Muletto reads the real date back out and writes it into the file itself.
  • Places. Where the coordinates survived, they are written back in too, so whatever you import into can put things on a map.
4

Put it on Immich (self-hosted)

Muletto writes the tidied library straight out - into dated folders on a drive or a network share, or as a single archive. You choose the arrangement, and it writes an index of everything it wrote.

The destination guide covers the part that happens at the other end.

The Immich (self-hosted) guide ->

When it is done

Your whole Google Photos library running on your own server, with the dates Google kept in sidecar files written into the photos themselves so Immich sorts them correctly.

Keep the work file Muletto offers at the end. Export again next year and it recognises everything that carried over, so none of this has to be done twice.