Sharepoint Online - Site backup / export

Occasional Contributor



What options do we currently have to export a Site in Sharepoint Online?

Scenario is, need to export an existing Production site to reuse/import it to our testing environment under a different site collection on Sharepoint Online.


I'm unable to use the "Save as template" option since the site is using the Publishing feature.


How is everyone getting around this Sharepoint Online duplicate or copy an existing site to another location for Testing ect ??



13 Replies

You could use a 3rd party tool in your case, like Sharegate

best response confirmed by John Tsalamandris (Occasional Contributor)
Third party tool is the best way to go...taking into account you might be exporting a small site in size, you could try to see if using a trial tool is enough for you even I recommend you to invest some money here (Sharegate and Metalogix are cood choices)

@Juan Carlos González Martín thanks


I gather its still not possible to use Powershell (with the Sharepoint Online addin) and run Export-SPWeb/Backup-SPSite commands to accomplish that?  


No, it's not...those PowerShell cmdlets are for SharePoint OnPremises

Hi John,

How much contents you want to migrate from one site to another, if contents are less then you can create new target site and Import list/library templets on target site.

May be you can try disable the publishing feature and try again save as template.

Lastly using metavis migration tool you can move site one site collection to another.







Hi  - Create new target site and import list and library using template if contents or less. Or use metavis tool for migration.

I recently did a powershell script to migrate all documents libraries items from one sharepoint online site to another.
But the powershell script use CSOM libraries to copy all items...
Is this approach ok? or what else we can do to achieve this? Because I tested the script within 2 document libraries from 1500 and it duration was tooooo long, like 4 hours...
The whole site size is about 125GB so I suppose that mostly are the documents that mmust migrate.

You can use any other third party migration tool or manually migration. If PowerShell scripts achieved your requirement then convert into a job and you are good to go with this. 

Hi John,

1) ShareGate
2) if only template then PnP powershell


Hi @John Tsalamandris,


A bit late, but I've just posted an article you may find interesting for your search.  

SharePoint Online Backup Strategies for a Cloudy Day

@John Tsalamandris 

Microsoft right now does not have any backup option when the files are removed from the bins. Although they allow third-party applications to partner with them and provide the type of services you are looking for. I searched for some solutions myself and found the following list. In no particular order,







@John Tsalamandris 


Can you explain what specifically you need to move down, into an on-premises environment, for testing? A few thoughts.


1. If it's customizations that you're testing, backup/restore isn't really a true dev pattern. Start thinking about building/deploying your customizations via DevOps models. Build the customization, and then deploy it, where ever it needs to go. Yes, I know this is more work, but it is the proper way to build/test/deploy customizations. 

2. SPO and SP Server are different products, although very similar. Moving between the two for testing purposes may create hidden issues, or have compatibility issues. (That's likely why there are no back/restore PowerShell commandlets that work between the two)

3. Moving content (documents) generally isn't necessary for testing purposes. Consider that, if/when you leverage a 3rd party migration tool. 

@John Tsalamandris 


Hi, a bit late to the party but just run into the same problem recently and after research I did collect the list of possible solutions for SharePoint data back-up/archiving/exporting:


* Simply export data into Excel from SharePoint list view (no attachments, only metadata, wouldn't work for large lists, manual work required)
* Apply information management policies to a list (not available by default for SharePoint Online, limited destination optionality)
* Use Export-SPWeb SharePointServer cmdlet (works only for Sharepoint Server, wouldn't work for SharePoint Online)
* Create workflow (MS Flow) which can move the items from the List to a chosen destination (be aware 5000 search limitation is still there)
* Write PowerShell script and run is by Windows Task Scheduler (time consuming and, you know, PowerShell)
* Create a custom .NET Application using CSOM (.NET Framework required) and run it as a Windows Service (development is required)
* Create custom WEB application using SharePoint JavaScript Client Object Model or 3-rd party libraries like SharepointPlus
* If you have MS SQL Server you could create SQL Server Integration Services (SSIS) package, read list items as a OData source and run it as a job
* Use 3-rd party tools like to automate lists data archiving and export by schedule with attachment. The app will work for large lists with no 5000 limitations.