Copy OneDrive Files to Another OneDrive Account Using 5 Ways
Summary – In this guide, I am going to outline five proven methods that can help you seamlessly copy OneDrive files to another account, in the event of employee transitions, organizational restructuring, rebranding, or migration scenarios. So, without any further discussion let’s dive into it.
OneDrive for Business is a popular cloud storage service offered by Microsoft that allows users to store, share, and access their files from anywhere. With the daily operations, you might encounter several situations such as employee turnover, position changes, or subscription upgrades. Where you might need to transfer OneDrive files to another account. We got a similar user query on a community page, let’s start with the user query and understand the real-life situation:
User Query:
How do I automatically copy OneDrive files to another OneDrive account?
I need some advice on automating the process of copying newly created files from one user’s OneDrive account to another within the same Office 365 tenancy. As an admin, I have access to all accounts, but I don’t have the users’ credentials. I tried using Power Automate, but it requires logging into each OneDrive account individually, which is impractical. Additionally, I’m not technically proficient with complex scripting. Is there a simpler, more efficient way to perform this task in Office 365?
When an employee leaves the organization it becomes crucial to keep their data safe for compliance or legal purposes. By default, OneDrive for Business data is retained, when you disable an account, as per your Microsoft 365 retention policy setup. Eventually, it deletes the data forever when the retention period is reached. Hence it becomes a critical task to transfer files from OneDrive to another account before they get deleted.
Table of Content
Different Methods to Copy OneDrive Files to Another OneDrive Account
There are a few methods that you can use to perform this operation, I will start with – using Admin Center, Download & Upload, Power Automate, PowerShell, and Automated Software. While the manual methods come with prerequisites and also have several shortcomings, however, if you opt for the software then you can easily overcome them. Now, let’s discuss these solutions.
Method 1. Quick and Reliable Approach for Copying Files from OneDrive to Another Account
When it comes to the most reliable and professional way of copying OneDrive files to another OneDrive account, I always suggest the SysTools OneDrive to OneDrive Migration Tool, it is the only prime choice of Office 365 administrators. It is a highly advanced cloud migration and management software that assists the transfer of data between OneDrive for business accounts easily, and not just that.
It simplifies transferring files by making everything automatic at just one click away, and it isn’t just specific to OneDrive since it also supports different migration scenarios such as Office 365 migration, Teams migration, and SharePoint migration. Let’s discuss the most prominent features in brief.
Some Features of this Software That Make It One Stop Solution
- This utility migrates several users’ OneDrive data using the Admin account in a single go.
- The utility offers a delta migration option to transfer newly arrived items.
- Offers a modern Date-based filter option for selective data transfer.
- Supports various document items such as the photo, doc files, PDF files, etc.,
- It maintains the data/file integrity and hierarchy while migrating to another account. It ensures 100% safe, secure, and error-free data migration every time.
Must Read: Migrate Office 365 Shared Mailbox Data to User Mailbox – Know Procedure
Step By Step Detailed Working Guide to Transfer OneDrive for Business Files to Another Account
Follow these below-listed steps with respective screenshots carefully to execute this operation in a modern way with 100% data security and Integrity:
Step 1. In the very first step, download the utility from the above button and install and run it on your computer. Select Office 365 as the source and destination migration platform.

Step 2. Select Document enable Migrate Document Permissions and allow the Use Group Mapping option. Use the date filter if required to migrate selective data and then click on Next to transfer OneDrive files to another account.

Step 3. Now, log in with the source and destination Admin credentials such as Admin Email and Application ID. Then validate permission and Click Next to move OneDrive data to another account.

Step 4. Here, create user group mapping between source and destination (if you want to migrate OneDrive data). For this task, you have three options to use. Let’s use an import CSV file. Click on Download Template enter source and destination users and move to validate required permissions.

Step 5. Once a user mapping is created, validate it by clicking the validate button. Then click on the start migration button to migrate OneDrive to another account.

