Outlook to Gmail Migration
Migration Paths
Assess the source environment first:
| Source | Best Method | Scope |
|---|---|---|
| Office 365 / Exchange Online | Google Data Migration Service (Admin Console) | Org-wide, bulk |
| On-prem Exchange | GWMMO tool or IMAP migration | Per-user or bulk |
| PST files | GWMMO tool or Outlook IMAP bridge | Per-user |
| Outlook.com (personal) | IMAP migration in Admin Console | Per-user |
Pre-Migration Checklist
Run through this with the client before touching anything:
- Inventory — Number of users, total mailbox sizes, largest mailbox, shared mailboxes, distribution lists
- Google Workspace plan — Confirm active subscription, verify admin access (Super Admin required)
- Source admin access — Global Admin (O365) or Exchange Admin + app passwords
- DNS access — Whoever manages MX records (registrar, Cloudflare, etc.)
- Data scope — Email only? +Contacts? +Calendars? +Drive files?
- Cutover window — When to switch MX records (weekend recommended)
- Client communication — Draft email to users about the switch, new login instructions
- Retention — Keep source mailboxes active 30 days post-migration as safety net
Method 1: Google Data Migration Service (Recommended for O365)
Best for org-wide migrations from Exchange Online / Office 365.
Setup
- Google Admin Console → Data → Data import & export → Data Migration (New)
- Select Microsoft Office 365 as source
- Click Connect → sign in as Microsoft Global Admin → grant permissions
- Select what to migrate: Email, Contacts, Calendars
- Choose date range filter (optional — migrate only last N months to save time)
Execution
- Add users to migrate (CSV upload for bulk:
source_email,destination_email) - Start migration — Google handles delta sync automatically
- Monitor progress in Admin Console → shows per-user status
- Migration runs in background — users can keep using Outlook during this phase
CSV Format
source_email,destination_email
john@company.onmicrosoft.com,john@company.com
jane@company.onmicrosoft.com,jane@company.com
See references/csv-template.md for full template with notes.
Method 2: GWMMO Tool (PST / Outlook Profile)
Best for individual users or PST file imports.
- Download GWMMO: https://tools.google.com/dlpage/gsmmo/
- Install on machine with Outlook profile or PST access
- Sign in with Google Workspace account
- Select Outlook profile or browse to PST file
- Choose data: Email, Contacts, Calendars, Junk
- Start import — progress shown in tool
Limitations: Runs per-user, requires desktop access, Windows only.
Method 3: IMAP Bridge (Manual / Small Scale)
For personal Outlook.com accounts or when other methods fail:
- Enable IMAP in Gmail: Settings → Forwarding and POP/IMAP → Enable IMAP
- In Outlook desktop, add Gmail as IMAP account
- Drag-and-drop folders from Outlook mailbox to Gmail IMAP folders
- Slow but works for any IMAP-capable source
DNS / MX Cutover
After migration data is transferred:
- Verify domain in Google Admin Console (TXT record)
- Update MX records to Google:
Priority Host 1 ASPMX.L.GOOGLE.COM 5 ALT1.ASPMX.L.GOOGLE.COM 5 ALT2.ASPMX.L.GOOGLE.COM 10 ALT3.ASPMX.L.GOOGLE.COM 10 ALT4.ASPMX.L.GOOGLE.COM - Set SPF:
v=spf1 include:_spf.google.com ~all - Set DKIM: Admin Console → Apps → Gmail → Authenticate email → Generate DKIM
- Set DMARC:
v=DMARC1; p=none; rua=mailto:admin@domain.com(start withp=none, tighten later) - TTL: Lower TTL to 300 before cutover, restore to 3600 after 48h
See references/dns-records.md for copy-paste DNS templates.
Post-Migration Validation
Run these checks for every user:
- Email receiving on Gmail (send test from external)
- Historical emails present (spot-check oldest + newest)
- Folders/labels mapped correctly
- Contacts imported (check count)
- Calendar events present (check recurring events specifically)
- Shared mailboxes / groups recreated as Google Groups
- Signatures set up in Gmail
- Mobile devices re-configured (Gmail app or IMAP)
- Outlook desktop disconnected or reconfigured
See references/validation-checklist.md for printable per-user checklist.
Common Issues
| Issue | Fix |
|---|---|
| Migration stuck at 0% | Re-authorize source admin credentials |
| Missing folders | Google flattens deep nesting → becomes labels |
| Calendar recurring events broken | Re-create manually (known Google limitation with complex recurrences) |
| Contacts duplicated | Use Google Contacts merge duplicates tool |
| Large attachments missing | Items >25MB not migrated — export separately |
| Shared mailbox not migrating | Convert to Google Group or shared drive |
| MX propagation slow | Check TTL, use dig MX domain.com to verify |
Deliverables Template
For client-facing migration projects, prepare:
- Migration Plan — Timeline, phases, user batches, rollback plan
- User Communication — Email template announcing the switch
- Admin Runbook — Step-by-step for the migration operator
- Validation Report — Per-user sign-off checklist
See references/client-templates.md for ready-to-use templates.