Migrating from Icloud Photos to Immich
Was this helpful?
Help us improve our community guides.
Help us improve our community guides.
Backing Up Immich: Protect Your Photo Library — Step-by-step guide for your LocalNode.
Complete Immich Setup Guide — Step-by-step guide for your LocalNode.
Immich Face Recognition Setup — Step-by-step guide for your LocalNode.
⚠️ Advanced — requires using the command line
Moving away from the Apple ecosystem can be daunting. Apple makes it difficult to bulk download your original, high-quality iCloud photos with all metadata intact, but it can be done.
Unlike Google, Apple does not have a reliable "Takeout" service that provides properly formatted ZIP files of your entire library. The most reliable way to get thousands of photos out of iCloud in their original quality is by using a community command-line script called icloudpd (iCloud Photo Downloader).
Apple does have a privacy portal where you can request a copy of your data, but it is notoriously buggy and slow.
If this works, you can simply extract the files and upload them to Immich using the web dashboard or CLI tool. However, users frequently report broken downloads or missing metadata. The script method below is much safer.
You will run this tool from your PC or Mac. It connects directly to your iCloud account and downloads every photo exactly as it was shot.
pip install icloudpd/Downloads/iCloudBackup).icloudpd --directory /Downloads/iCloudBackup --username your_apple_id@email.com
The script will now methodically download every single photo and video in your iCloud account. If your internet connection drops, you can just run the command again; it is smart enough to skip files it already downloaded.
💡 Tip: If your library contains HEIC images (Apple's default photo format), Immich supports them natively. You do not need to convert them to JPEG before uploading.
Once you have a folder containing all your downloaded photos, you can push them to the LocalNode.
immich upload --server http://localnode.local:2283/api --key your_api_key --recursive /Downloads/iCloudBackup
Once the upload finishes, you can safely delete the local copy from your computer. The photos are now safely stored on your LocalNode, and you can cancel your monthly iCloud storage subscription!
Need help? Email hello@localnode.tech or visit localnode.tech/contact.