Take Ownership of Your Data
Take Ownership of Your Data
Saturday evening. The server is running, Docker is humming, and Caddy is waiting patiently for apps to proxy.
Tonight’s job is different. Tonight you’re not configuring software — you’re taking back what’s yours.
Every company that stores your data is legally required to give it back to you on request. Google, Apple, Dropbox, Microsoft — they all provide data export tools. The exports aren’t always perfectly organized, and they can take hours to prepare, but the data is there and it’s yours.
Start these exports tonight. By the time Sunday morning rolls around and your apps are running, your data will be ready to import.
The Golden Rule of Migration
Never delete anything from Big Tech until you’ve confirmed your self-hosted copy is complete, working, and backed up.
This bears repeating. Do not cancel your Google One subscription the moment Immich starts up. Do not empty your Dropbox until Nextcloud has been running reliably for a few weeks. Migration is a process, not a single moment.
Run your self-hosted services in parallel with your existing cloud services for at least 30 days. By then you’ll have confidence in your setup, a backup routine in place, and a clear sense of what’s working.
Export from Google (Google Takeout)
Google Takeout is Google’s data export tool. It lets you download everything Google knows about you — which is quite a lot.
For this migration, we care about two things: Google Photos and Google Drive.
To start a Google Takeout export:
- Go to takeout.google.com while signed into your Google account
- Click “Deselect all” — you don’t want to download your entire Google history
- Scroll down and select only Google Photos and Google Drive
- Click Next, choose your export format (zip files), maximum file size (I recommend 10GB), and delivery method (download link via email)
- Click “Create export”
Google will prepare your export. Depending on how much data you have, this can take anywhere from a few minutes to several days. You’ll receive an email when it’s ready.
What you get: Your photos come as folders organized by year and month, with JSON metadata files alongside each image. Your Drive files come as a folder structure matching what’s in your Drive.
Note on Google Photos metadata: Google’s export includes metadata in separate JSON files rather than embedded in the images. Immich handles this well — it reads the JSON files during import to preserve your original photo dates and locations.
Export from iCloud Photos
Apple provides several ways to get your photos out of iCloud.
Option 1 — iCloud.com download: Go to icloud.com/photos on your computer, select all photos (Ctrl+A or Cmd+A), and download. This works well for smaller libraries but is tedious for large ones.
Option 2 — iCloud for Windows: If you’re on Windows, install iCloud for Windows and enable iCloud Photos. It will sync your entire library to a local folder on your computer.
Option 3 — Mac Photos app: On a Mac, open the Photos app, go to Preferences → iCloud, and select “Download Originals to this Mac.” Once everything is downloaded, you can export directly from the Photos app.
What you get: Your photos in their original format (HEIC for iPhone photos, or JPEG/PNG depending on your settings). Immich handles HEIC files natively.
Export from Dropbox
Getting your files out of Dropbox is straightforward because Dropbox already keeps a synced copy on your computer.
If you have the Dropbox desktop app installed, look for your Dropbox folder — usually at ~/Dropbox on Mac/Linux or C:\Users\You\Dropbox on Windows. That folder contains everything.
If you don’t have the desktop app, log into dropbox.com, select all your files, and download them as a zip.
What you get: A folder structure matching your Dropbox organization. This imports directly into Nextcloud.
Export from Microsoft OneDrive
Like Dropbox, OneDrive keeps a synced local copy if you have the desktop app installed. Find it at ~/OneDrive or through File Explorer.
Alternatively, log into onedrive.live.com, select all files, and download as a zip.
What to Do With Your Exports
Once your exports are downloaded, organize them on your main computer before importing to your server. The goal is a clean, well-organized folder structure that makes sense to you.
A simple starting structure:
/exports
/photos ← All photo exports from Google, iCloud, etc.
/documents ← Important documents for Paperless-NGX
/files ← Everything else going into Nextcloud
Don’t spend Saturday evening perfectly organizing everything — that can take forever. Get the broad strokes right and move on. You can reorganize inside Nextcloud and Immich after import.
Transfer Files to Your Server
Once your exports are organized on your main computer, transfer them to your server. The easiest way is with scp (secure copy) over SSH.
From your main computer:
scp -r ~/exports/photos howard@192.168.1.100:~/staging/photos
scp -r ~/exports/files howard@192.168.1.100:~/staging/files
scp -r ~/exports/documents howard@192.168.1.100:~/staging/documents
For large transfers, this may take a while. You can start it running and go to bed — it’ll finish on its own.
Alternatively, if you have an external hard drive, copy your exports to the drive, plug it into your server, and copy from there. On Ubuntu, external drives mount automatically under /media/ or /mnt/.
A Note on Photos Specifically
Photo migration deserves special attention because it’s usually the most emotionally significant data people move.
A few things to keep in mind:
Duplicates are common. If you’ve used multiple services over the years, you almost certainly have duplicates across exports. Immich has a built-in duplicate detection feature. Run it after import before you start deleting anything from Google.
Dates matter. Immich organizes photos by date taken, not date imported. Make sure you’re importing with metadata intact (Google Takeout exports do this automatically if you import the full export folder, JSON files and all).
Import in batches. If you have tens of thousands of photos, don’t try to import everything at once. Import a year or two at a time, verify it looks right, then continue.
Don’t rush the cutover. Keep Google Photos running alongside Immich for at least a month. Make sure your phone is backing up to Immich reliably before you stop it from backing up to Google.
Your Migration Checklist
- Google Takeout export requested (Photos + Drive)
- iCloud Photos downloaded (if applicable)
- Dropbox/OneDrive files copied
- Files organized into staging folders on your main computer
- Files transferred to server staging area
- Ready to import once apps are installed
The exports may not be ready tonight — that’s fine. Start the requests now, get some sleep, and Sunday morning we install the apps.
Cactus Commons Media