Copy a List in SharePoint or Office 365 and keep version History

Copy SharePoint List

Copy a List in SharePoint or Office 365

In this article I will show you 4 ways to copy a List in SharePoint or Office 365.

We’ve all had moments when we’ve had a bulk of documents or items, and needed to simply copy a SharePoint List / Document Library to another List / Document Library, and keep its metadata and version history. Hmm should that be easy?..

Either for a SharePoint migration, SharePoint site clean-up, re-organization of SharePoint content, copying a SharePoint library to SharePoint online, content consolidation, restructure or other various reasons, I have researched and listed here a few ways you can achieve this.

I also included various ways to retain the version history of the documents, if you choose.

Method 1: Copy a List in SharePoint or Office 365 using the Content and Structure Feature (Copies Version History)

One of the simplest SharePoint Out of the Box (OOTB) approaches to Copy a List in SharePoint or Office 365 without losing version history, is to use the Content and Structure feature within SharePoint Site Settings. Please note that this will only become available when you activate the publishing site collection feature.

IMPORTANT: only when files are moved is the version history retained.

However, if you choose to copy the files to the destination Document Library, then the version history won’t copy. Please refer to the two screenshots below. In Figure 1, files were moved using the Content and Structure feature, and in Figure 2, the files were copied over.

In any case, metadata of SharePoint list items / files are retained in the destination.

Below is in the Site Settings page of your SharePoint siteCopy a List in SharePoint or Office 365As you can see I can Copy and Move items within a SharePoint List and Document Library. However, I could not click on a List or Library to move it entirely, I had to manually select the items within it to copy.

Copy a List in SharePoint or Office 365 copy to

Figure 1: (Above) Version history of a file that was moved. All versions are carried over. Nice!
Copy a List in SharePoint or Office 365 versionsFigure 2: Version history of a file that was copied. Only the latest version is brought over.

NOTE: Content and Structure is being replaced by Method 3 below ‘Copy To’ and ‘Move To’ feature.

Microsoft Announcement:

We’re replacing Site Content and Structure in SharePoint Online

MC143382
In September 2018, Site Content and Structure in SharePoint Online was replaced with native File Move and Copy capabilities.
How does this affect me?
SharePoint uses the Site Content and Structure page to manage both the content and structure of your SharePoint site collection. This page is available only when SharePoint Server Publishing Infrastructure is an activated site collection feature.
While this page provides a basic mechanism for managing content and structure, we are investing our development resources to introduce and develop advanced capabilities such as File Move and Copy. In addition, we will continue modernizing the Team Site experience, allowing features like File Move and Copy to enhance content management for your organization.
What do I need to do to prepare for this change?
If your organization is using the Site Content and Structure page, we recommend your organization starts using File Copy and Move. Also you may want to update your internal documentation and training resources. Please click Additional Information to learn more about File Move and Copy capabilities in SharePoint Online.
Method 2: Copy SharePoint Document Library using Windows Explorer Option (Copies Version History)

NOTE: This feature replaces Content and Structure reports ‘Method 1’ above.

SharePoint File Move and Copy

NOTE: This will not copy SharePoint Lists, such as a custom list, Task or Calendar List, it only works with Document Libraries (files). You also need to select all files rather than just selecting the list and copying it over in one selection.

Here, we can use Windows Explorer to copy or move files.

Once again, note that copying the files will NOT bring over the version history.
However, moving the files will retain the version history. I am not sure why but I tried it myself!

Figure 3: Using the Windows Explorer Option within a Document Library

Simply open both the source and destination Document Libraries in the Windows Explorer view, it will pop up when you click ‘Open with Explorer’. Then, you can choose to copy or move the documents by dragging and dropping or right clicking on the file(s) and folder(s) and clicking paste in the destination library Explorer window!

However, if you are copying from a network share or file system (into one of the Explorer windows), any files that have special characters (not supported by SharePoint) will cause the copy to fail, and with any luck, if you are like me, it will likely be right at the end of the copy and you will not know where it failed exactly..

Special Characters

Some special characters which did not work in SharePoint 2010, 2013, 2016 now are supported in SharePoint 2019 and SharePoint Online.

If only uploading files from a network share or the file system (like your desktop), then you can also just navigate to the library and click ‘Upload’

Again, this only works with Document Libraries, not regular lists. I also cannot move/copy an entire SharePoint library in one step, I need to select all files and folders in it manually.

Copy a List in SharePoint or Office 365 Uploading files

NOTE: SharePoint File Path URL Length Limitations

When copying/uploading to a list in SharePoint Online or On-Premises, be aware of the maximum URL path / file length of the files you are copying over (source). If the length gets too long, (i.e. greater than 260 characters), the job will also fail since SharePoint (on-premises) cannot have URLs longer than 260 characters. SharePoint 2019, SharePoint Online, OneDrive and OneDrive for Business this URL length is 400 characters.

Dragging and Dropping Files Limitations

