Microsoft 365 Migrations | Part 7: Choose the migration solution
The migration process has been decided. Now we need the right tools to carry it out. There is a wide range of providers and solutions, but as always, it comes down to the details:
- Which services should be migrated?
- What is the scope of the migration, and how quickly does the data need to be migrated?
- Can employees be expected to accept restrictions or fulfill certain obligations?
This article provides an overview of some solutions I’ve encountered in my projects. Accordingly, the article should not be viewed as a complete list of all available solutions and their respective features, as that would simply be beyond the scope of this article.
Overview and comparison
This article discusses the following solutions:
- AvePoint Fly (Fly)
- Microsoft Migration Orchestrator (MORCH)
- Quest On Demand Migration (ODM)
- ShareGate Migrate
Since migration solutions are constantly evolving and new features are continually being implemented in the Microsoft Cloud, the information provided here may not reflect the current state of affairs. However, I strive to keep the content as up-to-date as possible. All prices are approximate and may vary in practice (e.g., due to framework agreements, interim price increases, etc.).
The following table provides a brief comparison of the products. Details on the individual points are described in the following chapters.
| Criterion | AvePoint Fly | Microsoft Migration Orchestrator | Quest On Demand Migration | ShareGate Migrate |
|---|---|---|---|---|
| Product type | Cloud (SaaS) | Cloud (SaaS) | Cloud (SaaS) | Hybrid with workstation on premises |
| Supported services and resources | - Entra ID-Benutzer und -Sicherheitsgruppen -Entra ID users and security groups Exchange Online mailboxes and public folders Teams (1-on-1 chats, group chats, channels, and data) SharePoint Online sites OneDrive sites Power Platform apps and flows | - Exchange-Postfächer - OneDrive-Sites - Persönliche Teams-Chats - Teams-Räume und SharePoint-Sites derzeit nur mit Enterprise Agreement | - Entra ID-Benutzer, -Geräte und -Sicherheitsgruppen - Exchange Online-Postfächer und Öffentliche Ordner - Teams (1:1-Chats, Gruppenchats, Räume und Daten) - SharePoint Online-Sites - OneDrive-Sites - Power BI-Inhalte - Power Platform-Umgebungen | - Entra ID-Benutzer und -Sicherheitsgruppen - Exchange Online-Postfächer - Teams (Gruppenchats, Räume und Daten) - SharePoint Online-Sites - OneDrive-Sites - Purview |
| Solutions for on-premises infrastructure | AvePoint Fly Server for Exchange and SharePoint | Remote move for Exchange, SharePoint Migration Tool | Hybrid Exchange addon for Exchange, Content Matrix for SharePoint | Modules for SharePoint, Exchange Server and file shares |
| Licensing | Per migrated object (yearly subscription) | Per user/per GB (shared data; yearly subscription) | Per user (yearly subscription) | Per concurrent migrations (depending on workstations) |
| Pricing (guidelines) | - 7,50€ per Objekt - 3,50€ per app/flow (Power Platform) | - 13€ per user - 4€ per 100 GB | - 23€ per user (T3) - 36€ per user (T5) | From 10.000€ (Pro with 5 workstations) From 18.000€ (Enterprise with 25 workstations) |
| Operation | Web interface | PowerShell | Web interface | Application |
| Performance (guidelines) | - Up to 8-10 GB/hour for Exchange Online (single batches) - Up to 20-40 GB/hour for SharePoint and Teams - Up to 10 GB/hour for OneDrive | No exact figures are available, but it is significantly faster than third-party solutions (data does not leave the Microsoft Cloud) | - Up to 8-10 GB/hour for Exchange Online (single batches) - Up to 10 GB/hour for SharePoint and Teams - Up to 10 GB/hour for OneDrive | Highly dependent on the number and performance of workstations; uses the Microsoft 365 Import API for very large datasets |
| Assessment of the environment to be migrated | Available; problems and errors are clearly displayed | Available, Microsoft provides an overview of error codes and their meaning | Available; problems and errors are clearly displayed | Available; problems and errors are clearly displayed |
| Reporting features | Available; issues and errors are clearly displayed; notifications are sent via email | Available, but only via PowerShell | Available; issues and errors are clearly displayed; notifications are sent via email | Available; issues and errors are clearly displayed; notifications are sent via email |
| User-friendliness | Intuitive interface and a comprehensive, well-written user manual | No GUI, generic documentation on the Learn platform | Intuitive interface and a comprehensive, well-written user manual | Intuitive interface and a comprehensive, well-written user manual |
| Specialties | - Migration from Power Platform is possible (requires additional licenses per app/flow) | - Personal Teams chats will remain; they will not be converted to group chats | - Endpoint configuration can be automated using DUA agents - Migration from Power BI and Power Platform is possible - Migration of devices in Entra ID is possible | - Migration of Purview solutions - “Insane Mode” for accelerated data transfer of very large data sets |
AvePoint Fly
About the provider
AvePoint is headquartered in the United States. It offers a wide range of products for managing cloud services, such as data backup, governance, archiving, and much more. Its product suite covers Microsoft, Google, and Salesforce. AvePoint has become best known for its cloud-based data backup solution, AvePoint Cloud Backup for Microsoft 365, and is continuously expanding its product portfolio with the Confidence Platform. The services are offered not only from the U.S. but also in nearly all regions where these providers operate (including Germany, for example).
About the product

