Blog/ Switching and migration

Moving iCloud Mail to Gmail or Google Workspace

Nafiul HasanNafiul Hasan· 15 min read
iCloud Mail to Gmail or Google Workspace migration — an IMAP transfer using an Apple Account app-specific password, with iCloud forwarding kept live

The short answer

Apple ships no bulk iCloud exporter, so you pull mail into Gmail over IMAP using either Google Workspace's Data Migration Service or imapsync — or drag folders across in Apple Mail. Generate an app-specific password at appleid.apple.com first, turn on iCloud forwarding to Gmail, and leave the @icloud.com address on your Apple Account.

How to move iCloud Mail to Gmail or Google Workspace over IMAP, with an app-specific password, forwarding, and without touching your Apple Account.

On this page
  1. 01What actually moves and what doesn't
  2. 02Pre-migration checklist
  3. 03The steps in order
  4. 04What breaks — and what to do about it
  5. 05Rollback plan
  6. 06Doing it without downtime
  7. 07Who should stop reading here
  8. 08Where AI Emaily fits after the move

Moving iCloud Mail to Gmail or Google Workspace differs from a Gmail-to-Fastmail or Outlook-to-Gmail move for one blunt reason: Apple ships no bulk exporter for iCloud Mail. No Takeout equivalent, no button on iCloud.com that spits out an .mbox, no first-party wizard. The mail has to leave the way it went in — one IMAP message at a time — using Google's own tools, an open-source utility like imapsync, or drag-and-drop in Apple Mail. Every path needs an app-specific password on your Apple Account, because iCloud will not accept your real Apple ID password over IMAP once two-factor is on (which it always is now).

The other trap is conflating the mailbox with the identity. Your @icloud.com address is bound to your Apple Account and to the App Store, iCloud backups and Find My that hang off it. Deleting the address changes the account, not just the inbox — and Apple has quietly restricted re-enabling iCloud Mail in some regions once it is turned off. This guide walks the migration in the order that keeps both intact. Verified against Apple's and Google's live support pages as of August 2026.

What actually moves and what doesn't#

With no first-party exporter, "what moves" means "what the tool at the other end can pull over IMAP". The three sensible options — Google Workspace's Data Migration Service, an open-source IMAP-to-IMAP transfer like imapsync, or drag-and-drop between two connected accounts in Apple Mail — differ in what they preserve and what they leave for you to reconstruct.

iCloud itemWhat happens on the Gmail side
Message body, headers and attachments up to 20 MBCopied 1:1. Original dates are preserved when the tool honours IMAP INTERNALDATE — DMS and imapsync both do; Apple Mail drag-and-drop generally does; Gmail's built-in Mail Fetcher does not (and can't connect to iCloud anyway, because iCloud has no POP endpoint).
Custom iCloud folders and subfoldersRecreated as Gmail labels. Hierarchy is preserved by DMS and imapsync; Apple Mail preserves it when you drag the parent folder in one go.
Mail Drop attachments (over ~20 MB)The link is copied intact. The underlying file still expires from Apple's servers 30 days after the original send, regardless of where you now read it.
iCloud Rules (the server-side ones set at icloud.com)Not migrated. Rebuild them under Gmail → Settings → Filters and Blocked Addresses.
Signatures and vacation responderNot migrated. Recreate under Gmail → Settings → General.
Contacts and calendarsThe mail import touches neither. Export contacts as vCard from icloud.com → Contacts → gear → Export vCard, calendars as .ics, then import into Google Contacts and Calendar.
Deleted Messages and Junk foldersLeft behind by default in every tool. Include them explicitly if you want them.
Hide My Email aliasesNot portable. They only work while iCloud+ is active on your Apple Account, and Gmail has no equivalent.
iCloud+ Custom DomainThe mail copies fine, but the domain itself is a separate migration — MX at the registrar, SPF, DKIM and DMARC all move to Google's values.

iCloud Mail is IMAP-only

Gmail's personal "Check mail from other accounts" feature is POP3, and iCloud offers no POP. So the Mail Fetcher path most Gmail migration guides recommend does not work here. On personal Gmail, use Apple Mail as the bridge or run imapsync locally. On Google Workspace, use the Data Migration Service, which speaks IMAP.

