Skip to main content
back to docs

Migrate off Big Tech

Honest, step-by-step guides to move your data from Google, Apple, and Microsoft onto your own private Pod. We don't dramatize how easy it is — some migrations take an afternoon. None take a weekend.

8 guidesNo accounts requiredWorks offline (LAN)

Photos — Google Photos / iCloud → Immich

Google Photos / iCloud PhotosImmich (photos.pod.local)

Time
1–6 hours (mostly waiting on download)
Difficulty
Easy
  1. Go to https://takeout.google.com (or icloud.com/photos for Apple).
  2. Select only the photo service. For Google Takeout, set delivery to a single archive and choose .zip with the largest size you can handle.
  3. Wait for the email saying your archive is ready (Google can take hours, sometimes a day).
  4. Download all .zip files to your computer. Extract them into a single folder.
  5. Open Immich at http://photos.pod.local and sign in.
  6. Drag the extracted folder onto the Immich library — uploads run in the background.
  7. After upload, Immich auto-organizes by date and runs face recognition (may take a few hours on first run).

Heads up

  • If your library is huge (>200GB), use the Immich CLI on a laptop on the same network — it's 10–100× faster than browser upload.
  • Live Photos and slow-mo videos transfer correctly. Memories/Stories from Google do not — Immich generates its own.

Files — Google Drive / OneDrive / Dropbox → Nextcloud

Google Drive / OneDrive / DropboxNextcloud (files.pod.local)

