Home > Gmail Migration Process > Preparation
Export to PDFBefore the migration, you need to identify what object types to migrate. See the Supported and Unsupported List.
If there are many user mailboxes in your Google tenant and you only want to migrate some of them, you can create a Google group or an organizational unit in your source tenant, and add the users you want to migrate and the user used to consent the Fly migration for Google app to the Google group or organizational unit. When you install the Fly migration for Google app, select the Certain groups or organizational units Select users in the next step option and then select the specific group or organizational unit and finish installing the app. Then, user mailboxes that are not in the selected group or organizational unit cannot be migrated.
This filter only applies to user mailboxes.
To connect Fly to your Gmail, create an app profile with the required permissions in AvePoint Online Services. Refer to Required Permissions to check the required permissions for Gmail Migration.
To connect Fly to your Exchange Online, we recommend creating an app profile with the required permissions in AvePoint Online Services. Refer to the required permissions to check the required permissions for Exchange Online.
Before you migrate from Gmail, you can run a tenant discovery for Gmail to scan and report the object count, object type, object size, and other details. According to the discovery reports, you can better understand your source environment and plan for your migrations. Refer to user guide for Tenant Discovery for details.
Add new Microsoft 365 users in the destination tenant:
If you are migrating Gmail to Exchange Online and the domain will be moved to the destination environment:
We recommend that you add the domain to the Exchange Online tenant so that the Exchange Online mailbox addresses are the same as those in Gmail. When configuring mappings in migration projects, you can use the same addresses for source and destination mailboxes. For example, user@googleworkspace.com to user@googleworkspace.com.
If you are migrating from Gmail to Exchange Online and the domain will not be moved to the destination environment:
When configuring mappings in migration projects, you can use different addresses for source and destination mailboxes. For example, user@googleworkspace.com to user@destcontoso.onmicrosoft.com.
Refer to the user guide about how to prepare users.
Assign licenses to destination users to create mailboxes. Refer to Assign Microsoft 365 licenses to users for details.
Provision resource mailboxes and shared mailboxes (if needed) in the destination. If the shared mailbox or resource mailbox in the destination does not exist, Fly can create a new one.
Microsoft sets a default limit of 35 MB as the maximum size of a received message. We recommend increasing this to 150 MB before the migration to avoid any potential exceptions. Refer to larger email messages to configure the limit.
Sample PowerShell command:
Set-Mailbox -Identity user@contoso.com -MaxReceiveSize 150MB
Other limits such as rule quota limitation. Inbox rules are limited to 256 KB for all rules. Refer to Modify the space used by Inbox rules in Exchange Online to configure the limit.
Sample PowerShell command:
Set-Mailbox -Identity user@contoso.com -RulesQuota "<32 KB to 256 KB>"
During migrations, if you need to repair the migrated data and overwrite many items, we recommend that you disable both litigation hold and single item recovery on related destination mailboxes. If litigation hold or single item recovery is enabled, when items are deleted or overwritten, Exchange will automatically move those items to the Recoverable Items folder and take up storage there.
Litigation hold is not enabled by default, while single item recovery is.
Refer to In-Place Hold and Litigation Hold in Exchange Online and Enable or disable single item recovery for a mailbox in Exchange Online for details.
Sample PowerShell Command:
Set-Mailbox -Identity user@contoso.com -SingleItemRecoveryEnabled $false -LitigationHoldEnabled $false
If retention policies are configured for the source data, check to make sure the destination retention policies are the same as the source retention policies. Otherwise, the destination data may be deleted due to different retention policies.
Google also has throttling restrictions. The more mappings you run at a time, the greater effect of throttling restrictions on the migration speed. You can contact Google Support for help.
Microsoft uses throttling to manage Microsoft 365 operations, and throttling limits will affect migration performance. Go to Microsoft 365 admin center to lift the throttling restrictions.
Go to the Help (?) section of the Microsoft 365 admin center.
Enter EWS throttling as the search phrase.
Click Run Tests when you are asked to check your environment. Essentially, the tests check what EWS throttling applies to the tenant.

The support assistant checks the tenant settings and concludes that EWS is throttled (the normal situation). You will then be offered the chance to update the settings to the tenant EWS policy to lift throttling for 30, 60, or 90 days.
Select the number of days you want to adjust the policy for, and then click Update Settings.

After a short delay, the support assistant will confirm that the settings have been changed.
For mail migrations, generally, a reasonable migration speed is 0.8 GB/hour/mapping. For the number of mappings that can be run, it is automatically allocated based on the subscription you purchased. The more user seats you purchase, the more mappings you can run in a project.
There are many factors which may affect migration performance:
The above throughput number is for full migration. Generally, it may be lower for incremental migration since Fly needs to spend quite some time in checking the migrated item status for incremental migration.
There may be throttling issues in the source and destination, which affect the migration performance.
Refer to Create a Connection to connect Fly to your source Google tenant and destination Microsoft 365 tenant.
Generally, we recommend that you create a project based on the business unit, such as divisions. Also, we recommend that you configure different types of mailboxes in different mapping files.
Set mailbox mapping files and user mapping files (optional).
A Gmail migration policy allows you to configure the migration scope of objects, conflict resolution, user mapping, and advanced options for Gmail Migration. Refer to Configure a Migration Policy for details.
Synchronize deletion is unavailable for folder level migration jobs.
We recommend that you perform a pilot run for the following purposes:
Get familiar with Fly interface and understand the whole migration process.
Discover any potential issues early and resolve them before production migration.
Understand the throttling situation in case content size is large, then try to resolve it with Microsoft 365.
To configure projects and mappings, refer to Create a Project and Create Migration Mappings for details.