How to Migrate SharePoint Online Content to Another Tenant: All Available Options


Migrating content between SharePoint Online tenants can be a daunting task, especially when dealing with large amounts of data, metadata, and permissions. Whether you’re moving due to a merger, acquisition, or just restructuring, choosing the right migration approach is crucial.


1. Manual Download & Upload (Basic Method)

πŸ“Œ Best for: Small-scale migrations (document libraries only)

The simplest way to move files is by manually downloading them from the source SharePoint site and uploading them to the destination. While this method is straightforward, it comes with significant limitations.

βœ… Pros:

  • No extra tools or setup required
  • Works well for small document libraries

❌ Cons:

  • Metadata (Created By, Modified By) is lost
  • Permissions, version history, and workflows are not transferred
  • Time-consuming and not scalable

2. ShareGate (Third-Party Tool – Paid)

πŸ“Œ Best for: Full-scale SharePoint migrations (libraries, lists, metadata, permissions, workflows)

ShareGate is one of the most popular third-party tools for SharePoint migration. It provides a user-friendly interface and advanced options to retain metadata, permissions, and version history.

βœ… Pros:

  • Preserves metadata, permissions, and version history
  • Supports Teams and OneDrive migration
  • No scripting required – simple UI

❌ Cons:

  • Requires a paid license
  • Does not migrate Power Automate flows

3. Microsoft Migration Manager (Built-in Tool – Free)

πŸ“Œ Best for: Large-scale document library migration

Microsoft offers Migration Manager, a free tool in the SharePoint Admin Center. It is great for moving large numbers of files but does not support lists or workflows.

βœ… Pros:

  • Official Microsoft-supported tool
  • Handles large file migrations efficiently

❌ Cons:

  • Does not migrate lists, metadata, permissions, or workflows
  • Only supports document libraries

4. PowerShell with PnP (Scripted Approach)

πŸ“Œ Best for: Migrating lists and document libraries with metadata using automation

For those comfortable with scripting, PowerShell and PnP (Patterns & Practices) PowerShell provide a flexible way to migrate content.

Example: Export and Import List Items
# Connect to source tenant
Connect-PnPOnline -Url "https://source.sharepoint.com/sites/MySite" -Interactive
Get-PnPListItem -List "Documents" | Export-Csv "Documents.csv"

# Connect to destination tenant
Connect-PnPOnline -Url "https://destination.sharepoint.com/sites/MySite" -Interactive
Import-Csv "Documents.csv" | ForEach-Object { Add-PnPListItem -List "Documents" -Values $_ }

βœ… Pros:

  • Retains metadata and lookup fields
  • Fully automated process

❌ Cons:

  • Permissions and version history are not preserved
  • Requires PowerShell scripting knowledge

5. Power Automate (Microsoft Flow)

πŸ“Œ Best for: Migrating documents and list items incrementally

Microsoft Power Automate can be used to create a flow that moves documents or list items from one tenant to another.

βœ… Pros:

  • Supports incremental migrations
  • Good for automating repetitive transfers

❌ Cons:

  • Does not migrate permissions or version history
  • Slower for large-scale migrations

6. API-Based Migration (Graph API / REST API)

πŸ“Œ Best for: Developers needing custom automation for migration

For organizations with unique requirements, using the Graph API or REST API can be a powerful solution.

Example API Call for Copying Files
POST /sites/{sourceSiteId}/drives/{sourceDriveId}/items/{sourceItemId}/copy

βœ… Pros:

  • Fully customizable and automated
  • Works well for large migrations

❌ Cons:

  • Requires development expertise
  • Rate limits apply, which may slow down large migrations

7. Third-Party Migration Tools

βœ… Pros:

  • Retains metadata, permissions, version history, workflows, and security settings
  • Advanced logging and reporting

❌ Cons:

  • Paid licenses required

Comparison Table: Which Migration Method is Right for You?
MethodDocumentsListsPermissionsMetadataVersionsWorkflowsEase of UseCost
Manual Copy-Pasteβœ…βŒβŒβŒβŒβŒβ­β­β­β­β­Free
ShareGateβœ…βœ…βœ…βœ…βœ…βœ…β­β­β­β­Paid
Microsoft Migration Managerβœ…βŒβŒβŒβŒβŒβ­β­β­Free
PowerShell (PnP)βœ…βœ…βŒβœ…βŒβŒβ­β­β­Free
Power Automateβœ…βœ…βŒβœ…βŒβŒβ­β­Free
Graph API / REST APIβœ…βœ…βŒβœ…βŒβŒβ­β­Free
AvePoint / Quest / CloudMβœ…βœ…βœ…βœ…βœ…βœ…β­β­β­β­Paid

Final Thoughts: What’s the Best Migration Approach?

πŸ”Ή For simple document transfers β†’ Microsoft Migration Manager or Power Automate
πŸ”Ή For full-scale migrations (Lists, Libraries, Metadata, Permissions, Versions) β†’ ShareGate
πŸ”Ή For custom scripting automation β†’ PnP PowerShell
πŸ”Ή For API-based migration β†’ Graph API / REST API
πŸ”Ή For enterprise-grade migrations β†’ AvePoint, Quest, or CloudM

Migrating SharePoint content between tenants doesn’t have to be overwhelming. By choosing the right tool and approach for your needs, you can ensure a smooth and efficient migration.


Accounting.js Branding Cascading StyleSheet Cheat Sheet Competitors Connect Content Type CSS Currency Date Formats Dates Flows Hillbilly Tabs HTML5 Javascript JavsScript JSON Format View NodeJs Numeral.js O365 Office 365 OneDrive Out Of The Box Overflow Permissions PnP PowerAutomate Power Automate PowerShell Pwermissions ReactJs Rest Endpoint Send an HTTP Request to SharePoint SharePoint SharePoint Modern SharePoint Online SharePoint Tabs ShellScript SPFX SPO Styling Sync Teams App Transform JS TypeScript

Leave a Comment

Your email address will not be published. Required fields are marked *