Migration Types — Choosing the Right One

MethodMailboxesDirectory SyncCoexistenceBest For
Cutover< 150Not requiredNone (single cutover)Small orgs with simple Exchange 2016+
StagedAnyRequired (AD Sync)PartialExchange 2003/2007 orgs (legacy)
Hybrid (Express)AnyRequired (Azure AD Connect)Full — weeks/monthsOrgs needing phased migration or long coexistence
IMAPAnyNot requiredNoneNon-Exchange source (Gmail, Zimbra)
FastTrack150+RequiredFull hybridLarge enterprise with Microsoft support contract

For most organisations migrating from Exchange 2016/2019 with more than 150 mailboxes, Full Hybrid is the right choice. It allows you to move mailboxes in waves, maintain calendar free/busy sharing between on-prem and cloud users during coexistence, and provides the cleanest rollback path.

Pre-Migration Checklist

Skipping the pre-migration checks is the primary reason migrations fail mid-execution. Spend a week here:

Run the Hybrid Configuration Wizard (HCW) on an Exchange server that has internet access and is not a DAG (Database Availability Group) node. Running it on a DAG member has caused configuration issues in multiple migrations I've managed.

Hybrid Configuration Wizard

The HCW is a guided tool that configures the trust between your on-prem Exchange organization and Exchange Online. Download it from Microsoft 365 Admin Center → Setup → Exchange Hybrid.

Key decisions during the HCW:

Running Mailbox Migration Batches

After HCW, initiate migration batches from the Exchange Admin Center (EAC) online → Migration → + Add, or PowerShell for scripted control.

PowerShell — Exchange Online
# Connect to Exchange Online
Connect-ExchangeOnline -UserPrincipalName admin@contoso.com

# Create a migration batch from a CSV
New-MigrationBatch -Name "Wave1-Pilot" `
    -SourceEndpoint (Get-MigrationEndpoint "HybridEndpoint") `
    -CSVData ([System.IO.File]::ReadAllBytes("C:\Migrations\wave1.csv")) `
    -AutoStart `
    -AutoComplete `
    -NotificationEmails admin@contoso.com

# Monitor batch progress
Get-MigrationUser -BatchId "Wave1-Pilot" | Select DisplayName, Status, PercentComplete, BytesTransferred

The CSV file format for hybrid migration is simple — one column: EmailAddress with one UPN per row.

Batch sizing recommendations

DNS Cutover — The Most Dangerous Step

The DNS cutover is the point of no return. Once you update MX, Autodiscover and Outlook Anywhere records to point to Exchange Online, email flows through Microsoft's cloud.

Reduce MX record TTL to 300 seconds (5 min) 48 hours before the cutover window. This minimises the time mail queues at the old destination after the change.
On cutover night, complete the migration batch for that wave (trigger Complete-MigrationBatch) before changing DNS — this ensures mailboxes are ready to receive email on Exchange Online.
Change the MX record to [tenant].mail.protection.outlook.com.
Update the Autodiscover CNAME to autodiscover.outlook.com. This redirects Outlook clients to the cloud.
Monitor MX propagation using nslookup -type=MX yourdomain.com 8.8.8.8. Wait for propagation before declaring success.
Verify email flow in both directions: send from external to migrated users, send from migrated users to remaining on-prem users (via connectors).

Coexistence Traps to Avoid

These are the issues that catch teams off-guard during the weeks when some users are on-prem and some are in the cloud:

During coexistence, do not decommission or shut down the on-premises Exchange server — even if all mailboxes have moved. Exchange Online still routes through the on-prem hybrid server for certain connectors and the HybridEndpoint must remain healthy. Decommission only after you've removed the hybrid configuration.

Decommissioning On-Premises Exchange

This is the step most projects delay for too long. Exchange servers sitting in a "hybrid" state with all mailboxes migrated are a security liability — they receive patches forever and require continued maintenance.

Verify zero mailboxes remain on-premises: Get-Mailbox -Server EXCH01 | Measure-Object should return 0.
Verify no active connector references the on-prem Exchange server in Exchange Online.
Run the HCW again and select Remove Hybrid Configuration to cleanly unlink the hybrid org relationship.
Update Azure AD Connect to use Exchange Online writeback only mode — you no longer need Exchange on-prem for attribute management.
Retire the Exchange server VMs / hardware. Keep the server in a snapshot state for 30 days as a rollback point, then delete.
A clean decommission — not just an all-mailboxes-migrated state — is what closes the Exchange migration project. Leave 6–8 weeks between the last mailbox migration and the decommission to allow calendar conflicts, permission issues, and forwarding rules to surface and be resolved.

BA

Badra Ali Diakite

Senior IT Consultant specialising in Microsoft 365, Intune, Zero Trust architecture and network infrastructure. 15+ years across 28+ countries in both military and enterprise environments.