Mailbox Migration from Exchange Online to On-Prem Fails? Acommon issue is an ExchangeGUID mismatch. This occurs when the ExchangeGUID does not match between Exchange Online and on-premises Exchange, causing the move request to fail.
In this guide, we’ll walk through how to correctly synchronize the ExchangeGUID and ensure a smooth migration using PowerShell, based on Microsoft’s official guidance.
After you follow the Guide you will never have a Problem with Mailbox Migration from Exchange Online to Exchange OnPrem
Understanding the Issue
Exchange relies on the ExchangeGUID to identify mailboxes across different environments. If this value does not match in both Exchange Online and on-premises Exchange, the mailbox move request will fail.
Common Error Message
A typical error message you might encounter:
Error: MigrationPermanentException: Cannot find a recipient that has mailbox GUID ‘XXXXXX’ → Cannot find a recipient that has mailbox GUID ‘XXXXXX’.
To fix this, we need to retrieve the ExchangeGUID from Exchange Online and correctly set it in on-premises Exchange.
Step-by-Step PowerShell Fix
Step 1: Retrieve the ExchangeGUID from Exchange Online
First, connect to Exchange Online using PowerShell and get the ExchangeGUID of the mailbox:
Connect-ExchangeOnline -UserPrincipalName admin@yourdomain.com
Get-Mailbox user@yourdomain.com | Select-Object ExchangeGUID
Copy the ExchangeGUID, as we will need it in the next step.
Step 2: Assign the ExchangeGUID in On-Premises Exchange
Switch to the on-premises Exchange Management Shell and update the ExchangeGUID for the mailbox using Set-RemoteMailbox
:
Set-RemoteMailbox -Identity "user@yourdomain.com" -ExchangeGUID "PASTE-EXCHANGEGUID-HERE"
💡 Why use Set-RemoteMailbox
instead of modifying Active Directory directly?
Set-RemoteMailbox
ensures that the change is applied correctly at the Exchange level, avoiding manual AD modifications.- This method keeps the Exchange attributes properly synced between on-prem and Exchange Online.
Step 3: Start the Mailbox Move Request
Once the ExchangeGUID is correctly set, initiate the move request using the correct parameters for a cross-premises migration from Exchange Online back to on-prem (Use the Exchange Online Shell for that):
New-MoveRequest -Identity "Mailbox to Migrate" -Outbound -RemoteTargetDatabase "Your Targetbase" -RemoteHostName "Migration Endpoint" -TargetDeliveryDomain "Your Domain" -RemoteCredential (Get-Credential)
📌 Explanation of parameters:
-Identity
→ Specifies the mailbox to be moved.-Outbound
→ Required for Exchange Online → On-Premises mailbox moves.-RemoteHostName "hybrid.domain.com"
→ Specifies the Hybrid Migration Endpoint.-TargetDatabase "OnPremDatabase"
→ Defines the destination database on the on-premises Exchange Server.-RemoteCredential (Get-Credential)
→ Prompts for admin credentials for authentication.
Hint: How do you get the Remotehostname?
Once the ExchangeGUID is correctly set, initiate the move request using the correct parameters for a cross-premises migration from Exchange Online back to on-prem:
Get-MigrationEndpoint | fl Identity,Remoteserver
If you have more then one Result you have to select the „Hybrid Migration Endpoint“
Step 4: Monitor the Migration Status
Once the move request has been initiated, monitor its progress using:Step 4: Monitor the Migration Status
Once the move request has been initiated, monitor its progress using:
Get-MoveRequest | Get-MoveRequestStatistics

If the migration is successful, you should see a status of Completed.
Step 5: Remove the Move Request
After the migration has completed, clean up the move request with:
Remove-MoveRequest -Identity "user@yourdomain.com"
Conclusion
A mismatched ExchangeGUID is a common issue when moving mailboxes back to on-premises Exchange. By retrieving the correct ExchangeGUID from Exchange Online and setting it using Set-RemoteMailbox
, you ensure that the migration process proceeds without errors.
Using the correct PowerShell commands, as outlined in Microsoft’s official documentation, allows for a seamless migration experience without unnecessary troubleshooting.
📖 Reference Articles:
📌 Microsoft Press Store – Hybrid Exchange Mailbox Moves
📌 Microsoft Learn – Move Mailboxes Using PowerShell
Want to learn more about Exchange? Follow my Blog!