Pre-migration checklist#

Do these before touching a migration tool. Each is faster now than reconstructing from an incident later — and skipping the app-specific password step triggers an Apple Account security lock that only a call to Apple Support releases.

  • Confirm two-factor is on for both Apple Account (appleid.apple.com → Sign-In and Security) and Google (myaccount.google.com → Security). iCloud won't issue an app-specific password without 2FA, and Gmail's app passwords require it too.
  • Generate an app-specific password at appleid.apple.com → Sign-In and Security → App-Specific Passwords. Label it "Gmail Migration" and copy the 16-character password immediately — Apple shows it once.
  • Note iCloud's IMAP settings: imap.mail.me.com, port 993, SSL required. Username is your full @icloud.com address on most tools; a few older ones want only the local part.
  • Check the target has room. Personal Gmail is 15 GB shared with Drive and Photos; Workspace tiers vary. Don't import an 8 GB iCloud mailbox into a Gmail already at 12 GB.
  • Decide whether the @icloud.com address is staying (it should) and whether Gmail becomes your announced primary. Both answers shape the address-update pass in step 6.
  • If you use iCloud+ Custom Domain, screenshot the DNS records at your registrar and note every alias on the domain — this is a separate migration and must not run in parallel with the mailbox one.
  • Turn off any iCloud Rules that auto-delete, auto-forward or auto-file mail — they interact badly with an in-flight migration and can strand messages.
  • Confirm your Apple ID recovery contacts and Trusted Phone Number are current before generating any app-specific passwords. If Apple locks the account you will need them.

The steps in order#

Steps 1, 5, 6 and 7 apply on every path. Steps 2, 3 and 4 are the three real migration options — pick one based on whether you have Google Workspace, whether the mailbox is small enough for Apple Mail, or whether you want a proper log.

  1. 1

    Generate an app-specific password on your Apple Account

    Sign in to appleid.apple.com → Sign-In and Security → App-Specific Passwords → Generate → label it "Gmail Migration". Copy the 16-character password on the spot; Apple shows it once. This is what the migration tool logs into iCloud IMAP with. Do not use your real Apple ID password — it will fail, and repeated attempts trigger a lock that takes an Apple Support unlock to release.

  2. 2

    Path A — Google Workspace Data Migration Service (Workspace tenants only)

    In admin.google.com → Data → Data Migration → Set Data Migration Up → source "Migrate from IMAP". Server: imap.mail.me.com, port 993, Standard IMAP with SSL. Add the user, paste the app-specific password, choose folder scope and date range, and start. DMS is Google's own tool for this move, preserves dates and folder structure, and handles thousands of messages per hour — the honest recommendation for anything above a few gigabytes on Workspace.

  3. 3

    Path B — Apple Mail drag-and-drop (best for personal Gmail under a few thousand messages)

    In Apple Mail, add both accounts via Mail → Accounts → Add Account (iCloud is native; Gmail is Google over OAuth). Once both appear in the sidebar, drag each iCloud mailbox onto the Gmail account. Apple Mail uploads over IMAP in the background, preserving dates. Progress reporting is minimal, so for 20,000 messages plan an overnight run — and use `caffeinate -di` in Terminal to keep the Mac awake.

  4. 4

    Path C — imapsync (personal Gmail, large mailbox, or when you want a log)

    imapsync is an open-source command-line tool that copies mail between any two IMAP servers. Point it at imap.mail.me.com (Apple ID + app-specific password) on one side and imap.gmail.com (with a Gmail app password from myaccount.google.com → Security → App Passwords) on the other. It preserves dates, folder structure, flags and INTERNALDATE, and writes a per-message log you can grep to prove exactly what moved. Reach for it when a mailbox is above ~5 GB.

  5. 5

    Turn on iCloud forwarding to Gmail

    At icloud.com → Mail → Settings (gear) → Preferences → General, tick "Forward my email to" and enter your Gmail address. Do NOT tick "Delete messages after forwarding" — the iCloud copy is your safety net. This is separate from the one-time import and covers everything arriving after the migration.

  6. 6

    Update the addresses that matter

    Work through the list from the pre-flight — bank, brokerage, healthcare, employer, government portals, password manager, 2FA-critical services. Switch primary email to Gmail at each. Everything else catches up through forwarding over the following months.

  7. 7

    Leave the @icloud.com address on your Apple Account

    The correct end state is not "delete iCloud Mail". It is iCloud Mail on, forwarding to Gmail, primary correspondence via Gmail. Deleting the address (Settings → [name] → iCloud → iCloud Mail → off) removes it as a receiving endpoint on your Apple Account, and depending on region and Apple policy you may not be able to re-enable it. Your Apple ID stays intact whether or not you read mail there.