AvePoint Fly provides a cloud-based platform for migrating content between Microsoft tenants. The following products and resources can be migrated:
- Entra ID users and security groups
- Exchange Online mailboxes and public folders
- Teams (1-on-1 chats, group chats, channels, and data)
- SharePoint Online sites
- OneDrive sites
- Power Platform apps and flows
In addition, AvePoint offers the “AvePoint Fly Server” solution, which enables the migration of on-premises Exchange organizations and SharePoint farms to Microsoft 365. This allows these systems to be migrated in parallel as part of the migration process.
Licensing
AvePoint Fly uses what is known as “Global Object” licensing. Under this model, each object to be migrated is licensed separately. The license includes an unlimited amount of data, so it doesn't matter whether an object takes up, for example, 10 GB, 100 GB, or 1 TB. However, licensing distinguishes between the following areas, meaning that users must be licensed multiple times (currently up to 4 licenses):
- User-related areas:
- Entra ID user
- Exchange Online mailbox
- Personal Teams chats
- OneDrive site
- Entra ID security group
- Teams room
- SharePoint site
- Microsoft 365 group
- Public folder in Exchange Online
For Power Platform, one license is required per app or flow.
All licenses are purchased for at least one year, regardless of how long the migration takes. If the migration takes longer than one year, licenses must be purchased again for at least one year.
Specialties
AvePoint Fly enables the migration of apps and flows from the Power Platform. While this is a nice addition in itself, the necessary prerequisites (setting up an environment in the target tenant, configuring permissions) must be performed manually. Furthermore, apps and flows are rarely ready to run immediately after migration, as dependencies are missing or file paths are no longer correct.
Consequently, follow-up work must be performed as part of the preparatory steps or, at the latest, after the migration. For highly complex apps and flows, however, this can make sense, as it avoids having to rebuild them from scratch and instead allows you to adapt only the non-functional components to the new environment.
The “AvePoint Fly Server” product can be used to migrate data from locally deployed productivity servers (Exchange Server, SharePoint Server). Consequently, migrations from an on-premises environment can be performed either in parallel with the cloud migration or before or after it.
Performance
The following information is based on observations from completed projects and depends on various factors (e.g., bandwidth, individual throttling by Microsoft, batch sizes, etc.). It is intended only to give an idea of what is theoretically possible and when data synchronization should begin at the latest:
| Product/service | Performance | Opportunities for optimization |
|---|---|---|
| Exchange Online | 1,6 - 1,9 GB per mailbox per hour, 8-10 GB per hour per batch | - Suspend EWS throttling temporarily - Build migration batches tailored to each individual situation |
| SharePoint Online, Teams | 20-40 GB general throughput per hour | - Run multiple migrations in parallel |
| OneDrive | 10 GB general throughput per hour | - Run multiple migrations in parallel |
Microsoft Migration Orchestrator
About the provider
Microsoft is headquartered in the United States. As the developer and operator of Microsoft 365, Microsoft has the most experience working with its own products. In addition to Microsoft 365 and Azure as cloud offerings, many products are still available for on-premises data centers. The cloud services are provided worldwide, including from data centers in Europe and Germany.
About the product

