What is the best way to move files from a staging site collection (document library with no content types or base content type) to a target site collection (with more structured document libraries with content types)?

3 Answers 3


The content will need to get indexed (meta-data added) one way or another. If it is a large set of documents with the needed information in the document name, then I would likely write a custom console application that can move items from the source to destination and set the appropriate content types, and meta-data fields.

If it is completely unstructured data that needs to be manually indexed, or if there are only a few files then it is something I would likely do manually.

Third party tools can be useful for moving content between site collections or environments, but they will not setup to perform the logic you will require to change the content types and pre-set the meta-data fields as needed.

  • Good suggestion. I will then add a column "ReadyToMigrate" (bool) for end users (since end user has to set the target document library and target content type) to check this upon review of the item in the document library. I will only migrate the approved items by user using console app. Thanks Dec 2, 2011 at 19:32
  • That would make it much easier, just make sure your content types and site column configuration matches to avoid exceptions. Dec 2, 2011 at 19:38

Open the document libraries with windows explorer and then create folders and drag-n-drop the files as needed.

This is the fastest way to move the documents; but does have a few problems. For instance, any metadata and custom fields are not transfered. If that is not a problem, it may be a good option for you.

This also doesn't address the desire to have the documents assigned to a specific content type. I haven't checked, but I would expect the documents transferred in this way to take the default content type. So, copy in batches, one content type at a time, and change that content type to be the default for the duration of the copy.


The other answers here address your specific question but I would like to add that if moving files/lists from staging to production is a common occurrence that you might not have your environments configured properly.

In a typical scenario like this, the staging environment (aka "Authoring") is actually where all production content changes are done. It starts out life as an exact copy of production (or production is a copy of staging, whichever). Changes are done in Staging and only in staging, then pushed to the production environment via SharePoint's publishing jobs. This lets SharePoint do the heavy lifting and gets you out of the content migration business. It also preserves all metadata related to the new/changed items.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.