Dragging and dropping files from Explorer into a document library have the following limitations:

  1. You can only drag and drop 100 or fewer items (SharePoint 2013 and older).
  2. The default file size limit is 10 GB for SharePoint Server and 15GB for SharePoint Online when using the modern experience. The file size limit in the classic experience is 2GB.

Copy a List in SharePoint or Office 365 limitations

You can see some references below:

SharePoint Online Limits

SharePoint Server 2013 Limits

SharePoint Copy Folders

Copying folders has always been an interesting challenge when it comes to SharePoint. Uploading or dragging and dropping folders was not possible Out of the Box until mid-2017 for SharePoint Online.

In SharePoint versions that do not support this option, the following two screenshots (Figures 4 and 5) show what happens when a folder is dragged into a Document Library.

Figure 4 shows the popup that appears when using Internet Explorer ,and Figure 5 is the user experience when using Google Chrome. Nevertheless, the result is the same, i.e., dragging and dropping folders is a no-go!

Figure 4: Folders cannot be dragged and dropped into a Document Library. Internet Explorer pops up this error message.

Figure 5: Google Chrome displays this error message when dragging and dropping Folders into a Document Library.

However, don’t lose hope. As mentioned above, an update in 2017 from Microsoft added support for copying folders, using drag and drop, in SharePoint online and that support if not already, can be expected to be carried over into SharePoint 2016 and SharePoint 2019.

Folder support was introduced with the modern document library view update in SPO/SharePoint Online.

For more info see this: Modern Document Libraries in SharePoint

Figure 6

Shows the successful drag and drop of a folder into the very same Document Library using the modern view. Please note that at the time of writing this article, the modern Document Library experience is available only in SharePoint Online but not in any of the on-premise SharePoint versions.

Note on Browser Compatibility:

Something to take note of, is that SharePoint Online inherently uses the browser’s ability to drag and drop folders. So, dragging and dropping folders will only work on Edge and Google Chrome. It is interesting to note that it won’t even work on IE11.

Figure 6: Folders can be successfully copied using the modern Document Library experience.

Please note that with SharePoint Modern Lists (Document Libraries), the upper limits have been increased, more specifically, in terms of the number of files, you can upload MORE than 100 items now as well as folders! I’ve tested with 30+ folders and 300+ files and it worked fine! Please refer to link 2 in additional resources, which illustrates this.

To see more info on Modern Lists, see my complete review of the improvements here: http://www.cognillo.com/blog/new-modern-lists-in-office-365/

SharePoint Copy Folders (for SharePoint 2010, 2013, 2016, 2019 on-premises):

Use the method below, click  “Upload files using Windows Explorer instead”:

Copy Folder to SharePoint

Or else use the ribbon optionCopy Folder to SharePoint

Then simply drag and drop (don’t forget to use ‘move’ instead of ‘copy’ to retain version history) the folders into the Windows Explorer pop up window.

Microsoft also has an article here you can follow:

Upload folders to SharePoint

Method 3:  ‘Copy To/Move To’ in SharePoint 2016, 2019 and SharePoint Online (Copies Version History)

For SharePoint Online, 2016 and SharePoint 2019, there is a feature to ‘Copy to’ or ‘Move to’.

NOTE:

This does not work with SharePoint Lists such as custom lists, Calendar or Task lists. It only works with SharePoint Document Libraries. You also need to select all files rather than just selecting the list and copying it over in one selection.

Despite some of the current limitations, I love this feature because it makes it a lot easier to copy SharePoint Libraries.

Again, if I chose ‘Copy To’, version history is not kept, however, if I chose ‘Move To’, then the version history IS kept.

‘Copy To’ test:

Below I selected multiple items and even a folder, and can use the ‘Copy To’ button to copy the selected files and folders to the same site or to another site. It also allowed me to copy across site collections! This does not work across different tenants or to a different web application or farm.

Below is the source items I chose for this demonstration:

Copy SharePoint Library

I could successfully copy to another SharePoint Library, and it brought over the ‘Last Modified information, however not the ‘Created By’ and also, not the Version History.

Then in the target, it took just 10 seconds to complete the 2 files.

Version History not kept when I chose ‘Copy To’:

SharePoint Copy List Version History
‘Move To’

Successfully copies the version history!

Move SharePoint List

Method 4: Copy a SharePoint list using a List Template

This is an old method most people do know about. It has some serious limitations though and really is only useful if actually creating a SharePoint List Template or have a small list.

You will see this error when you try to save as a list template and the list is too large (larger than 50MB):

“the list is too large to save as a template. the size of a template cannot exceed 52428800 bytes”

Yikes! This may not be as big a deal when working with standard SharePoint Lists, but with Document Libraries, this can prove to be a problem. Especially when you have many versions to copy over, this size limit may be hit very easily.

Increase List Template Size with PowerShell:

To (try to) workaround the size limit, you can use PowerShell to increase this to 200MB:

Add-PSSnapin Microsoft.SharePoint.Powershell
$webservice = [Microsoft.SharePoint.Administration.SPWebService]::ContentService
$webservice.MaxTemplateDocumentSize = 209715200
$webservice.Update()