Microsoft Migration Orchestrator is a solution natively integrated with the Microsoft Cloud for migrating data between Microsoft 365 environments. Currently, the following products and resources can be migrated:
- Exchange mailboxes
- OneDrive sites
- Personal Teams chats
Teams rooms and channels, as well as SharePoint sites, cannot yet be officially migrated. This feature is currently reserved for customers with an Enterprise Agreement.
Licensing
The following licenses are available for migration:
- Cross-Tenant User Data Migration = addon per user
- Cross-Tenant Shared Data Migration = per 100 GB data (SharePoint sites and Teams rooms; currently available only to Enterprise Agreement customers)
These can be purchased directly from Microsoft or through a cloud service provider.
Specialties
Since Microsoft transfers the data via its backend network, the synchronization speed is significantly higher than with third-party solutions, which must first transfer the data out of the cloud and then back into the cloud. This can be particularly helpful for short-term projects or when dealing with large amounts of data.
Personal Teams chats are migrated unchanged. This is a major advantage over third-party solutions, as they must first convert personal chats into group chats in order to migrate them. This is because Microsoft has not yet provided an official API for migrating such chats. Typically, with third-party solutions, 1-on-1 chats are either not migrated at all or only migrated up to a certain cutoff date, as they are difficult to distinguish in the new environment.
Unlike Exchange Online mailboxes, OneDrive migrations do not support delta synchronization. Once the migration is started, it is completed immediately upon full migration. Additionally, a maximum of 2,000 users can be migrated within a single migration batch.
Performance
Unfortunately, no precise information on the expected speed is available at this time.
Quest On Demand Migration
About the provider
Quest is headquartered in the United States and is a subsidiary of Dell. Quest is best known for its management and migration solutions for traditional infrastructure services such as Active Directory and now offers numerous other solutions for data security, cybersecurity, and migration. Its services are also available in data centers in Europe and Germany, among other locations.
About the product

Quest On Demand Migration is a comprehensive solution for migrating on-premises systems to the cloud, as well as from one cloud to another. Currently, the following services and resources can be migrated:
- Entra ID users, devices, and security groups
- Exchange Online mailboxes and public folders
- Teams (1:1 chats, group chats, channels, and data)
- SharePoint Online sites
- OneDrive sites
- Power BI content
- Power Platform environments
Quest provides dedicated solutions for on-premises productivity servers (Exchange Server, SharePoint Server). Accordingly, migrations from an on-premises environment can be performed either in parallel with the cloud migration or as a pre- or post-migration step.
Licensing
Quest offers different migration packages depending on the required feature set:
- On Demand Migration T3 for cloud-to-cloud migrations—includes users, groups, and M365 services
- On Demand Migration T5 for hybrid migrations—same as T3 plus Active Directory and device migrations
- On Demand Migration T7 for long-term migrations—includes everything in T5 plus features for email domain rewriting and domain migration
In addition, the following add-ons are available:
- Microsoft Teams Chat addon for 1:1 chats
- Hybrid Exchange for Exchange organizations on-premises
Specialties
Quest ODM can be used to migrate both Power BI content and complete Power Platform environments. The latter, in particular, is a significant advantage when Power Platform is used extensively within an organization. Quest also handles the creation of the environment itself, which greatly reduces the workload. However, dependencies from the legacy environment cannot be automatically resolved, so manual follow-up work is still required in these cases.
Another key advantage over other solutions is the Quest Update Agent. This enables automated reconfiguration of Office apps on end devices, so users do not have to update them manually. The agent can be managed centrally via the ODM console.
Furthermore, device migration is a very useful feature. Otherwise, devices must be manually removed from the old directory service and integrated into the new one—a process that is error-prone and often cannot be performed by users via self-service, as it requires local administrator rights. However, the license for this feature is quite expensive, so you’ll need to weigh whether it’s worth the investment for your company.
Performance
The following information is based on observations from completed projects and depends on various factors (e.g., bandwidth, individual throttling by Microsoft, batch sizes, etc.). It is intended only to give an idea of what is theoretically possible and when data synchronization should begin at the latest:
| Product/service | Performance | Opportunities for optimization |
|---|---|---|
| Exchange Online | 1,6 - 1,9 GB per mailbox per hour, 8-10 GB per hour per batch | - Suspend EWS throttling temporarily - Build migration batches tailored to each individual situation |
| SharePoint Online, Teams | 20-40 GB general throughput per hour | - Run multiple migrations in parallel |
| OneDrive | 10 GB general throughput per hour | - Run multiple migrations in parallel |
In past migration projects, it has been observed that Quest ODM experiences performance issues when migrating Teams rooms and Exchange mailboxes that contain a large number of items per folder. The final synchronization, in particular, takes an unusually long time, preventing users from accessing the latest items.
ShareGate Migrate
About the provider
ShareGate is headquartered in Canada. From its original focus on software services for SharePoint, it has since evolved into a provider of automation, governance, and migration solutions for Microsoft 365. For its cloud-based offerings, the company uses Microsoft data centers in regions around the world, including Europe.
About the product

