This article will guide you through the steps for migrating mailboxes from Hosted and On-Premises Exchange servers (versions 2007 and later) to Microsoft 365.
We recommend reading through the complete guide before starting the migration to understand the process, timeline, and prerequisites. You will see notes called out throughout the guide; pay attention to these, as they may provide information to avoid migration failure.
This migration guide contains the necessary steps to perform the actual migration, but there are many steps to preparing for migration. If this is your first time performing a migration, we have created a Migration Planning & Strategy Guide to walk you through planning, set-up, and general migration best practices.
MigrationWiz
MigrationWiz is a migration tool, not a syncing tool. If changes are made at the source after migration, they will not sync to the destination, nor will changes made at the destination sync to the source. We do not have “live” monitoring of changes (as with a sync agent) and we cannot handle scenarios such as conflict resolution without user interaction.
The maximum individual file size for migration through MigrationWiz varies by migration type and environment, but may never exceed 60GB.
Prerequisites
It is important to highlight and meet the following prerequisites for a smooth migration project.
Licensing
We recommend that you purchase User Migration Bundle licenses for this migration scenario. User Migration Bundle licenses allow the performance of multiple migrations with a single license. For questions on licensing, visit MigrationWiz Licenses.
Important
If there are no User Migration Bundle licenses currently available to be assigned and your role in the workgroup is Manager or higher, the form that appears provides all the necessary information and will walk you through the steps of purchasing User Migration Bundle licenses.
To use your license by following the next steps:
- Purchase Licenses.
- Create a Customer.
- Apply Licenses.
- Review Considerations.
Purchase licenses by following the steps below:
- Sign in to your BitTitan account.
- In the top navigation bar, click Purchase.
- Click the Select button and choose User Migration Bundle licenses.
- Enter the number of licenses you want to purchase. Click Buy Now.
- Enter a Billing address if applicable.
- Click Next.
- Review the Order Summary and enter a payment method.
- Click Place Your Order.
Create Customer on MSPComplete by performing these steps:
- Click the Add button in the top navigation bar
- Click the Add Customer button on the All Customers page
- Select the appropriate workgroup in the left navigation pane and click All Customers.
- Click Add Customer.
- Enter the new customer’s information in the Add Customer form. Primary Email Domain and Company Name are required. The rest are optional.
- Click Save.
- Repeat steps 1 through 4 for each customer you want to add.
Perform these steps on MSPComplete:
- Select the correct workgroup on the top of the left navigation pane.
Important
This is the workgroup which the customer and migration projects were created under. Your account must be part of the workgroup if the project was not created under your account. - Click Customers on the left navigation pane.
- Click the customer that employs the user to whom you want to use the User Migration Bundle license.
- Click the Users tab at the top of the page.
- Apply the license to the users by checking the box to the left of their emails.
- Click the Apply User Migration Bundle License button at the top of the page.
Tip
We recommend adding users to the Customer page with the vanity domain. Then apply the User Migration Bundle Licenses, before editing to show the .onmicrosoft domain, if the .onmicrosoft domain will be used for the migration. - Click Confirm if at least one unassigned User Migration Bundle license is available for each selected user.
Important
If there are no User Migration Bundle licenses currently available to be assigned and your role in the workgroup is Manager or higher, the form that appears provides all the necessary information and will walk you through the steps of purchasing User Migration Bundle licenses.
Licenses are released once payment has been received:
- Licenses are available immediately upon payment if you purchase via credit card.
- If you purchase via wire transfer (100+ licenses), the licenses will be available once payment is received and accepted.
- We do not accept purchase orders because of processing overhead.
In both cases, you will be notified by email that payment has been accepted and licenses are available in your account upon notification.
For more information on licensing, including coupon redemption and other licensing types, see our Licensing FAQ.
Limitations
- We are not able to support migrations with two-factor or multifactor authentication.
- App password usage, MFA/2FA, and ADFS are not supported for the migration admin account/service account being used by this endpoint.
- Exchange Web Services (EWS) must be enabled and accessible for the source and destination.
Migrated Items
Please click the bars below to check the migrated and non-migrated items. We are constantly working to create a better migration experience for you so these items may change over time.
- Inbox
- Folders
- Contacts
- Calendars
- Tasks
- Journals
- Notes
- BCC Recipients
- Post (when the destination is Exchange or Microsoft 365)
- Server-Side Rules
- Client-Side Rules (Exchange 2013 and 2016 only)
- Automatic Replies (Out of Office Messages for Exchange 2013 and 2016 only)
- Personal Folder and Calendar Permissions (Exchange 2013 and 2016 only)
- Email templates
- Email flags (if the destination is G Suite)
- Safe Sender/Block Lists
- Mail Settings
- Standalone documents stored in Mailbox Folders or Public Folders (Example: IPM.Document item types)
- System Public Folders
- StickyNote folders
- Public Folder Permissions
For additional features and limitations please visit MigrationWiz: Migrated and Not Migrated Items.
Exchange Questions and Troubleshooting
Our Exchange Mailbox FAQ, Exchange Migration Setup and Planning, and Exchange Mailbox Migration Troubleshooting guides contain several common questions and concerns, along with more information, guidance, and steps to resolve issues such as throttling.
DeploymentPro & DMA
BitTitan DeploymentPro is a module of Device Management and the Device Management Agent (DMA) that remotely configures Outlook email profiles after you perform a mailbox migration to Microsoft 365. Exchange environments can have complex AutoDiscover settings, along with UPN and SMTP address mismatches, which can require troubleshooting and reconfiguration before DeploymentPro can be made to work against such environments. We do recommend using DeploymentPro in this scenario.
DeploymentPro is included with the User Migration Bundle license. DeploymentPro cannot be purchased as a standalone service license, and it cannot be added to the single-use mailbox migration license. If you wish to remotely configure Outlook mail profiles using DeploymentPro after a migration, purchase the User Migration Bundle license.
DeploymentPro currently can only officially be used with migration projects where Microsoft 365 is the Destination. If using DeploymentPro with Exchange (either On-Premises or Hosted) as a Destination, then a Proof of Concept should be run first. The DeploymentPro Guide and DeploymentPro FAQ will guide you through the proof of concept, as well as any other DeploymentPro questions, while the DMA Installation and Introduction to DMA articles provide resources and guidance on DMA.
Prepare the Source Environment
You must complete the following steps to prepare your Source environment for the migration.
- Create and configure permissions
- Confirm access
- Test mailbox access
- Disable throttling limits
Detailed instructions can be found in the accordions below.
If you are migrating from a Hosted Exchange provider, ask the provider to create an account for migration purposes (e.g., named MigrationWiz) and grant full access rights to each mailbox, by running this PowerShell script against the account called MigrationWiz:
Get-Mailbox -ResultSize Unlimited | Add-MailboxPermission -AccessRights FullAccess -User MigrationWiz
- Some Hosted Exchange providers allow this access to be granted via their web portal. In this case, you could log in to each mailbox via their portal and then grant the migration account (e.g., MigrationWiz) to have read/write access to each mailbox. This is laborious and time-consuming, so the Hosted Exchange provider should run the PowerShell script above, particularly if you have a large number of users.
- Some Hosted Exchange Providers will not grant this access. If that is the case, then you can request credentials from your end users during the migration. The exact steps for this are provided under Running a Migration without Administrative Access in the KB article MigrationWiz - Credentials & Authentication
If this is a very large project, the best results will be achieved by setting the project to use impersonation at the Source.
In the case of Hosted and Exchange 2007+ On-Premise, MigrationWiz uses delegation by default to log in to individual user mailboxes using administrative credentials specified on the connector. However, MigrationWiz also supports another elevated access mode called impersonation.
Benefits
Using impersonation, it is possible to stop sharing the total quota and connection limits associated with a single administrative account. Instead, the throttling quota of each user is used to log in to each user's mailbox.
Using impersonation means:
- Eliminating most "Connection did not succeed" errors.
- Allowing migration of more mailboxes concurrently.
- Reducing the impact of throttling and connection limit.
To enable the admin account to impersonate users, run this PowerShell command:
New-ManagementRoleAssignment -Role ApplicationImpersonation -User <admin_user_name>
More information about this PowerShell command can be found here.
The below sections will explain how you can locate your OWA URL and test EWS access for your environment. This information will ensure that your migration project is configured properly and will help to prevent failures when performing the migration.
Find your OWA URL
- When setting up Exchange as an endpoint, enter either the OWA URL or the EWS URL.
- There are some instances in which the login page for OWA is different than the actual OWA URL for the mailbox, as you may get redirected to a different server after logging in. To determine the true OWA URL, perform the following:
- Close all browser instances. This ensures that all session state browser cache is flushed.
- Open a new browser instance.
- Navigate to your OWA login page.
- Log in to OWA.
- Once you see the inbox, copy the URL from the navigation bar of the browser. This is the exact OWA URL that should be entered into MigrationWiz.
- Example URLs for OWA:
- https://www.mining88.com
- https://www.mining88.com/owa
- https://www.mining88.com:443
- https://50.249.230.12/owa
Another method for determining the OWA URL is to use the "whatismyipaddress" website to determine the company's public IP address, and then add /owa to the end of it.
Now that your OWA URL has been determined, we need to ensure that the username and password combination works. The username and password that you use to log in to OWA is the same username and password that you should be entering into MigrationWiz. To determine if your username and password are working, perform the following:
- Close all browser instances. This ensures that all session state browser cache is flushed.
- Open a new browser instance.
- Navigate to the same OWA login page as determined by Step 5 above.
- Log in to OWA. Pay special attention to the login name, i.e.,
- Email address means "user@example.com" format.
- Domain\user name means "example\user" format.
- User name means "user" format.
- Once you see the inbox, you have successfully logged into OWA. Enter the same username and password used in MigrationWiz.
It may be necessary to first grant permissions.
- Browse to https://testconnectivity.microsoft.com. This is a Microsoft-owned tool.
- If using Microsoft 365, click on the Office 365 tab.
- Select Service Account Access (Developers) and click Next.
- Specify the target mailbox email address.
- Specify the service account user name (if using admin credentials on the connector, enter the same user name).
- Specify the service account password (if using admin credentials on the connector, enter the same password).
- Check the Specify Exchange Web Services URL and specify the URL (example: https://server/EWS/Exchange.asmx).
- If using Exchange Server, do not check Use Exchange Impersonation. If you are using Microsoft 365, and using impersonation, do check the box.
- Check Ignore Trust for SSL.
- Click Perform Test.
- Once results are displayed, check the overall result, and also click Expand All.
Throttling
The below section will explain how to remove the throttling policy within your Exchange environment. Removing the throttling policy will help with the performance of your migration.
- Some Hosted Exchange providers will not allow you to alter the throttling policies with your instance.
- Removing the throttling policy will allow for a higher throughput of migrated data, however, this can impact server resources. Please pay close attention to the server resources when performing your migration and determine if your throttling policy needs to be changed to maintain a healthy server resource level.
Disable Throttling Parameters
- Open the Exchange Management Shell.
- Type the following command and press Enter:
New-ThrottlingPolicy MigrationWizPolicy
- Type the following command and press Enter:
Set-ThrottlingPolicy MigrationWizPolicy -RCAMaxConcurrency $null -RCAPercentTimeInAD $null -RCAPercentTimeInCAS $null -RCAPercentTimeInMailboxRPC $null -EWSMaxConcurrency $null -EWSPercentTimeInAD $null -EWSPercentTimeInCAS $null -EWSPercentTimeInMailboxRPC $null -EWSMaxSubscriptions $null -EWSFastSearchTimeoutInSeconds $null -EWSFindCountLimit $null -CPAMaxConcurrency $null -CPAPercentTimeInCAS $null -CPAPercentTimeInMailboxRPC $null -CPUStartPercent $null
- Enter the following command and press Enter:
Set-Mailbox "MigrationWiz" -ThrottlingPolicy MigrationWizPolicy
- The steps above will remove throttling policies against all user accounts at your Source. You still need to enable impersonation within your MigrationWiz project, so that the admin account can impersonate the user accounts during migrations, and so that the migrations use the bandwidth available to the individual user accounts, rather than just the bandwidth available to the admin account. Follow the directions in the Help Center article Impersonation and Delegation to enable this.
Preparing the Destination Environment
Modern Authentication Requirements
The steps listed in the Required Permission for Performing M365 Mailbox and Archive Migrations article apply to both the source and destination tenant when they are Exchange Online, in regards to Exchange Web Services (EWS) in the mailbox, and archive mailbox. Use a Global Administrator for the configuration steps.
Please review the documentation before preparing the source.
Set Up User Accounts
Set up user accounts on the destination Office 365 tenant and assign licenses. These can be created in several ways. (The following links are to external articles.)
Create an Administrator Account
Create an administrator account in Microsoft 365 to be used for migration or use the global admin account for the tenant. The administrator account must have full access to the user mailboxes, have the required API Permissions, or be granted impersonation rights.
We recommend adding the necessary API permissions to the Modern Authentication app you are using for your O365 mailbox or archive mailbox endpoint. You can follow the steps outlined in this guide, as this is BitTitan's recommended approach.
However, you can still use the BitTitan impersonation approach if you already have a service account with the Application Impersonation role already assigned. Microsoft is phasing out RBAC Application Impersonation in Exchange Online and no longer allows the assignment of this role to new accounts.
Test Administrator Access
Test that the administrator can access the user mailboxes. Test access to the tenantname.onmicrosoft.com addresses, not to the domainname.com addresses. Make sure that the tenantname.onmicrosoft.com account is attached to each mailbox in Microsoft 365. By default, it should be attached, but if not, it will need to be added as an alias to each account. This can be done through the Microsoft 365 admin portal or via PowerShell scripts.
MigrationWiz Steps
Create a Mailbox Migration Project
- Click Go To My Projects.
- Click Create Project.
- Select a Mailbox migration type. Mailbox projects are used to migrate the contents of the primary user mailbox from the previous environment to the new environment. Most mailbox migrations can migrate email, calendars, and contacts.
- Click Next Step.
- Enter a Project name and select a Customer.
- Click Next Step.
- Select a Source Endpoint from the Endpoint drop-down menu. If an Endpoint has not been created, follow the steps in the section below.
- Click Save and Go to Summary.
Endpoints
Endpoints are created through MigrationWiz. If you select an existing endpoint from the dropdown, it will only show ten endpoints. If you have more than ten, you may need to search it.
Consider that endpoint search is case and character-specific. For example, Cust0mer will not show up if the search is customer. We recommend keeping a list of endpoints you have created, along with any unique spellings or capitalization you may have used.
Create your Endpoints
Please review the following tabs to create your destination and source endpoints.
Create your source endpoint by following the next steps:
- Click New.
- Name the endpoint.
- Select type Exchange Server 2003+.
- Complete the Outlook Web Access URL.
- Select one of the following credential options.
- Provide Credentials, the form expands to show more fields for username and password. MigrationWiz uses the credentials to access the service chosen. In most cases, you must provide credentials for an administrator account on those services, as this will enable MigrationWiz to have full access to the cloud service.
- Do not Provide Credentials, MigrationWiz requests credentials from end users before a migration can be started. This may slow your migration, as you are now dependent on end users to provide these credentials.
- Click Add.
- Click Next Step.
Create your destination endpoint by following the next steps:
- Click New.
- Name the endpoint.
-
Select Microsoft 365 for the endpoint type.
- Select one of the following credential options.
- Provide Credentials, the form expands to show more fields for username and password. MigrationWiz uses the credentials to access the service chosen. In most cases, you must provide credentials for an administrator account on those services, as this will enable MigrationWiz to have full access to the cloud service.
- Do not Provide Credentials, MigrationWiz requests credentials from end users before a migration can be started. This may slow your migration, as you are now dependent on end users to provide these credentials.
- Click Add Endpoint.
- Complete the Application (client) ID, the Directory (tenant) ID, the Client Secret, and the Region of Destination Tenant fields.
- Click Next Step.
Application (client) ID, Directory (tenant) ID, and Client Secret
For Microsoft 365 Mailbox and Archive migrations, MigrationWiz adds the Application (client) ID, Directory (tenant) ID, and Client Secret fields.
While the Application (client) ID and the Directory (tenant) ID are mandatory, the Client Secret field is not. It will depend on the permissions of the user account that performs the migration. Please review the following information before the creation of your M365 endpoints.
-
The client secret value is not mandatory if you use delegated permissions. Please leave the Client Secret field empty.
-
The client secret value is mandatory if you use the Application Impersonation using API Permissions approach.
- If you already have an admin account with the Impersonation role enabled (not using the Application Impersonation using API Permissions approach) the client secret value is not mandatory. Please leave the Client Secret field empty.
For more information about how to get the Application (client) ID and Directory (tenant) ID values from the Application Registration, please review step 3 of this article.
Region of Destination Tenant
MigrationWiz displays a dropdown to select the Preferred Region of the Tenant at the destination endpoint. This value updates the Preferred Region of the Destination Tenant field in the project's Advanced Options, and vice versa. You will notice that both values are always the same.
The Region of Destination Tenant feature optimizes the migration performance and speed when choosing the region closest to the destination tenant.
Tip
You can find the region of your destination tenant directly in the Microsoft Entra admin center by going to Identity > Overview > Properties, and using the Country or region or the Data location.
For more information on this topic, review this article.
Warning
If you do not complete this field you will not be able to save your project and the “This field cannot be left blank.” error will appear.Endpoint Validation
Once the information has been provided for both, the source and destination endpoint, and the customer selects Save and Go to Summary, MigrationWiz performs an endpoint validation check.
This validation tests the administrator credentials entered into the project and the Modern Authentication setup only. If there is an issue, the screen redirects to the endpoint and provides an error message or flyout that can be selected for more information regarding the error.
Common Errors when Configuring Your Endpoint
For more information, review the AADSTS700016, AADSTS90002, and ADDSTS50126 issues on the Common Errors Using Modern Authentication page.
Add Accounts (Items)
Add the accounts that will be migrated, also referred to as items, to a project using one of the following options:
This option allows you to add items one at a time. To do so, you only have to provide an email address if you entered administrative credentials when setting up the project. If you did not, enter the following user information:
- An email address
- Login name
- Password
- Mailbox status
Bulk Add uses a CSV containing the source and destination email addresses for the users to add the users to the project. If migrating only a specific group from a tenant, we recommend using the Bulk Add option.
MigrationWiz allows you to bulk import mailboxes into the system.
To import one or more mailboxes:
- Sign in to your MigrationWiz account.
- Select the Project for which you want to perform the bulk import.
- Click Add.
- Click Bulk Add.
- Follow the instructions on the page.
Autodiscover process within MigrationWiz can be used to discover items from the Source environment so that they can be imported into your projects. This can then be edited in the project to remove users not being migrated. All users are added with the source and destination email addresses set to match the source email.
This can be changed by using the Change Domain Name button at the top of the project page. If the usernames are changing during the migration, we recommend using the Bulk Add option.
There are a few requirements for this to work:
- The Source has to be Exchange 2007 or later.
- The endpoint on the Source needs to use admin credentials.
- For mailbox migration projects, the admin account that is specified within the Source endpoint needs to have a mailbox associated with it.
- The admin mailbox must be listed in the public Global Address List (GAL).
One additional item to note here is that there is no way to restrict the IP addresses that the connection will come from. This means that the steps outlined in our IP Lockdown guide will not apply here. If your environment requires that any IP addresses be whitelisted, it is recommended that items be added to your project using one of the other available options.
Autodiscover of items will not work while using Modern Authentication
Autodiscovery exposes the following items:
- For mailbox migration, autodiscovery will list all mailboxes at the Source.
Steps to Run Autodiscover
-
Navigate to the project you want to import users into.
-
Ensure that you have created an endpoint for the source project.
-
Once in the project, on the top navigation bar, click on the Add drop-down, then select Autodiscover Items. This will begin the Autodiscover process.
-
Once discovered, click on the Import button, to import the items into your MigrationWiz project.
Advanced Options
Advanced Options allow you to choose your notifications, filtering, maintenance, licensing, performance, and some configuration options.
Support Options are advanced configurations that make use of PowerShell or code blocks to provide extra options or resources for your migration.
Support Tab
Consider that each Support Option includes the "=" character and is to be entered under the Support tab in the section named Support Options.
Add additional blank fields for new Support Options by clicking on the "+" button. In case you want to delete a field click the trash can icon.
Default Options for Microsoft 365 Endpoints
By default, some fields are view-only. In other words, you cannot edit or remove them from the support options page. To edit them, you need to edit the source or destination endpoint of your project.
Among these default options, you can find ModernAuthClientIdExport, ModernAuthTenantIdExport, ModernAuthClientSecretExport, ModernAuthClientIdImport, ModernAuthTenantIdImport, and ModernAuthClientSecretImport.
The support options above are required when configuring your endpoint.
Important
Keep in mind that the ModernAuthClientSecretExport and the ModernAuthClientSecretImport support options are text-masked.
Warning
You cannot update the default Advanced Options, in case you try to modify or add new ones the following message arises.
Performance Tab
Set Maximum concurrent migrations. To be very safe, we recommend initially setting this to 5. This means that when all mailboxes are selected and the migration begins, only the first five (5) mailboxes in the list will be migrated (using parallel processing), and then when the first of the five (5) completes, the next in the list will begin migrating, and so on down the list, through to completion of all mailboxes. If the Source server has enough server resources, set this parameter based on the bandwidth guideline of three (3) mailboxes per 1Mbps of bandwidth. Therefore, for example, if there is a 10Mbps connection, we recommend that the maximum concurrent migrations parameter be set to 30.
Source/Destination Tab
The following options are most valuable for the Exchange to Microsoft 365 migration scenario:
- Set to use impersonation at the Source. Checkmark the Use impersonation in Source box.
- Set to use impersonation at the Destination. Checkmark the Use impersonation at Destination box.
Run Migration
The following sections will guide you through setting up and launching your migration. Each header is one step, with its component steps below. Follow these steps in order, and read the notes for important information about dependencies or best practices.
Run Verify Credentials
- Open the Project containing items you wish to validate.
- Select the items you wish to validate.
- Click the Start button in your dashboard.
- Select Verify Credentials from the drop-down list.
- Once complete, the results of the verification will be shown in the Status section.
Notify Users
Send out the final notification that the migration is beginning. Include when the migration will start, the expected duration, any usage instructions during migration, and any expected steps or notifications for the post-migration timeline.
If using DeploymentPro, refer to the sample email for some sample text and screenshots that can be included in this email.
Pre-Stage Pass
- Select the users.
- Click the Start button from the top, and select Pre-Stage Migration.
- Under the Migration Scheduling section, from the drop-down list, select 90 days ago.
- Click Start Migration.
MX Record Cutover
Change over MX records on the DNS provider's portal. Also, include the AutoDiscover (CName) setting. There are several options for this, based on the size of your project.
Small to Medium Projects
Manually set forwards during a migration on a per-user basis, from the admin portal. Forwards are useful if you are migrating users in batches, and switching some users over to the new Destination before others. Forwards allow for mail coexistence, but not for calendar-free/busy coexistence.
We recommend not saving a copy locally, because when you migrate the mailbox to the destination, you will end up with duplicates.
Important
Setting up forwards/coexistence is a manual setup option and is not a requirement to migrate using MigrationWiz. If using this option, test it in your environment first before starting your migration.
Large Projects
If you are migrating in batches and coexistence is required, you will not be cutting over the MX records until your final batch of users has been migrated, and you must perform two extra steps:
Important
Setting up forwards/coexistence is a manual setup option and is not a requirement to migrate using MigrationWiz. If using this option, test it in your environment first before starting your migration.
Forwards for Coexistence
If you are not cutting over an entire domain/organization at once by changing the MX records, you can perform a phased migration and set up coexistence by setting up forwards on the mailboxes you wish to migrate.
This can be done via one of the following methods.
Important
We do not recommend setting up Exchange email contacts and a DNS Internal Relay for this since this will not allow for any Delta Migration passes to be made afterward because the mailbox no longer exists.
By PowerShell
Here is how to do this via PowerShell:
Forward the email to the internal recipient and DON'T save a local copy.
PowerShell command syntax:
Set-Mailbox -Identity <Identity> -ForwardingAddress <Office 365 User Email Address> -DeliverToMailboxAndForward $False
- Example: Set-Mailbox -Identity John -ForwardingAddress Suzan@o365info.com -DeliverToMailboxAndForward $False
- Because you set DeliverToMailboxAndForward to false, a copy of the email will NOT be kept in the on-premises mailbox. When setting up forwards, make sure that you do NOT save a local copy before the forward. If you do save a local copy, then when you perform Delta passes, MigrationWiz will migrate the items that it previously hasn’t migrated (and watermarked). This will cause duplicates at your Destination.
- The email address specified on the 'ForwardingAddress' parameter should exist as a Mail Contact.
Through Exchange Management Console
The first step is to create the forwarding objects in your local Active Directory. These forwarding objects will be hidden from the address book and will be used purely to forward mail for mailboxes that are migrated. Note that these objects are created but not used until you set the forwarding, so these steps
The next step is to set up forwarding for mailboxes before migration. Before submitting a mailbox for migration, set the forward by performing the following:
- Launch the Exchange Management Console from the Start Menu.
- Expand the Recipient Configuration note from the navigation tree.
- Click the Mailbox node from the navigation tree.
- Right-click on the mailbox to set the forward for and click Properties.
- Click the Mailbox Flow Settings tab.
- Select Delivery Options and click Properties. Do not select the option "Deliver message to both forwarding address and mailbox". This is important to ensure that Delta passes do not cause duplicates. If you do save a local copy, then when you perform Delta passes, MigrationWiz will migrate the items that it previously hasn't migrated (and watermarked). This will cause duplicates on your Destination.
- Click the checkbox Forward to, then click Browse.
- Select the name of the user that contains the prefix (External Forward) in the display name. This is the forwarding object created previously.
- Click OK.
- Click OK.
Setting up Mail Routing on Microsoft 365
For the setup, use PowerShell, because it is faster and easier to set up than working through the Microsoft 365 admin portal. If you need information about how to do this through the Microsoft 365 admin portal, contact Microsoft Support.
- Connect to Exchange Online PowerShell.
- Create the Distribution List (DL):
New-DistributionGroup -Name "BtNotMigratedUsers"
- Add All Users to this DL.
- Create the Connector:
$result = New-OutboundConnector -Name "CBRConnector" -ConnectorType OnPremises -SmartHosts "<fill smart host to source environment>" -UseMXRecord $false -IsTransportRuleScoped $true
- -SmartHosts entry needs to be set to the URL or IP Address of the Source environment server.
- On Exchange 2003, 2007, and 2010, this will be the address of the Transport server.
- On Exchange 2013 and 2016, this will be the address of the Mailbox server, not the Transport server.
- If the Source environment is Hosted, you would need to obtain this address from the Hosted Provider.
- If the Source environment is G Suite, you would need to change the -SmartHosts entry to be the following:
-SmartHosts “aspmx.l.google.com”
- Create Rule:
$result = New-TransportRule -Name "PilotInABoxRule" -SentToMemberOf "BtNotMigratedUsers" -RouteMessageOutboundConnector "CBRConnector"
When a user is fully migrated, remove the user from the DL, and they will receive their email in their own Microsoft 365 mailbox.
- There must be a mail-enabled contact on-premises for each user that has been migrated.
- Send an email to end users to let them know what to expect for their Outlook profile reconfiguration. If using DeploymentPro, refer to the sample email to send to users before their Outlook profile is reconfigured article for some sample text and screenshots that can be included in this email.
Run Full Pass Migration
- Select the users – you may either select individual users or select all users in a project by clicking the checkbox to the left of Source Email.
- Click the Start button from the top.
- Select Full Migration. If you want to delay your migration, then select the checkbox marked "Automatically start the migration at", and enter the date and time to have the migration start. To start a migration immediately, you do not need to select the scheduling option.
- Click Start Migration.
Run Retry Errors
Each error logged represents an item that was not migrated. MigrationWiz contains a mode in which you can resubmit the migration to retry failed items. This mode of operation is always free of charge. You may only submit mailboxes in this mode only if they satisfy all of the following conditions:
- The last migration was completed successfully.
- The mailbox contains at least one error.
If your mailbox does not satisfy these conditions, you will receive a warning when submitting the migration in this mode and your request will not be fulfilled.
To submit one or more mailboxes in retry mode, perform the following steps:
- Click the Go To My Projects button.
- Select the project that contains the mailboxes that you want to retry.
- Select the mailboxes that have migration errors.
- Click the Start button.
- Select Retry Errors from the menu.
- Click the Retry Errors button.
When errors are repaired, they will disappear from the error log. Some errors may not disappear if the Source item was not reprocessed (due to filters, for example), has been deleted or moved, or if the item failed again.
Final Steps
If not using DeploymentPro, users must create new Outlook profiles, set up their signatures again, and reattach any PST files that were attached to their previous profile.
Click the pie chart icon in the MigrationWiz dashboard to receive an email containing all the project migration statistics.