Never paste your real Apple ID password into a migration tool

Third-party IMAP clients should only ever see the 16-character app-specific password from appleid.apple.com. A tool that asks for your real Apple ID password is either miswritten or a phishing surface — Apple's own guidance is IMAP access is app-specific-password only. Revoking the password immediately cuts the tool off from iCloud, with no impact on other Apple services.

What breaks — and what to do about it#

Every iCloud-to-Gmail migration hits some subset of the items below. None are showstoppers, but each surprises people who assumed the move would be one click — which for iCloud it structurally cannot be.

What breaksWhyWhat to do
Message dates all jump to the migration dateThe tool didn't preserve IMAP INTERNALDATE — often because it treats Gmail's API as append-only.Switch tools. DMS and imapsync both preserve dates; Apple Mail drag usually does. If a run landed with wrong dates, delete those Gmail labels and re-import.
Custom iCloud Rules stop firingRules live on Apple's server; they aren't part of the mail objects and don't transfer.Rebuild under Gmail → Settings → Filters and Blocked Addresses. Gmail's search operators cover most iCloud rule conditions with slightly different syntax.
Mail Drop attachments don't openThe link is preserved but Apple expires the underlying file 30 days after the original send.For anything critical, ask the sender to resend. Going forward, avoid Mail Drop from iCloud when your archive lives elsewhere.
Contacts and calendars didn't come acrossThe mail migration touches only mail — CardDAV and CalDAV are separate protocols.Export contacts as vCard from icloud.com → Contacts and calendars as .ics, then import into Google Contacts and Calendar. Do both once.
Hide My Email aliases stop forwardingHide My Email is an iCloud+ feature — it only works while iCloud+ is active on the Apple Account.Keep iCloud+ if you rely on it. Gmail has no equivalent that reuses those aliases; you'd have to switch to SimpleLogin or Fastmail Masked Email.
iCloud+ Custom Domain now has mixed deliveryYou migrated the mail but not the domain. MX still points to Apple; incoming mail lands at iCloud+ and forwards downstream.Either keep it deliberately (Apple hosts, Gmail reads via forwarding) or migrate the domain — new MX at Google, SPF and DKIM updated, DMARC monitored for a fortnight before stopping the forward.
2FA codes still going to the iCloud addressSome services only text or email codes to the address currently on file.Update the address at every 2FA-critical service while iCloud is still receiving — before the announced-primary change, not after.
Attachments over 25 MB refused by GmailGmail rejects messages over 25 MB regardless of import path.Nothing to do at import time. Store those messages separately (an .eml export from Apple Mail plus local backup) and reference them from the archive.

Rollback plan#

Every step above is reversible until either iCloud Mail is turned off on the Apple Account or the Google account is deleted. Here's how to back out cleanly at each stage.

  1. 1

    If the import corrupts folder structure in Gmail

    In Gmail → Labels, delete the imported labels — this removes the copies without touching iCloud. Restart with narrower folder selections or a different tool. The iCloud source is unchanged throughout.

  2. 2

    If you decide against Gmail entirely

    Stop the migration tool, revoke the app-specific password at appleid.apple.com → Sign-In and Security → App-Specific Passwords (this immediately blocks reconnecting), turn iCloud forwarding off at icloud.com, and go back to reading at iCloud. Nothing was moved out — only copied — so the mailbox is exactly as it was.

  3. 3

    If mail seems to be missing

    Search iCloud.com Mail first — the import copies, it does not delete on the iCloud side. If the tool was imapsync, its per-message log tells you exactly what did and didn't move. For Apple Mail drag, check Mail → Window → Activity for pending or failed uploads.

  4. 4

    If Apple locked the account during setup

    Repeated wrong-password attempts against iCloud IMAP trigger a security lock. Follow the recovery flow at iforgot.apple.com using your trusted device or Trusted Phone Number. Do not retry with the same wrong password — the lock hardens.