ShareGate Migrate is the solution for migrating Microsoft 365 data between cloud environments. It currently supports the migration of the following services and resources:
- Entra ID users and security groups
- Exchange Online mailboxes (but not Public Folders)
- Teams (group chats, channels, and data, but not 1-on-1 chats)
- SharePoint Online sites
- OneDrive sites
- Purview
ShareGate provides dedicated modules for on-premises productivity servers (Exchange Server, SharePoint Server). Accordingly, migrations from an on-premises environment can be performed either in parallel with the cloud migration or as a pre- or post-migration step.
Licensing
ShareGate offers various packages tailored to migration performance requirements. Accordingly, all packages include unlimited resources and data (so it doesn’t matter how many users or how much data needs to be migrated).
- Essentials: a single migration, up to 250 users; includes SharePoint, Teams, Planner, OneDrive, and file shares
- Pro: five concurrent migrations, up to 1,000 users; includes all supported products
- Enterprise: 25 concurrent migrations, 1,000 or more users; includes all supported products
Specialties
Share Migrate is not a cloud-based service. Instead, the software must be installed on one or more workstations, from which the migration(s) are then initiated. Accordingly, the licensing model is significantly different from that of other solutions, which operate on a per-user basis.
Furthermore, ShareGate has some limitations—for example, it cannot be used to migrate public folders in Exchange Online. However, this seems manageable in most cases, as best practices recommend using shared mailboxes as an alternative anyway. The limitation regarding Teams 1:1 chats, however, can be more significant if these are to be migrated. In that case, an additional solution would need to be purchased or a switch to a different solution would be required.
For very large data volumes (TB), ShareGate offers what’s known as “Insane Mode.” In this mode, data is temporarily stored in an Azure region and imported into the new environment via the Microsoft 365 Import API to significantly accelerate the transfer to the new environment. This can help circumvent or mitigate limitations imposed by the workstation (hardware, bandwidth, etc.).
Another unique feature is the ability to migrate Purview solutions. Purview implementations, in particular, can become very complex over time, making it difficult to rebuild them in a different environment. Additionally, the transfer of d
Performance
The speed depends heavily on the specifications of the workstations used to perform the migration. Infrastructure components, such as switches, firewalls, and Internet bandwidth, must also be taken into account. Accordingly, it is not possible to make a reliable statement about the solution’s general speed.
However, with “Insane Mode,” ShareGate offers a way to significantly speed up the process. This should be considered especially when very large amounts of data need to be transferred or the migration timeframe is very short.
General recommendations
The following chapters provide some additional recommendations for carrying out the migration, regardless of the solution used.
Start early!

A common mistake is to start data synchronization only shortly before the migration or even on the migration date itself—for example, due to cost considerations regarding the licensing of the migration solution. This can result in users not having access to the most current data after the migration date, thereby delaying business processes.
Since most providers offer their products on an annual basis, cost considerations play a minor role here. Accordingly, licenses can be procured early on and the solution can be set up. It is also possible to perform an initial data synchronization early on to make the majority of the data available in the new environment.
The closer the migration date gets, the more frequently delta synchronizations should be performed. This minimizes the amount of data required for the final synchronization as part of the migration. However, for larger migrations (e.g., 1,000+ users), the final synchronization may still take a considerable amount of time. Therefore, even in a phased migration process, individual packages should not be too large.
When using Microsoft Migration Orchestrator, it is also important to note that delta synchronizations are currently not possible for individual services (OneDrive). This also affects the migration process.
Follow the migration sequence!

