Learn SharePoint Tenant to Tenant Migration With Expert Tips
When it comes to Microsoft 365 products none can match the sheer diversity that SharePoint sites provide. Not only is it a service in itself, but it also supports other parts of Microsoft 365 environments like Teams and OneDrive. Therefore, any time users have to perform a SharePoint tenant to tenant migration, no stone can be left unturned. Moreover, an unplanned approach results in a failed migration during the best case and permanent data loss in the worst case. So whenever an organization faces such a task, they should not hesitate to seek guidance from industry experts. Which is exactly what we provide here, and that too in a simplified manner. Let’s get going with an overview of the entire manual process.
Table of Contents
- Overview of SharePoint Tenant to Tenant Migration
- Prerequisites for SharePoint Online Migration
- Alternative to the Manual Method
- Automated Steps
- Post Migration Tasks
Points to Cover in a SharePoint Tenant to Tenant Migration
Here we present the tasks that are to be performed and provide a brief description of them as well.
- Complete Pre-requisites: Migration is a complicated task that needs robust preparation. Therefore, administrators must fulfill all the necessary prerequisites that align with the organizational requirements.
- Stage 1. Connect to the source and the target tenants: for any successful migration endpoints must be linked to each other beforehand.
- Stage 2. Establish trust between the source and the target tenant: The tenants should not just be connected but a trust must exist between them as well.
- Stage 3. Verify trust has been established: As the name suggests, this step deals with the task of trust verification on both ends.
- Stage 4. Pre-create users and groups: The Target Tenant must have all the preparations ready before the data arrives.
- Stage 5. Prepare identity mapping: Map the users, sites, groups, and all other custom applications present on the source SharePoint site.
- Stage 6. Start Cross-tenant SharePoint Online migration: Once all preparations are complete, start the main task of data migration.
- Satisfy the Post Migration Constraints: During the finale of SharePoint Tenant to Tenant Migration via manual means, users need to take care of all things that are no longer required. Like trust relations, links, etc.
Prerequisites for Cross Tenant SharePoint Online Migration
This is not a live service admins have to register their organization at
Ensure that you do not forget to include all of the requested information.
- Download or update to the latest version of Microsoft SharePoint Online Powershell.
- Disable the Microsoft Purview Customer Key enabled
- Confirm that the source SharePoint tenant does not have Service encryption with Microsoft Purview Customer Key enabled
- Set all source SharePoint sites to Read/Write mode.
Also Read: The Complete Guide to Office 365 Backup Best Practices in 2023
For easier understanding, the manual method is split into various stages; go through them one by one in sequential order.
Stage 1. Create a Connection Between Tenants
- Step 1. Login to the SharePoint Management Shell with the admin credentials of either SharePoint Online admin or Microsoft 365 Global admin.
- Step 2. Be sure to have the source tenant URL and type it in along with the following Powershell command:
Connect-SPOService -url https://<SourceTenantName>-admin.sharepoint.com
- Step 3. After this, a prompt appears asking you to log in and verify the source tenant. At that time, use your admin username and password to complete the task.
- Step 4. Repeat steps 2 and 3 for the target tenant as well, but remember to use the target URL and admin credentials in place of the source.
The connection is just one piece of the puzzle and is thus not enough to start the migration. As SharePoint tenants contain a lot of business-critical data, a trust factor needs to be established between tenants. Let’s look at how to do this via PowerShell commands.
Stage 2. Set Up Trust Between the End Points
- Step 1. Obtain the URLs of both the source and target via this command.
- Step 2. To send a trust request on behalf of the source URL, execute the following command.
Set-SPOCrossTenantRelationship -Scenario MnA -PartnerRole Target -PartnerCrossTenantHostUrl <URL-of-TARGETCrossTenantHost>
- Step 3. Go to the source tenant’s PowerShell window and ask for a similar trust by executing the following command:
Set-SPOCrossTenantRelationship -Scenario MnA -PartnerRole Source -PartnerCrossTenantHostUrl <URL-of-SOURCECrossTenantHost>
Here, the “PartnerRole” parameter signifies the role of the tenant to whom the trust request is being sent. It can have one of two values “Source” (used when sending a request from the target tenant) or “Target” (used when sending a request from the source tenant).
Once the trust request is sent, all users who have the global admin role will receive a message in the following format. Both the source and target admins receive the message.
Subject: SPO Tenant [https://a138edad9050849mnaus220390-my.sharepoint.com/] [setuporupdate] Organization Relation [Scenario=MnA, Role=Source] with us
Message: SPO Tenant [https://a138edad9050849mnaus220390-my.sharepoint.com/] [setuporupdate] Organization Relation [Scenario=MnA, Role=Source] with us
Next up, we need to verify that the trust request has been accepted and verified at both ends of the migration.
Stage 3. Verify Trust Request for SharePoint Tenant to Tenant Migration
Similar commands must be run on both sides so there is the command.
- Step 1. Within the source tenant execute:
Verify-SPOCrossTenantRelationship -Scenario MnA -PartnerRole Target -PartnerCrossTenantHostUrl <URL-of-TARGETCrossTenantHost>
- Step 2. Likewise on the target tenant run:
Verify-SPOCrossTenantRelationship -Scenario MnA -PartnerRole Source -PartnerCrossTenantHostUrl <URL-of-SOURCECrossTenantHost>
Also Read: Complete Microsoft Teams Migration Checklist to Ensure Safe Data Transition
Here, the admin receives one of the following values.
- NotEstablished: Signifies that a local trust request has not been sent.
- NotEstablishedByPartner: Means the partner did not send a request from their end.
- DormantByPartner: Trust is not verified but is still within the expiry period of 7 days.
- CouldNotContactPartner: Couldn’t contact the partner to determine the status.
- GoodToProceed: Connection is accepted at both ends, and the user can move ahead.
Stage 4. Pre-Creation of Users and Groups on the Target
Step 1. Pinpoint all users and groups that need to be shifted.
- The list should contain all the active users present on the SharePoint database, along with the sites.
- From there, make a separate table for Microsoft 365 Groups and Group-connected SharePoint sites present in the current migration.
Step 2. While answering how to migrate SharePoint online to another tenant, admins must Pre-create all users, groups, and Microsoft 365 groups present on the target tenant. Here is a list of guidelines to follow while attempting this task:
- Pre-create necessary users/groups in the target tenant’s directory.
- Create new user identities for all users who will be migrating to the target tenant.
- Assign the appropriate SharePoint licenses to all users whose SharePoint accounts are migrating to the target tenant.
- Create new guest identities in the target tenant for any users who remain in the source tenant but need access to resources migrating to the target tenant.
- Add pre-created users as members of any appropriate security or unified groups before starting the SharePoint migration.
- If a user or group name already exists in the target tenant, create a new one with a different name and make a note of it for the next step.
- Restrict SharePoint site creations in the target tenant to prevent users from creating SharePoint sites.
Step 3. PowerShell commands for the pre-creation of Microsoft 365 groups connect to SharePoint sites
- Visit Exchange Online Management Shell, sign in with either Exchange Online or Microsoft 365 Global admin credentials. Target tenant passwords need to be typed separately when prompted. Use this PowerShell command.
Connect-ExchangeOnline –UserPrincipalName <YourUserPrincipalName>
- Set up the right Microsoft 365 groups that match the access type of the same Microsoft 365 group in the original workplace. Use this PowerShell command
New-UnifiedGroup -DisplayName <DisplayName-of-TargetGroup> -Alias <Alias-of-TargetGroup> -AccessType <Private|Public>
Stage 5. Mapping and Identification of all Stakeholders
- Step 1. Create the identity mapping file
The CSV file needs six separate columns, three of which include details about the source while the remaining contain the data for corresponding target values. Moreover, you can include all users/Groups/M365 Groups data in a single CSV.
To fill in the information correctly, visit the respective Azure portal and copy-paste the IDs from there.
- Step 2. Upload the identity map
To upload the identity map to the target tenant, you can execute the following command. Make sure to specify the complete path and filename of the CSV file containing the identity mapping data.
Add-SPOTenantIdentityMap -IdentityMapPath <youridentitymap.csv>
Stage 6. Start Cross Tenant SharePoint Online Migration
- Step 1. Make sure that you have completed the verification of the compatibility status. Admins can continue with SharePoint tenant to tenant migration if the status is either Compatible or Warning on their source tenant. Execute:
Get-SPOCrossTenantCompatibilityStatus –PartnerCrossTenantHostURL [Host name of Target tenant]
- Step 2. To start the migration, a SharePoint Online Admin or Microsoft 365 Global Admin of the source tenant must run the following command:
Start-SPOCrossTenantGroupContentMove -SourceSiteUrl <…> -TargetSiteUrl <…> -TargetCrossTenantHostUrl| <…>
Here is a description of the parameters involved in the above PowerShell command.
- SourceSiteUrl: Entire URL of the SharePoint site present in source tenant.
- TargetSiteUrl: Complete URL of the SharePoint site present in Target tenant.
- TargetCrossTenantHostUrl: Cross-tenant host URL of the target tenant.
- Step 3. The target tenant Admin can find out the TargetCrossTenantHostUrl by running Get-SPOCrossTenantHostUrl on their respective tenant.
- Step 4. To check the current migration status use the following command:
Get-SPOCrossTenantUserContentMoveState -PartnerCrossTenantHostURL [SharePointURLofTarget]
It results in one of the following states:
- NotStarted: The migration is yet to begin.
- Scheduled: It is part of the queue and will start on schedule as soon as a slot opens.
- ReadytoTrigger: Pre-flight stage of the Migration is complete and it will commence shortly.
- InProgress: The migration is in progress in one of the following states:
- Success: The Migration finished successfully.
- Rescheduled: The migration may be incomplete and has requested another pass.
- Failed: The migration could not be completed.
A Simpler Alternative to the Manual Mayhem
Experts across the world acknowledge the difficulties present in the manual method as a result, they recommend the one and only Systools SharePoint Migration Tool. The tool is the best answer to all user’s woes regarding SharePoint content database transfer. With its simple UI and state-of-the-art algorithms
Some of the salient features of the tool are as follows:
- Dedicated filters to assign workloads, timelines, and priorities
- Variety of mapping methods (Fetch, Import, Download) to choose from.
- Separate section for adding users and sites to avoid data duplication.
- Real-time migration tracking within the dashboard.
- Check the end result with the help of an automatically generated report.
- Provides three separate re-run operations to cover all migration scenarios.
Many other user-friendly features await all those who choose the tool as their migration partner. Now let’s see how easy it is to set up and migrate SharePoint data with the help of this tool.
Steps to Use the Automated Utility
Step 1. Download the Sharepoint Utility on your PC, and Open it to select Office 365 as both the source and target.
Step 2. Scroll down until you see the Sites workload, mark the box next to it, and apply the appropriate date filter.
Step 3. Go to the Source tab, add the necessary admin-level credentials for your SharePoint service, validate, and repeat the same step for Target as well.
Step 4. Then comes the mapping screen. Select your preferred way and begin mapping for all the active users, then validate, and likewise map and validate SharePoint sites as well.
Step 5. Once all users and sites are visible, validated, and assigned their respective priorities, all that is left is to click the start migration button.
The tool completes the rest of the migration on its own and sends the admin a notification when it’s done.
Post Migration Tasks to Perform
For the users who opted for a manual approach, some post-migration steps are necessary to avoid additional complexities.
- Step 1. Removing trust relationship
Not deleting the trust connection after a successful migration serves as a security vulnerability. Therefore, once the migration is done and dusted, the first step should be to terminate the trust relationship altogether. For this too, PowerShell commands must be used.
To end the trust relationship originating from the source towards the target tenant
Remove-SPOCrossTenantRelationship -Scenario MnA -PartnerRole Target -PartnerCrossTenantHostUrl <URL-of-TARGETCrossTenantHost>
To end the trust relationship originating from the target towards the source tenant.
Remove-SPOCrossTenantRelationship -Scenario MnA -PartnerRole Target -PartnerCrossTenantHostUrl <URL-of-SOURCECrossTenantHost>
- Step 2. Eliminate any and all redirect links post-migration using the following command.
- Step 3. Temporarily shifting the source SharePoint to a read-only mode.
Through this guide on SharePoint tenant to tenant migration, we have established that the manual method involving PowerShell is too difficult and time-consuming. Therefore, as an alternative, we provide a world-renowned utility that has proven its worth in various real-life migration scenarios. We urge all users to follow their peers and trust professional software for easy and step-by-step data transfer.