Shall I put all my documents in one library or multiple libraries? This is the question that always comes up when it is time to create the sites and migrate your documents from file shares/network drives to SharePoint. With this post, I hope to answer that question and explain the pros and cons of single vs. multiple document libraries concept.
July 2019 Update: A lot has changed in SharePoint since I published this post, so I suggest that you also check out this more recent one here (related to the same topic).
SharePoint Document Library – one or many?
To start off, if you are moving from network drives/folder structures to SharePoint, you will never want to put all of your files and folders in one big SharePoint document library. As I stated numerous times in my previous blog posts, the best practice is to break up that content and place it into different sites, depending on the business function/intent and unique security of the site. For example, all the HR documents will go to the HR site, all Finance documents to Finance site, all Project documents to Project/Team Site and so on.
Assuming you did this, here is the next dilemma you might face. Say, each of your Departments has its own set of policies/forms/ templates they use. And you want all of these policies to be available in one spot. How do you deal with this? Well, there are 2 options available to you. Let me explain both.
Option 1: Each Department stores its policies, forms or templates on their respective sites
The obvious option would be to let each department manage and store their own policies, forms or templates. However, by doing so, you are making the task of aggregating these various documents in 1 place a very complicated one. Yes, it is possible to roll up the documents from multiple libraries and sites into single site/location, however, not something that can be done straight out of the box – it does require you to use advanced SharePoint Web Parts like CQWP (Content Query Web Part or CSWP (Content Search Web Part) and you need above an average Power User /Administrator knowledge of SharePoint to achieve this. And the rolled up content will look like this…
To put in simple terms, there is no Out of the Box way to roll up content from multiple document libraries into another document library.
Moreover, because of the decentralized nature of this (every department is on their own), you might not have a good mechanism or governance to standardize on naming conventions, metadata tagging of those policies.
Option 2: All departments store their policies in one library/site
The second option would be to provision 1 site dedicated to Policies. On that site, you can create a single document library, configure metadata with properties that are relevant to Policies. Examples of such metadata would be:
- Policy Owner (example: list of Departments like Accounting, HR, IT)
- Policy Audience (example: Department names, types of employees like Full-time, Part-Time, Contractor)
- Policy Type (example: policy, guideline, procedure)
- Policy Status (example: draft, approved)
- Policy Expiration Date
Here is an example of what such a library might look like when all is said and done.
All you need to make sure is that policy owners from each respective Department have Contribute Access to this site/library and are properly trained on the new business process.
I always advocate Option # 2 to my clients. Here is why:
- It is all about End Users! When you have all your policies in a single document library – you are making it super-convenient for your end-users (Content Consumers) to find stuff. All they have to do is navigate to the site or library and it is all there for them. When you have content spread out in multiple sites, you are making it easier for content owners, but not content consumers. If you were an End User, would you prefer going to 1 place to find all your company policies or multiple? It is like a one-stop-shop!
- Standard categorization. Since all of the files are in a single document library and not spread over multiple site/document libraries, it is much easier to come up with uniform categorization (metadata) for all the policies. And there is only one document library that you need to set up, not many!
- Advanced filtering criteria. Since all policies are organized in a single document library and you did your homework with metadata, finding stuff based on metadata is super easy! You can use various view, filters to a group, sort your policies any way you want. Or you can enable metadata navigation to provide a user with a nice-looking filter to search for documents. You just won’t get the same nice look and feel and interface when you are rolling up content from multiple sites.
- No need to roll up content or write complicated search queries. If you have your policies on multiple sites and libraries, I hope you are an advanced power user or SharePoint Administrator with intimate knowledge of how search works and ability to write queries using CSWP web part.
With that being said, there are obviously situations when you cannot and should not put all your documents in one library. Project files are a good example. Project files will sit in each and separate project or team site and in case you want to roll up or aggregate documents from multiple project sites – you will be forced to use search queries mentioned above. However, for certain types of content, just like the one mentioned above, just by making slight changes in your business process, you can easily standardize on your documents, easily create nice search experience for your end-users (content consumers) and alleviate yourself from major effort and overhead associated with writing queries and setting up custom searches in SharePoint.