Home > Microsoft 365 Groups to Google Groups Migration Process
Download this articleThe sections below contain the general migration process for Microsoft 365 Groups to Google Groups Migration. The details outlined in this document can serve as general guidelines with some minor adjustments.
More steps may be needed, and some steps included in the process may be optional according to your migration requirements.
Before the migration, you need to identify what object types you want to migrate. See the Supported and Unsupported List.
To connect Fly to your Groups, create a service account, an app profile, or delegate app with the required permissions for the source connection.
To connect Fly to your Google Groups, create an app profile with the required permissions for the destination connection.
Before you migrate from Microsoft 365 Groups, you can run a tenant discovery of Microsoft 365 Groups 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 the user guide for Tenant Discovery for details.
User mappings are required when executing migrations. Make sure users of the following data are created in the destination tenant before the migration.
Group Membership
Mail: To, Cc, Bcc, Senders, etc.
Permission
Other data that needs users
Fly can create Groups and shared drives in the destination. If you want to migrate to existing Groups and shared drives, you can create Groups and shared drives in the destination before the migration.
Refer to Create a Connection to connect Fly to your source and destination. The source connection including both the app profile and service account is recommended. The destination connection using the Google custom app profile is recommended.
In Microsoft 365 Groups to Google Groups migrations, the job speed depends on the size of SharePoint team sites and the size of Group mailboxes.
SharePoint Site Migration Throughput
Generally, a reasonable SharePoint site migration speed is about 2 GB/hour/mapping. The number of mappings that run in parallel is automatically allocated based on your purchased subscription. The more subscriptions you purchase, the more mappings you can run in parallel.
Mailbox Migration Throughput
Generally, a reasonable migration speed of the mailbox is 1.5 GB/hour/mapping. The number of mappings that run in parallel is automatically allocated based on your purchased subscription. The more subscriptions you purchase, the more mappings you can run in parallel.
We can calculate how much content can be migrated with the above infrastructure.
There are many factors which may affect the migration performance:
The above throughput number is for the full migration. Generally, it may be lower for the incremental migration since Fly needs to spend quite some time checking the migrated items’ status for the incremental migration.
The above results are only ideal values after many tests. The migration speed of different tenants may be different. We recommend that you estimate the daily throughput in the same way as the results of the pilot job.
Configure Microsoft 365 Groups to Google Groups mapping files and user mapping files:
Examples in the Microsoft 365 Groups to Google Groups mapping file

Examples in the user mapping file

A Microsoft 365 Groups to Google Groups migration policy allows you to define the migration scope of group objects, the conflict resolutions, whether to replace source email addresses of sender/recipients, and how to map users. Refer to Create a Migration Policy for details.
We recommend you perform a pilot run for the following purposes:
Get familiar with the Fly interface and understand the whole migration process.
Discover and resolve any potential issues before production migration.
Understand the throttling situation in case content size is large, and then try to resolve with the destination.
Refer to the following sections to execute the migration.
To configure projects and mappings, refer to the Create a Project and Create Migration Mappings for details. Use the mapping file of data to be migrated to configure the migration project.
Before running the job, we recommend you verify the mappings to ensure that the mappings are available for migration. Refer to Pre-analyze Mappings for details.
Then you can run a full migration job to migrate the objects based on your configured migration policy. Refer to Run Migrations to Migrate Objects for details.
Some issues may occur during a full migration job. Run an incremental job to handle new, updated, and failed data. Refer to Run Migrations to Migrate Objects about how to perform regular incremental migrations.
Notify end users of the migration schedule. Publish a message in each source Group to inform end users that they can run incremental jobs before final validation.
Notify all users and make sure the source Groups do not have any new/modified objects. Then perform the final incremental migration job.
Note the following items during the validation period:
Number of files
Number of mails in Group mailbox
No failed data in job report
This step is needed only if you have separated the mappings into multiple waves.
You can perform the final incremental migration to make sure all source data are migrated to the destination if needed.
During the final validation, you should validate members of the destination Google Groups.