The sections below contain the general migration process for source Exchange Online Public Folder to destination Exchange Online shared mailbox. 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. Refer to the Supported and Unsupported List.
To connect Fly to your Exchange Online Public Folder, we recommend creating an app profile with the required permissions in AvePoint Online Services. Refer to Required Permissions to check the required permissions for Exchange Online Public Folder.
To connect Fly to your Exchange Online, create a service account or an app profile with the required permissions in AvePoint Online Services. Refer to Required Permissions to check the required permissions for Exchange Online.
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.
Add new Microsoft 365 shared mailboxes in Exchange Online, or sync users from on-premises Active Directory and convert them to shared mailboxes. Refer to the user guide about how to prepare users.
The storage limit for a standard shared mailbox is 50 GB. For more information, refer to Storage Limits and Storage Limits Across Standalone Plans in the Mailbox Storage Limits section. If your source public folders contain a large amount of data, ensure that each mapping targets a different destination shared mailbox where possible. It is also recommended to split large source folders according to the public folder hierarchy to reduce the risk of data loss and help ensure the migration completes successfully.
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
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.
Microsoft uses throttling to manage Microsoft 365 operations and throttling limits will affect migration performance. Go to the 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 a number of days to adjust the policy, and then click Update Settings.

After a short delay, the support assistant will confirm that the settings have been changed.
To keep the source sensitivity labels applied on emails in the source tenant to the destination, before the migration, you need to create and publish the sensitivity labels in the destination. Refer to Create and publish sensitivity labels for details.
For email migrations, generally, a reasonable migration speed is 1.5 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 and destination Microsoft 365 tenants.
Project setup
Generally, we recommend that you create a project based on the business unit, such as divisions.
Other setup
Set mailbox mapping files and user mapping files (optional).
An Exchange Online migration policy allows you to configure the migration scope of objects, conflict resolutions, user mappings, and advanced options for Exchange Online Public Folder migrations. Refer to Create 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 the content size is large, and then try to resolve with source and destination.
Refer to the following sections to execute the migration.
To configure projects and mappings, refer to Create a Project and Create Migration Mappings for details.
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.
Handle new, updated, and failed data. Refer to Run Migrations to Migrate Objects about how to perform regular incremental migrations.
Check the following:
Mapping report. If the mapping fails or finishes with exceptions, you can check the error code and comment for the mapping in the Migration error section. You can click the error code to view the details and recommendations of the code in the Troubleshooting Guide, which can assist you in resolving or avoiding the error.
Migrated data in the destination.
Item count and permissions in the destination.
Linkage between the organizer and the attendee.
New data can be created in destination mailboxes.
Functions can work normally, such as mail reply, forward, etc.
Meeting/recurrence meeting functions work normally.
Ensure all source data are migrated to the destination.
This step is only needed if you have separated the migration plans into multiple waves.
Export final reports.
(Optional) Remove completed mappings.