How to Copy a SharePoint List with All Data to Another Site
Question details
The user wants to duplicate an entire SharePoint list, which includes its data types, columns, views, structure, and all existing list items, to a different SharePoint site.

- Product
- Microsoft SharePoint
- Device & OS
- not provided
- Scenario
- Migrating or duplicating a fully populated SharePoint list from a source site to a target site without manually recreating the structure or re-entering data.
- Observed behavior
- A reliable method is needed to export both the list structure and its data entries across SharePoint sites.
Ensure you have Site Collection Administrator permissions on both the source and target SharePoint sites, and install the latest PnP PowerShell module on your system.
Use PnP PowerShell to Export and Apply a List Template
This method uses PnP PowerShell commands to export your source list into an XML template and seamlessly apply it to a new target site, transferring both the structure and data.
PnP PowerShell provides an automated and highly reliable way to migrate list data across SharePoint sites. It extracts the schema into a template file and allows you to append the list data rows directly into that template before deploying it to the destination.
Open PowerShell and run the command: Register-PnPAzureADApp -ApplicationName TestApp -Tenant yourtenant.onmicrosoft.com -Store CurrentUser -Interactive. This configures the necessary application permissions for PnP PowerShell.
Execute: Connect-PnPOnline -Url "https://tenant.sharepoint.com/sites/Source" -Interactive -ClientId your-client-id to authenticate and connect to the site containing your original list.
Run: Get-PnPSiteTemplate -Out Lists.xml -ListsToExtract "Source List" -Handlers Lists. This command generates an XML file containing the columns, views, and structural data of your list.
Execute: Add-PnPDataRowsToSiteTemplate -Path Lists.xml -List "Source List". This appends the existing items and rows from your list into the generated XML template file.
Connect to your destination site using: Connect-PnPOnline -Url "https://tenant.sharepoint.com/sites/Target" -Interactive -ClientId your-client-id. Finally, apply the template and data by running: Invoke-PnPSiteTemplate -Path Lists.xml.

Looking for a Lightweight Office Suite? Try WPS Office
While SharePoint handles your team's lists and intranets, WPS Office provides a seamless, free alternative for your daily document, spreadsheet, and presentation needs. It is fully compatible with Microsoft Office formats and offers a familiar interface, making migration effortless.
- 1. Download the Installer: Visit the official WPS Office website and download the free installer for your specific operating system (Windows, Mac, or Linux).
- 2. Install WPS Office: Run the downloaded executable file and follow the simple on-screen prompts to complete the installation process in minutes.
- 3. Open and Edit Files: Launch WPS Office to immediately start opening, editing, and saving your Microsoft Office files without any formatting issues.

Frequently Asked Questions
Can I copy a SharePoint list to another site without using PowerShell?
Yes, you can save a list as a template from the list settings (if custom scripting is enabled in your tenant) or use Power Automate to copy items. However, PnP PowerShell is the recommended method for reliably transferring both complex structures and large amounts of data at once.
What happens to lookup columns when duplicating a list?
Lookup columns require the reference lists to exist on the target site. You must ensure the linked lookup lists are also included in your template extraction process so the connections are maintained when the template is applied.
Will list permissions be copied using this PnP PowerShell method?
By default, this PnP PowerShell extraction process focuses on duplicating the list's structure, views, and data rows. Unique item-level permissions and specific user role assignments are not automatically copied to the target site.




