Preparation

Before the migration, you need to identify what object types you want to migrate. See the Supported and Unsupported List.

1. Configure a filter for source users (optional)

If there are many user drives 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 drives that do not in the selected group or organizational unit cannot be migrated.

NOTE

This filter only applies to user drives.

2. Create an app profile with required permissions for Google Drive

To connect Fly to your Google Drive, create an app profile with the required permissions in AvePoint Online Services. Refer to Permissions for Source Google Drive to check the required permissions. 

3. Create a service account or app profile with required permissions for SharePoint Online/OneDrive

To connect Fly to your destination SharePoint Online/OneDrive, create a service account or an app profile with required permissions in AvePoint Online Services. Refer to Permissions for Destination SharePoint Online/OneDrive to check the required permissions.

NOTE

Users with Multi-Factor Authentication (MFA) enabled cannot be used as the service account to perform migrations. You can use a delegated app profile instead.

4. Run the source tenant discovery (optional)

Before you migrate from Google Drive, you can run a tenant discovery for Google Drive 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.

5. Provision all necessary users/groups in the destination tenant

Fly does not automatically provision new users in Microsoft 365. Make sure the destination users already exist before the migration.

There are different ways to add new Microsoft 365 users:

  • Adding users individually. See instructions here.

  • Adding users in bulk. See instructions here.

  • Adding users via PowerShell. See instructions here.

  • Synchronizing users from local Active Directory to Microsoft 365 via Microsoft Entra Sync or Microsoft Entra connect. See instructions here.

6. Provision all necessary external users in the destination tenant

External users cannot be migrated in the migration. Make sure the external users have been created or imported into the destination tenant before the migration. Then you can map the source external users to the destination users in the migration.

7. Pre-provision OneDrive sites in the destination

If you want to migrate content to OneDrive, make sure the corresponding OneDrive site has been created. Refer to Pre-provision OneDrive for users in your organization for PowerShell Scripts to pre-provision OneDrive with PowerShell.

You can configure mappings of the Drive level. Refer to the example below for reference.

Mapping example of Drive level.

You can also configure mappings of the folder level. The destination folder’s parent folder must exist. If not, create the parent folder first. Refer to the example below for reference.

Mapping example of folder level.

For example: The destination URL is user@contosodest.com\folder1\folder2, so the folder1 must exist in the destination. If not, create this folder under the user’s My files.

8. Pre-provision SharePoint site collections in the destination (optional)

If you want to migrate content to team sites, group sites, or other sites, make sure the destination site already exists. You can refer to the example below for reference.

Example.

  • If the destination list/library in your specified path https://contosodest/sites/sc/library does not exist, regardless of whether you select Merge or Attach as the migration method, Fly can create the list/library in the destination.

  • If the destination list/library and folder in your specified path https://contosodest/sites/sc/sub/list/folder do not exist, and you select Merge as the migration method, Fly can create the list/library and folder in the destination.

  • If the destination list/library or folder in your specified path https://contosodest/sites/sc/sub/list/folder does not exist, and you select Attach as the migration method, the migration job will fail.

9. Extend the storage before migration (optional)

By default, there is 1 TB storage space per user for Microsoft 365 subscriptions with less than 5 users. For subscriptions with 5 or more users (can be any combination of qualifying plans), Microsoft will initially provide 1 TB per user, which admins can increase to up to 5 TB per user. (For instructions, see Set the default storage space for OneDrive users.) To request additional storage, admins must contact Microsoft Support. This should be done by IT admins.

If you want to set the site storage, go to the SharePoint Admin Center to set the maximum storage for the site collection.

10. Check destination retention policies

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.

11. Throttling limits in Google Drive migration

Google has throttling restrictions. The more mappings you run at a time, the greater the effect of throttling restrictions on the migration speed. You can contact Google Support for help.

12. Migration throughput

For Google Drive migrations, generally, a reasonable migration speed is 5-20 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. 

  • Throttling: There may be throttling in the source or destination, which will reduce the migration performance.

13. Create source and destination connections

Refer to Create a Connection to connect Fly to your source Google tenant and destination Microsoft 365 tenant. 

14. Design the migration policy

A Google Drive migration policy allows you to configure the conflict resolution, filter policy, user mapping, and other options for Google Drive Migration. Refer to Configure a Migration Policy for details.

15. Plan a Pilot run

We recommend that 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 if the content size is large, and then try to resolve it with the source and destination.