I get this question a lot from my clients and blog followers. Just like with other things in life, the answer is “it depends.” There is no right or wrong answer either. However, the decision on how many document libraries you shall have will impact the usability and performance of your site. By default, each new SharePoint site has just one document library intended for document management. So before you migrate all your files and folders from file shares, you have to decide on whether to have just this one library or create additional ones. Several factors might swing your decision one way or another. I summarize my thoughts below.
Volume of Documents
This is usually the number one reason that will warrant a few extra document libraries. Libraries have technical limitations (the infamous 5,000 view item limit), and while official specifications tell us you can store up to 30 million items in a document library, you are probably smoking weed if you think you can get away with a single document library for your company. I am not saying you should be afraid of 5,000 item limit either. But if you have 100,000 docs to migrate to a SharePoint site, please, please, please create several document libraries. There is no extra charge for that, you know.
If you desire to maintain unique security for a subset of your department documents, you might want to create another library on a site. While I usually advocate for a new site altogether, in some cases it might be an overkill. Say you have an HR team site for Human Resources department and that’s where you store all employee info like reviews, salary info, resumes, etc. But salary info should only be seen by the head of HR, no one else. In this case, another library with unique security will be an elegant solution. While the whole site with the default library is visible to everyone, that other one will be invisible to the rest.
You will need to break inheritance for the library from the site by clicking permissions on the library from library settings. I describe how to do this in this post.
Another reason to create an extra library(ies) is metadata. Using that previous example, if you have all these HR documents and decide to utilize metadata to say organize annual employee reviews, you will need to create a new document library. This is because the metadata columns you create on a library apply to all documents in that library. And this obviously won’t do you any good if you just want to tag employee reviews. True, you can use content types, but let’s not overcomplicate this here. Just create a new document library and move on.
A unique type of content
That is another reason to flatten the structure and create an extra set of libraries on a site. You can put HR policies and HR templates and HR forms into a single library and separate by folders, but, why not have a clean way to organize and have a library for each? You won’t stuff it all into one filing cabinet in real life, correct?
Another important reason to have multiple libraries is Workflow. Say you want to have some sort of approval on HR policies. Just create a new library to store policies and build Microsoft Flow on top of it. This way, you do not need to worry about other HR content like forms and templates going through the same approval cycle.
Say you want to retain resumes within the Human Resources team for five years and then purge. If you have a separate doc library, this becomes a super easy exercise, whether you use legacy retention capabilities or modern Office 365 retention features (via labels and policies).
Office 365 Groups tied to Teams
There is another, lesser-known reason that might force you to create a new document library. If you use Teams for chat and collaboration, you have probably noticed that for every channel you create within a Team, it creates a folder with namesake name in a default document library on a SharePoint site that is part of the Office 365 Group/Team. Well, that means that if you have a unique folder hierarchy for some content, uploaded it all of it to a default document library on a SharePoint site connected to Office 365 Group and Teams, you will now get additional folders that might confuse users. So you will be better off creating a new document library anyway.
Microsoft Team with channels
Document Library with respective folders, 1 for each channel