Try Before You Buy
Take advantage of the free demo version to assess tool functionality. Migrate a limited set of accounts to evaluate compatibility and performance. Moreover, the demo version can migrate OneDrive for Business to another tenant of two users’ accounts for free.
You do not need to pay anything for these two accounts. In this way, you can self-verify the workings of this utility before purchasing the full version.
Method 2. Transfer OneDrive Files to Another Account Via the Admin Center
Note: Before heading forward, you need to ensure you possess SharePoint administrative privileges to configure OneDrive settings. Because it is a part of the SharePoint suite and a file experience for the SharePoint server, it offers content services for all files in Microsoft 365, including files you work with in Teams, Yammer, and Outlook.
Step 1. Log into the Microsoft Admin Center by visiting this – https://admin.microsoft.com/#/users on your browser. You will find a list of active users on the main screen.
Step 2. Search for the desired user account, for demonstration purposes, we are taking the example of a Test MJ user. Click on the User name and navigate to the OneDrive tab.
Step 3. Now, navigate to Get access to files and click on the Create link to files.
Step 4. It will generate a link to the user’s OneDrive files. Click on the provided link to access the user’s OneDrive location.
Step 5. Here you can see the list of files and folders available in the source user’s OneDrive.
Step 6. Select all files and folders by clicking to the left of the Name column or choose specific files and folders. Click Download at the top. The files will be downloaded as a .zip file to your downloads folder.
Step 7. Now extract the files and folders from the .zip file.
Step 8. Following the same step access the target OneDrive for Business account in the admin center. For demonstration purposes, we are taking the Test User account.
Step 9. Similarly, Click on Create a link to view and edit the user’s OneDrive files. Click on the link to access the target Test User OneDrive account.
Step 10. Click on the Add new button, and choose Upload folder. Choose the extracted zip folder and click Upload to transfer OneDrive files to another OneDrive account.
Following the above steps you can easily transfer files to another OneDrive account.
Method 3. Transfer OneDrive for Business Files to Another Account Via Download & Upload
This method is suitable if you have to perform this task for a few numbers of accounts with limited data. It requires you to manually log in to the source account copy files, and then log into the destination account to upload them.
Check out the short steps below:
Step 1. Log into your source OneDrive account:-
Navigate to https://onedrive.live.com/login/ Use the source OneDrive for Business account credentials to log in. Create a folder named Backup. Now select the required files and folders, that you want to migrate. You can select multiple files by holding the “Ctrl” key while clicking.
Step 2. Download selected files and folders:-
Move all these files and folders to the Backup folder. Click Download to download the selected files to your local device. The Backup folder will be downloaded in the .zip. Now Extract the folder and save it as the Backup folder on your local system.
Step 3. Log in to the target OneDrive account:-
Following step 1, browse https://onedrive.live.com/login/ in another browser use the target account credentials, and log in.
Step 4. Upload downloaded files and folders:-
Navigate the Backup folder in your local system. Now upload it by clicking on the Add New >> Folder Upload button.
Following these steps, you can transfer files from one OneDrive to another account but it might seem a repetitive and time-consuming task to you. Moreover, if you have several user accounts, then this approach might not be suitable for you.
However, before getting into the migration process, it is always a good idea to go through a complete pre and post-migration checklist to ensure a smooth and effort-free data transfer. Following the above checklist will facilitate a smooth and efficient transfer of your OneDrive data to another account, mitigating potential data loss or errors.
Note: If you have many data files to download, it might take several hours or days, depending on the internet bandwidth.
Method 4. How to Transfer Files from One OneDrive Account to Another via Power Automate
Instructions in Power Automate:
- Log into the Power Automate portal with an admin/source/destination account.
- On the left-hand side panel, go to Templates.
- In the Template search bar (not the main search bar) type:
“Copy files from one OneDrive for Business account or folder to another”
If you are looking to transfer between two business/enterprise accounts. Otherwise, drop the word “Business” from your search and redo the search. - Select any one of the 4 templates from the results (they are all the same; our recommendation would be to go with the one with the highest number).
- Scroll down a bit until you see the option:
“This flow will connect to: OneDrive Sign in”
Click on Sign in and enter the source account credentials, then press Continue. - As soon as the Flow construction page loads, you will see a red caution sign with “Invalid parameters”.
No need to worry—this appears because you have not yet assigned a source folder. - Simply click on the flow box. In the Unique Folder Identifier bar, use the folder icon to select the particular folder whose items you want to transfer. Otherwise, you can also use “/”.
This value tells the flow to run at the root level, covering every item in the source OneDrive account.
Advanced Settings of Flow Execution and Scheduling
Under Advanced Parameter Options, switch the Include subfolders flag to Yes.
This is done to recreate the nested folder structure.
For example:
markdown
CopyEdit
MyFolder/
├── File1.txt
├── Subfolder1/
│ ├── File2.txt
│ └── File3.txt
└── Subfolder2/
└── File4.txt
Which would otherwise just copy the parent, and your content will look like (missing most of the actual data):
CopyEdit
MyFolder/
├── File1.txt
├── Subfolder1/
└── Subfolder2/
- Keep the Infer Content Type flag as Yes (its default value).
This is how Power Automate determines the content type (e.g., Word document, Excel spreadsheet, image, PDF) of the files it’s processing. - Next, there is the “How often do you want to check for items?” setting:
- Interval*: The number part of the frequency (currently 1).
- Frequency*: The time unit (select from: Second, Minute, Hour, Day, Week, Month). Together with Interval, this sets how often the flow runs (e.g., Interval: 1, Frequency: Hour means every hour).
- Time zone: The time zone for the schedule.
- Start time (Optional): The specific date and time for the first run, in ISO 8601 format (YYYY-MM-DDTHH:mm:ssZ). If blank, the flow starts immediately upon activation, and then follows the schedule.
- Once all settings are complete, collapse the panel and go to the Create file box.
- Hover over the chain link icon at the bottom right corner of the box.
- Click on Change connection, then Add new, and complete the sign-in with the target account.
- Redo folder path selections; let File Name and File Content remain in their default path.
- Collapse the left pane.
- Save the Flow.
- Hit Test.
To trigger it add a file/folder in the root/path you mentioned in the source.
Soon, you will see that a copy of the same data will be recreated in the target.
Shortcomings of using Power Automate –
- Need to possess the actual account credentials for both users.
- Only triggers when the data enters.
- One-to-one account transfer.
- Multiple uses threaten credential leakage.
- Basic template: the original file/folder stays in the source account.
Method 5. Use PowerShell Script to Carry out the Transfer Between OneDrive
# Run PowerShell as administrator and install necessary modules
Install-Module MSOnline
Install-Module SharePointPnPPowerShellOnline
# Prompt for user input
$departingUserEmail = Read-Host "Enter the departing user's email"
$destinationUserEmail = Read-Host "Enter the destination user's email"
$adminUsername = Read-Host "Enter the Global Admin username"
# Get admin credentials and connect to services
$adminCredentials = Get-Credential -Credential $adminUsername
Connect-MsolService -Credential $adminCredentials
# Get initial domain and SharePoint Admin URL
$initialDomain = (Get-MsolDomain | Where-Object {$_.IsInitial -eq $true}).Name.Split(".")[0]
$sharePointAdminURL = "https://$initialDomain-admin.sharepoint.com"
# Format OneDrive URLs
$departingOneDriveSite = "https://$initialDomain-my.sharepoint.com/personal/$($departingUserEmail -replace '[^a-zA-Z]', '_')"
$destinationOneDriveSite = "https://$initialDomain-my.sharepoint.com/personal/$($destinationUserEmail -replace '[^a-zA-Z]', '_')"
# Connect to SharePoint Online
Connect-SPOService -Url $sharePointAdminURL -Credential $adminCredentials
# Grant admin access
Set-SPOUser -Site $departingOneDriveSite -LoginName $adminUsername -IsSiteCollectionAdmin $true
Set-SPOUser -Site $destinationOneDriveSite -LoginName $adminUsername -IsSiteCollectionAdmin $true
# Connect to departing user's OneDrive
Connect-PnPOnline -Url $departingOneDriveSite -Credentials $adminCredentials
$departingUser = Get-PnPSiteCollectionAdmin | Where-Object {$_.LoginName -match $departingUserEmail} | Select-Object -First 1
$departingUserTitle = if ($departingUser) { $departingUser.Title } else { "Departing User" }
# Define paths
$departingOneDrivePath = "/personal/$($departingUserEmail -replace '[^a-zA-Z]', '_')/Documents"
$destinationOneDrivePath = "/personal/$($destinationUserEmail -replace '[^a-zA-Z]', '_')/Documents/$departingUserTitle's Files"
$destinationOneDriveSiteRelativePath = "Documents/$departingUserTitle's Files"
# Get items from departing user's OneDrive
$items = Get-PnPListItem -List Documents -PageSize 1000
# Log large files
$largeItems = $items | Where-Object {[long]$_.FieldValues.SMTotalFileStreamSize -ge 261095424 -and $_.FileSystemObjectType -eq "File"}
if ($largeItems) {
$largeItems | ForEach-Object {
"$(Get-Date) - Size: $([math]::Round($_.FieldValues.SMTotalFileStreamSize / 1MB,2)) MB Path: $($_.FieldValues.FileRef)"
} | Out-File C:\LargeFiles.txt
Write-Host "Large files list saved to C:\LargeFiles.txt" -ForegroundColor Yellow
}
# Get files and folders to migrate
$validItems = $items | Where-Object {[long]$_.FieldValues.SMTotalFileStreamSize -lt 261095424 -or $_.FileSystemObjectType -eq "Folder"}
$folders = $validItems | Where-Object {$_.FileSystemObjectType -eq "Folder"}
$files = $validItems | Where-Object {$_.FileSystemObjectType -eq "File"}
# Connect to destination user's OneDrive
Connect-PnPOnline -Url $destinationOneDriveSite -Credentials $adminCredentials
# Create folder structure
foreach ($folder in $folders) {
$path = $folder.FieldValues.FileRef -replace [regex]::Escape($departingOneDrivePath), $destinationOneDriveSiteRelativePath
Ensure-PnPFolder -SiteRelativePath $path
}
# Copy files
$fileErrors = @()
foreach ($file in $files) {
$destPath = $file.FieldValues.FileDirRef -replace [regex]::Escape($departingOneDrivePath), $destinationOneDrivePath
Copy-PnPFile -SourceUrl $file.FieldValues.FileRef -TargetUrl $destPath -OverwriteIfAlreadyExists -Force -ErrorVariable errors -ErrorAction SilentlyContinue
$fileErrors += $errors
}
$fileErrors | Out-File C:\fileErrors.txt
# Revoke admin access
Set-SPOUser -Site $departingOneDriveSite -LoginName $adminUsername -IsSiteCollectionAdmin $false
Set-SPOUser -Site $destinationOneDriveSite -LoginName $adminUsername -IsSiteCollectionAdmin $false
Write-Host "Migration completed!" -ForegroundColor Green
Shortcomings of Manual Methods
Although the manual methods are free to use, they have several downsides. Some of them are as follows:
- If you use the admin center to create shared links of files, you must have admin credentials and the right permissions.
- Using these links anyone can access these files which pose a critical security threat to organizations’ privacy policies as they can be exposed to any cyber crimes and can result in malware, hacking, or cyber-attacks.
- If you have bulk user accounts to migrate, then opting for the admin center or download upload method will take days to complete, Since you have to manually log in to each user account and do the rest of the process as discussed above.
- With the manual methods, you can not apply any date filter for selective data transfer from the source OneDrive account to the target.
- Unlike the automated software, the manual methods do not offer any dashboard to monitor the migration process, leaving admins unaware of any errors that might occur during the migration.
- You can not download migration reports while using manual methods, making it impossible to document these migrations for future reference.
It is evident from the above shortcomings that manual methods can never be an ideal approach for enterprise-grade data migration in OneDrive for business accounts. As it can result in complex data management, time-consuming, cumbersome tasks, and data disintegrity.
Hence, it is always a great idea to switch to the right approach to move OneDrive files to another account, which can simplify the complex migration with ease. Let’s discuss such a solution in the coming section.
Conclusion
As I discussed above, the manual method is quite time-consuming and unsuitable for large data transfers in OneDrive. Hence, by using the software as mentioned earlier, it becomes quite easy for novice users to copy OneDrive files to another OneDrive account.
Migrating OneDrive data to another account can be a simple process if follow the right approach. The manual method is quite time-consuming and it is not suitable for large data transfers in OneDrive as discussed above. Hence, by using the above-mentioned software and following the respective steps, you can easily move your important files, documents, and photos to a new OneDrive account.