Time
30 min – 4 hours
Difficulty
Easy
  1. Open the source service in your browser, select the folders you want to migrate, and download as a single .zip (or use the desktop sync app to pull everything to a local folder).
  2. Extract the .zip to a clean folder on your computer.
  3. Install the Nextcloud Desktop client from https://nextcloud.com/install/#install-clients.
  4. Sign in to your pod (server: http://files.pod.local — username + password from the welcome page).
  5. When asked which folder to sync, point at the extracted folder. Nextcloud will upload it in the background and keep it in sync going forward.
  6. Once sync completes, install the Nextcloud Files app on your phone and disable the iCloud Drive / Google Drive / OneDrive apps so the OS stops fighting you.

Heads up

  • Google Workspace files (Docs/Sheets/Slides) are converted to .docx/.xlsx/.pptx during Takeout. Nextcloud Office (Collabora) opens these natively.
  • Shared folders don't transfer — re-share inside Nextcloud after migration.

Contacts — Google / iCloud / Outlook → Nextcloud (CardDAV)

Google Contacts / iCloud Contacts / Outlook ContactsNextcloud Contacts (CardDAV)

Time
10 minutes
Difficulty
Easy
  1. Google: https://contacts.google.com → side menu → Export → vCard (.vcf).
  2. iCloud: https://icloud.com/contacts → gear icon → Select All → gear → Export vCard.
  3. Outlook: People → Manage → Export contacts → CSV. (Use https://www.csv-to-vcf.com to convert to .vcf if needed — pick a tool you trust or do it offline.)
  4. Open Nextcloud at http://files.pod.local → Apps → Contacts → Settings (gear, bottom-left) → Import contacts → upload the .vcf.
  5. Open your phone's Settings → Accounts → Add → CardDAV. Server: http://files.pod.local, your Pod username + app password (Nextcloud → Personal → Security → Generate app password).
  6. Verify duplicates and disable the old Google/iCloud account once you're confident the new one is complete.

Calendar — Google / iCloud → Nextcloud (CalDAV)

Google Calendar / iCloud CalendarNextcloud Calendar (CalDAV)

Time
10 minutes
Difficulty
Easy
  1. Google: https://calendar.google.com/calendar/u/0/r/settings/export → downloads a .zip of .ics files.
  2. iCloud: https://icloud.com/calendar → Share calendar → make public → copy webcal:// URL → paste in browser to download .ics.
  3. Open Nextcloud → Apps → Calendar → ‘+ New calendar' → Import from file → select your .ics.
  4. On your phone: Settings → Accounts → Add → CalDAV. Server: http://files.pod.local, Pod username + app password.
  5. Once events look right on the new calendar, delete or hide the Google/iCloud calendar to avoid double-booking.

Heads up

  • Recurring events with exceptions (the dreaded 'every Tuesday except July 4') sometimes lose their exceptions. Spot-check before you delete the source.

Passwords — LastPass / 1Password / Bitwarden → Vaultwarden

LastPass / 1Password / BitwardenVaultwarden (passwords.pod.local)

Time
15 minutes
Difficulty
Easy
  1. LastPass: Account Settings → Advanced → Export → CSV.
  2. 1Password: File → Export → All items → CSV (1Password 7 desktop only — 8 doesn't expose CSV; export to 1pux instead).
  3. Bitwarden: Tools → Export vault → CSV.
  4. Open Vaultwarden at http://passwords.pod.local and sign in.
  5. Tools → Import data → choose the matching format → upload.
  6. Verify a few logins work, then delete the .csv from your computer (it contains every password in plaintext).
  7. Install the Bitwarden mobile app — Vaultwarden speaks the Bitwarden protocol. Server URL: http://passwords.pod.local.

Heads up

  • TOTP codes don't always export. For accounts where TOTP is critical (banking), re-enroll inside Vaultwarden using the QR code from the bank's site.

Email — Gmail → Proton Mail (Easy Switch)

Gmail / Outlook.comProton Mail

Time
Few minutes to start, hours to complete
Difficulty
Easy
  1. Sign up for Proton Mail using our referral: https://pr.tn/ref/KAY04JCM (free tier works for most people).
  2. Inside Proton, open Settings → Easy Switch.
  3. Click ‘Import from Gmail' (or ‘from Outlook') and follow the OAuth prompt.
  4. Choose what to import: mail, calendar, contacts. The migration runs in the background — check back in a few hours.
  5. Once imported, set up Gmail auto-forwarding to your Proton address: Gmail → Settings → Forwarding → add your @proton.me address.
  6. Update high-priority accounts (bank, Stripe, government) to your Proton address one at a time. Don't try to do them all in one weekend.

Heads up

  • Proton's free plan is 1GB. If your Gmail is huge, the migration will fill it. Upgrade to Proton Mail Plus before importing.

Bookmarks — Chrome / Safari / Firefox → Pod (any browser)

Chrome / Safari / Firefox / EdgeAnything that imports bookmarks HTML

Time
5 minutes
Difficulty
Easy
  1. Chrome: chrome://bookmarks → ⋮ menu → Export bookmarks → bookmarks.html.
  2. Safari: File → Export → Bookmarks…
  3. Firefox: Bookmarks → Manage Bookmarks → Import and Backup → Export Bookmarks to HTML.
  4. On your new browser (Brave, LibreWolf, Firefox, etc.), reverse the import path and load the .html.
  5. Optional: store the bookmarks.html file in Nextcloud so any device can re-import without going back to Big Tech.

Music — Spotify / Apple Music → Navidrome

Spotify / Apple Music / YouTube MusicNavidrome (music.pod.local) — Domus and up

Time
Variable (depends on library size + source)
Difficulty
Medium
  1. Streaming services don't let you export the music files (DRM). You'll need MP3/FLAC/M4A files from purchases or rips.
  2. If you have a Plex / iTunes / Apple Music DRM-free library, copy the folder to your Pod via Nextcloud or scp.
  3. Open Navidrome at http://music.pod.local and point its library path at the uploaded folder.
  4. For playlists: use a tool like Spotify Exporty or TuneMyMusic to export your Spotify/Apple Music playlists as text/CSV, then re-create them in Navidrome (which understands m3u files).
  5. Install Substreamer / play:Sub / DSub (Subsonic-compatible apps) on your phone. Server: http://music.pod.local, your Pod username + password.

Heads up

  • If you don't own any music files, this isn't a migration — it's a switch. Buy from Bandcamp / Qobuz / 7digital, or rip CDs you already own.

Need a migration we don't cover?

Email support@infinixism.com with what you're moving from. We'll write the guide and add it here.