In principle, the data and resources of the individual services can be migrated independently of one another. However, during the migration process, this can result in dependencies that cannot be resolved. This, in turn, can lead to participants being missing from Teams chats or meetings, access to shared files and folders no longer working, and so on.
For this reason, a specific order should be followed for the initial synchronization to avoid such problems. This is particularly important when using the Microsoft Migration Orchestrator, since some services do not support delta synchronization (e.g., OneDrive).
The very first step is to establish a clean mapping of resources between the old and new environments. This primarily concerns user accounts and groups (security and distribution). This enables the migration solution to resolve dependencies properly and thus map resources as closely as possible to their original state.
For the initial synchronization, the following order should be used:
| Order | Service/resource | Explanation |
|---|---|---|
| 1 | Exchange Online | The mailbox stores many resources from other services, such as Teams chats, meetings, and so on. In many ways, it serves as the central hub for all other services. |
| 2 | OneDrive for Business | OneDrive can be used both on its own and through Teams to share links. To resolve any dependencies on Teams, the OneDrive sites must be migrated first. |
| 3 | Teams-Räume | Teams channels use their own storage area in SharePoint Online and are therefore not dependent on SharePoint. Even if SharePoint libraries are integrated into Teams, the links will no longer work regardless of the order, since the paths must be manually adjusted to the new structure. |
| 4 | Gruppen (security, distribution) | The groups themselves were created in advance to facilitate mapping between the previous and new environments. In this step, the group memberships are now synchronized. As a result, the permissions granted through these groups should take effect from this point on, and sending emails to distribution lists should work without any issues. |
| 5 | SharePoint Online | Once the permission groups for SharePoint Online (and other services, if applicable) have been properly configured, the document libraries and any other page types can be migrated. If advanced SharePoint permissions (similar to traditional file permissions on a file server) have also been configured, these can now be manually replicated if the migration solution is unable to transfer them. |
| 6 | Teams chats | If Teams chats are to be migrated, it’s best to transfer them toward the end of the process. Synchronizing many individual Teams chats is very resource-intensive. For this reason, it’s also recommended to migrate only chats up to a specific cutoff date, rather than all chats. The reason for this is that this process migrates all chats, including those that a user may have already deleted. These chats are not actually deleted, but merely hidden. |
| 7 | Other services | Once all critical services have been migrated, the migration of other services—which typically require manual follow-up work—can begin. These include, for example, Power BI, Power Apps, Flows, and Purview solutions. |
Suspend EWS throttling and plan appropriate batch sizes!

Mailbox migrations still represent a bottleneck due to various factors:
- Many small items—as is common in mailboxes—significantly slow down data transfer.
- Microsoft severely throttles connections to Exchange Online via the EWS protocol (while this limit can be increased through the Admin Center, it only results in a marginal improvement).
- Mailbox folders officially support a maximum of 5,000 items. However, some users store a very large number of items in individual folders, which further slows down the migration.
Even though temporarily suspending the EWS throttling provides only a small benefit, it should still be done. This at least ensures that Microsoft does not activate any further throttling measures that could further slow down the migration. However, it’s important to note that the throttling can be suspended for a maximum of 90 days. After that, it must be reconfigured. This can easily be overlooked, especially during longer migration periods, and must therefore be scheduled as a regular task.
Furthermore, for larger migrations (500 or more mailboxes), you should not synchronize all mailboxes at once, as throttling may occur again. Microsoft itself recommends observing the following limits (when using the Migration Orchestrator):
- 2,000 mailboxes per migration batch
- A maximum of 300 concurrent migrations
- A maximum of 100 concurrent batches
If other solutions are used, the manufacturer's respective limits and recommendations should be followed.
Be sure to observe the restrictions associated with confidentiality classifications!

Information protection labels in Exchange Online or Purview confidentiality labels may be used in the current environment. If these need to be transferred, the migration solution should support this accordingly. Therefore, close attention must be paid to
- whether the migration solution actually supports the migration of labels or whether only labels available in the target environment can be applied,
- what preparatory or post-migration tasks are required for the migration (e.g., due to overlapping designators),
- and whether Microsoft Support must be consulted for the transfer of the tenant key.
This last point, in particular, is essential for determining the potential migration date, since Microsoft Support has stated that it takes approximately 4 months to complete the transfer. However, because Microsoft Support is not allowed to open and keep tickets open much further in advance, this also serves as a strict deadline for the transfer.
If it makes sense, combine products!

The table and the detailed explanations that follow make one thing clear: there is currently no solution that can fully meet all the requirements of a Microsoft 365 migration. Accordingly, there are two possible approaches to addressing this:
- Accept the limitations that arise when choosing a specific solution and, where possible, develop workarounds.
- Combine multiple solutions and leverage the respective strengths of each.
With the second approach, however, it’s important to note that implementing an additional solution will incur significant extra costs. Unfortunately, with most providers, individual features are not available as add-ons but only as part of the full license.
Accordingly, it is important to weigh whether the use of an additional solution and the associated costs outweigh the benefits, or whether it should be considered more of a “nice-to-have” rather than a necessity.
Liked this article? Share it!