Other Limitations:

Technically, Publishing Sites does not support this method but there is some workaround by copying the list template URL, but I don’t recommend that.

Also, it requires the source Web site and the destination Web site are based on the SAME site template.

Steps
  1. Go to the List Settings page
  2. Click on “Save list as Template” (if missing, you need to turn of Publishing feature or can try accessing it directly using URL _layouts/savetmpl.aspx?List=<ListGUIDEncoded> (not recommended and does not work with SharePoint 2016, 2019 or SharePoint online))
  3. Once you are in the “Save list as Template’ page, select on (check) the “Include Content” option
  4. Click the “Download a Copy” (SharePoint 2007-2010) or “OK” button (SharePoint 2013 and above)
  5. Your SharePoint List is now created in your site’s ‘List Templates’ section (below)
  6. Access the “List Templates” on your Site Settings page
  7. Download it by clicking on it (see screenshot below of “List Template Gallery”)
  8. Upload the template (.stp file) you just downloaded above to your target site ‘List Templates’ page
  9. Create a new List based on this template and voila, you copied your List!

SharePoint save as template

Once you save the SharePoint list as a template, you can access it here to download (the .stp file) and then navigate to the target ‘List Templates/Gallery’ to upload it and then create a new list with it.

(Below) List Template Gallery – will have the ‘Copy’ of your List.

How to view the size of a list? (to know if it is over 10MB?)
If you are a site collection administrator, you can view the size of each list in the site collection. Find links to information about site collection administrators and owners in the See Also box.

  1. In the top-level site of the site collection containing the list, click Site Settings.
  2. In the Administration section, click Go to Site Administration.
  3. In the Site Collection Administration section, click View storage space allocation.
  4. In the Show Only box, click Lists, and then click Go.
  5. Use the Name, Path, and other columns to locate the list.
  6. The size of the list, in megabytes, is displayed in the Size column.

sharepoint storage metricsIf the list size is less than 10 MB, you can use the following steps to copy or move it. If the list size is more than 10 MB, you can see some other options above, but I would suggest if you value your time, to try out our tool below, the SharePoint Essentials Toolkit.

Conclusion

The preceding methods are all OOTB methods of copying/moving files to SharePoint. If you’re looking for a more comprehensive approach that retains version history, copies metadata, preserves author/last modified info, can migrate and retain item IDs and optionally Document IDs, takes care of the 100 item limit, can get past the ‘listview threshold’ reached errors (for large lists), etc. then:

Try the SharePoint Essentials Toolkit

SharePoint Migration Tool by Cognillo

See why Microsoft, NASA, Intel, NASA, the Australian Government, and many more have switched over to use us!

In addition, you can also schedule copying files for those repetitive jobs. Check out our SharePoint Migration Tool to learn more about the SharePoint Essentials Toolkit

and DOWNLOAD a Trial Now.

Summary

There are several approaches to copying/moving files between Document Libraries. A few of the OOTB approaches are above with some corresponding limitations. QiPoint can be used to overcome a lot of these limitations.

Additional Resources

  1. Upload a folder or files to a Document Library—https://support.office.com/en-us/article/Upload-a-folder-or-files-to-a-document-library-eb18fcba-c953-4d45-8d90-8da66edeacdb
  2. Drag and Drop limit for a modern Document Library view—https://answers.microsoft.com/en-us/msoffice/forum/msoffice_sharepoint/maximum-number-of-files-which-can-be-uploaded-to/a4f8da8c-460b-4c72-b966-7c296f04d54c
  3. Move or copy a folder, file or link in a document library—https://support.office.com/en-us/article/Move-or-copy-a-folder-file-or-link-in-a-document-library-00e2f483-4df3-46be-a861-1f5f0c1a87bc?ui=en-US&rs=en-US&ad=US#ID0EAAEAAA=Online
  4. SharePoint Online Software Boundaries and Limits—https://support.office.com/en-us/article/SharePoint-Online-software-boundaries-and-limits-8f34ff47-b749-408b-abc0-b605e1f6d498?ui=en-US&rs=en-US&ad=US
Do you use SharePoint? Try our toolkit
Download SharePoint Essentials Toolkit Now
Download the SharePoint Essentials Toolkit
Chris Ang

Chris Ang

Solution Architect at Cognillo (formerly QiPoint)
Chris Ang (New York, NY USA) is a SharePoint Architect with 20 years experience in programming and network infrastructure.

Currently working at Cognillo (https://www.cognillo.com), he has helped architect and develop SharePoint Enterprise products for customers such as the U.S. Navy, U.S. Army, U.N. Security Council of Netherlands, Australian Government, U.S. Dept of Treasury, U.S. Dept of Justice, Canadian Dept of Defense, Scotiabank, JPMorgan CHASE Bank, Intel, Ford Motors, Microsoft, NASA, DARPA, SNC Lavalin, Penguin Books, and more.

He is a proud father of 2, and when he has any spare time, he loves to paint portraits of his kids.
Chris Ang