Do not turn off iCloud Mail to "clean up"

The iCloud Mail toggle is not a cosmetic switch. Turning it off deletes @icloud.com as a receiving endpoint, and Apple has restricted re-enabling in some regions since 2024. Keep it on and let the address forward — the correct end state is dormant, not deleted.

Doing it without downtime#

There is no DNS cutover for an @icloud.com address — the domain is Apple's, and you cannot repoint it. Zero-downtime means: run the one-time import, turn on iCloud → Gmail forwarding the same day, and update primary-address entries at critical services over the following weeks. Nothing drops in the gap because iCloud keeps receiving and Gmail is downstream.

The step people get wrong is announcing the new address before it is fully receiving. If a bank writes to the new Gmail before you've proved it accepts mail from that bank's DMARC-strict domain, the notification silently bounces and you don't find out until the next statement. Send yourself a test from each critical service, confirm it lands in Inbox rather than Spam, and only then switch primary there.

Migration bridge concept — iCloud Mail on the left, forwarding to Gmail on the right, with the @icloud.com address kept live on the Apple Account so nothing falls through the gap during the switch
Keep iCloud receiving and forwarding to Gmail. The @icloud.com address stays live on the Apple Account; Gmail becomes where you read and reply.

Who should stop reading here#

If your only real requirement is unified reading and Apple Mail already works for you, the honest answer is you don't have to migrate. Add both accounts to Apple Mail, use a smart mailbox for the combined view, and skip everything above. And on a Google Workspace tenant with more than a few gigabytes of iCloud archive, Google's own Data Migration Service beats any third-party tool including anything we could ship — it's the tool Google built for this move, and we don't try to compete with it.

Where AI Emaily fits after the move#

Migrating iCloud to Gmail moves where the mail lives. It does not triage the mail, and a Gmail with fifteen years of iCloud archive dumped into it is not obviously easier to work through than the iCloud one was. That's the layer above the migration — a client that reads whichever mailbox you land on and does the sorting, drafting and follow-up chasing you were going to do by hand.

We build AI Emaily. It connects to Gmail, Google Workspace and iCloud over IMAP, so it works with the old mailbox, the new one, or both during the switch. Approve-before-send is the default; every action has undo and a full audit trail; nothing gets sent under your name without a checkpoint you approved. Packaging is a 7-day free trial on Pro or Autopilot (card taken, $0 charged if you cancel before day seven) — no permanent free tier. The homepage at aiemaily.com ("/") covers what the agent does, and aiemaily.com/pricing has the tier structure and current numbers.

Frequently asked

Nafiul Hasan

Written by

Nafiul Hasan

Nafiul Hasan is an entrepreneur and AI automation system builder with 10+ years of experience turning messy, manual workflows into reliable automated systems. He designs and ships AI enterprise solutions end-to-end — the agent logic, the data plumbing, and the product people actually use — and founded AI Emaily to give busy professionals their attention back. He writes here from the builder's seat: what works, what breaks, and how to put AI to work without giving up control.

EntrepreneurAI Automation System BuilderAI EnthusiastBuilds AI Enterprise Solutions10+ years experience
More from Nafiul
Ready when you are

Add AI triage after the migration

Once your mail lives at Gmail or Google Workspace, connect it to AI Emaily and let the agent triage, draft in your Personal Context brain's voice, and close routine loops — approve-before-send by default. 7-day free trial on Pro or Autopilot, no permanent free tier.

  • 7-day free trial
  • Cancel anytime
  • Every provider