If you’ve run into either of the following error messages, you may be attempting to share too large a folder, or share within a high-traffic list or library that has too many files or items already shared individually:
“You can’t share this folder because there are too many items in the folder.”
“You can’t share this item because too many items have already been shared in this library.”
If you want to share a folder, item, or file, there’s a limit of 50,000 uniquely shared items per list or library. So between you and your colleagues, if you’ve shared 50,000 items, files, and/or folders individually (one-off shares using the share button), you’ll need to do some sharing cleanup (remove links and access no longer needed) and consider creating additional lists/libraries or establishing improved best practices for more efficient sharing.
Additionally, the list, library, or folder for which you’re trying to initiate a new share can only have up to 100,000 items total (regardless of share count) before breaking and re-inheriting permissions is allowed. So, for example, if you want to break inheritance on a folder that has 150,000 files already, you’ll need to temporarily reduce the file count to 100,000 or fewer so you can break inheritance, then move the additional files back into it.
I am often asked in trainings and speaking engagements about limits when storing files and items in SharePoint. Some organizations wanting to switch from shared drives to SharePoint are concerned about how many nested folders they have, while others hear mixed advice as to whether folders should be used at all. In this post, I’ll share some good-to-know facts and frequently asked questions regarding limits in SharePoint Online lists and libraries.
What is my entire site’s maximum allowed storage?
That’s up to your administrators. By default, your site can use as much space as your organization has. Learn more here.
How many items can I have in a list?
30 million items
What is the file size limit for a file attached to a list item?
What is the file size limit for a file stored in a library?
250 GB (this includes files uploaded via Teams, SharePoint libraries, OneDrive, and Yammer)
How many documents can I have in a library?
30 million files and folders
How many levels deep can I go with nested folders?
There’s no known limit to the number of folders (though you may read otherwise if you’re looking at older, outdated guidance on the subject since this has changed over time). It used to be you could only go so far before your URL became too long to function correctly. But since SharePoint uses relative IDs now instead of absolute URLs, you can nest as far as you need to. Best practice would be to minimize your levels of nesting, of course, and to use metadata/columns instead of folders for fluid organization.
I recently wanted to test this answer (Dec 2021) and easily nested 30 levels of folders without a problem. The content in those folders is also still searchable (which you may also hear otherwise in outdated material and guidance).
Should I use folders at all?
There’s no one-size-fits-all approach to document storage and organization. Best practice, though, leans towards highest flexibility which we get from using metadata/column values in library views instead of folder structures. Folders limit us to a single organization structure known best to its creator, whereas with library views, you can have many different views of the same information that suit different users better (i.e. a manager vs employee view, or views filtered to specific time periods or geolocations).
Are there blocked file types?
Recent improvements to SharePoint Online have made it so that there are no known file type limitations in SharePoint. If you’re using SharePoint 2016 or earlier, though, check out this resource for more information.
Are there any character restrictions for file and folder names?
Your file and folder names cannot contain leading or trailing spaces, or any of the following characters: ” * : < > ? / \ |
Why isn’t my large file showing up in SharePoint search results?
SharePoint only accesses the first 150 MB of a document’s metadata and contents for the search crawl service that presents results to you in search. If you have a large file, your search query may be looking for content beyond the initial 150 MB.
SharePoint also stops parsing an item’s contents after 2 million characters. So even if your file is less than 150 MB, it may have too many characters to be crawled. It can still be stored and accessed in SharePoint, just not searchable beyond the first 2 million characters.
How many files with unique permissions can I share?
You can share up to 50,000 files with unique permissions per folder. Once (if) you reach 50,000 in a single folder shared with unique permissions, create a second folder parallel or higher in structure/placement to the original folder (not nested within it) or reconsider your sharing approach to see if there’s a more efficient way to do it with standardized permissions.
What other questions do you have regarding SharePoint limits?
Find even more information regarding limits in SharePoint Online at the following links where I verified much of this post’s material:
If you’ve just copied your multi-page Power BI report’s URL and pasted into the properties of a Power BI web part on a SharePoint page, you may have noticed your pages aren’t appearing as options in the Page name dropdown.
This is because the URL you copied from Power BI likely contained a specific page in the URL itself, ending in something like …/ReportSection1 (which is referring to a specific page already).
To fix this and have your pages show up as options in the dropdown, simply remove the ReportSection1 (or 2, 3, etc.) from the end of the URL in the Power BI report link box and try again.
To speed things along, I usually cut (Ctrl+X) the corrected URL, click outside the box to “reset” the web part, then paste (Ctrl+V) the corrected URL and wait for my page names to appear. This is demonstrated below.
Here’s a related video demonstrating how to embed a Power BI report on a SharePoint page including fixing the multi-page issue mentioned above.
If you’re trying to build business process flows, use Process Advisor, or use AI Builder in Power Automate, you’re going to need a database established in the intended environment first. If you don’t have a database in the environment yet, you’ll get an error as seen below:
Business process flow requires a Microsoft Dataverse database. Try a different environment or create a new one to start using business process flow.
You need a database to use process advisor. Create a database, or switch to an environment that has one.
AI Builder requires a Dataverse database. Create your database to start using AI models.
In the following sections, I’ll detail how to:
Switch to a different environment
Add a database to your current (or any) environment
Create a new environment with a database
Switch to a different environment
Your organization could already have multiple environments. Always check with your admins before making any uncertain decisions because environments could be used for specific data types, processes, geography compliance restrictions, etc. You may or may not have access to all of your organization’s environments depending on your specific organization’s governance and configuration.
Let’s assume you do have multiple environments and you’ve discussed with your admin or governance team which environments are appropriate for your specific need or project. To switch to a different environment that might have a usable database, click on the name of your current environment in Power Automate in the upper right, then choose the other environment from the side panel.
Add a database to your environment
You may choose to just stay in your current environment and add a database to it. If that’s the case, go ahead and click on Create a database and follow the right side panel’s wizard to complete the process.
Let’s assume your organization hasn’t yet created any additional environments you could use other than the default one that came with your tenant (which obviously doesn’t have a database or you wouldn’t be here 😄). If you don’t want to create the database in the default environment, you may wish to create a new environment with a new database.
Change the environment type from Production to Trial. This will allow you to proceed with provisioning the environment for your trial purposes. You can later convert this to Production, but only if you have more database capacity when you’re ready to do so.
Just trying to clean up a bit? Start your evaluation by going to the Power Platform admin center’s Capacity page to see what’s using up the most space. Are there things you could clean up? Notice any unusual usage?
Depending on what you find in the Capacity page, you may find yourself wanting to look more closely at environments. To do this, select the Environments node from the left-hand nav.
From Environments, you can select an environment and choose to view its resources which will give you a good idea of what might be using more than anticipated. Perhaps a flow or app just needs adjusted. You could, for example, open a listed environment and choose Resources > Flows, examine the flows using the environment, see their owners, and even disable the flows until further action can be taken to address the underlying issue.
Delete an environment
See any environments that could be deleted? Just keep in mind a deleted environment takes its resources and backups too – so consider any flows, apps, etc. that might need updated to use a different environment first.
If you do determine there are unused and unneeded environments in your organization, you can delete them from the Power Platform admin center.
If you’re attempting to use Solutions, AI Builder, certain Power Apps templates, etc. you may run into a situation where you’re working in an environment without a Dataverse (formerly known as Common Data Service) database. This will prompt you to create a new environment or database as a power user (if allowed).
Create a new environment with a Power Apps per user plan
Once you’ve been licensed with a Power Apps per user plan, you’ll be able to create a solution and use existing or create new environments unless your admins have limited who can create new environments.
If you’re allowed, you can simply begin building your flow or app as you normally would, but now that you’re licensed appropriately, you’ll be able to choose to create a new environment in-context as you go. For example, let’s say there are no environments with databases you can use for a new Assets Checkout app you want to build from a template in Power Apps. Simply begin building the app from template, and choose to Create new environment when prompted.
Then in the panel that appears to the right, give the environment a name, choose a data region, and environment type. Then choose Create environment.
Verify your currency and language. And if you’re creating a sample app (as we are in this scenario) you’ll also decide whether to bring in the sample data with that template. When satisfied, click Create my database.
Now as you’re building solutions in the Power Platform, you can switch between environments by selecting the name of the active environment and choosing the environment in which you wish to build (or utilize data from).
Now let’s create an environment from the Power Platform admin center as an admin.
Create a new environment as an admin in the Power Platform admin center
This is arguably the better method to use at an organization level to make sure your environments have a consistent naming convention, no efforts are duplicated, and boundaries are clear from one environment to another. With each environment potentially belonging to a different geography depending on how it was set up, this could be a significant compliance concern for some sectors. If you need to restrict environment creation to admins only, check out this other post. Otherwise, let’s proceed with creating a new environment for your users from the Power Platform admin center.
Name and describe your new environment, and choose the region in which its data needs to be stored. You’ll also choose type (Trial, Sandbox, Production, etc.). If this environment is going to be used to store and use data, you’ll want to also enable database creation (creates a Dataverse database). Click Next when ready.
Then choose the language, currency, and additional options (including restricting usage to a specific security group). Click Save when ready.
You (and/or your organization’s users whom are allowed to use the environment) will now be able to connect to the environment and any of the tables within its Dataverse database. This Dataverse connection can be used in Dynamics 365 apps, Power Apps portals and apps, and Power Automate flows.
It’s not often I need to “print” OneNote. However, today I had a section I wanted to convert to a PDF document and printing is the way to go in OneNote for Windows 10 (the version that comes pre-installed on Windows 10 machines). I found, however, that the file created through this method didn’t maintain its links (links weren’t clickable in PDF).
After trying Adobe, SnagIt, and Microsoft PDF print abilities to no avail (using both OneNote versions – Windows 10 and desktop/2016), I found success using OneNote (desktop) > File > Export > PDF. Detailed instructions are at the bottom of this post.
Thankfully, OneNote (desktop aka 2016) allows us to “Export” notebooks, sections, or pages to PDF. We can print to PDF as well, but using “Export” specifically is the key here to maintain the clickable links. OneNote for Windows 10 doesn’t currently have a similar export ability.
If you don’t have OneNote (aka 2016) already installed, you can still download it here. Once you have it, proceed with the following steps to export your OneNote notebook, section, or page to PDF with clickable hyperlinks:
1. To open a new notebook, select File > Open. You may need to switch account if not seeing your cloud notebooks right away.
2. Once your notebook is opened and you’ve opened the specific content you wish to print, click File (upper left).
3. Choose Export > Content Scope (page/section/notebook) > PDF > Export as shown in the following screenshot.
4. Choose a location and filename, then click Save.
Now check the resulting PDF and you’ll find your OneNote notebook content with clickable hyperlinks in tact.
Bonus tip: One small thing to note is that OneNote for Windows 10 has a nice feature where you can print a section group. OneNote (desktop) does not – it’s only exportable by page, section, or the entire Notebook. So if you don’t need clickable links in the resulting PDF, you may wish to choose OneNote for Windows 10 for your “Print to PDF” needs to simplify printing several sections at once from the same section group.
If you’re wanting to add an Asset Library to your SharePoint site but not finding it available as an option, chances are the Video and Rich Media feature for that site collection isn’t activated. This feature enables the asset library which is basically a modified document library but with metadata specific to rich media that can be auto-extracted such as width and height of images, duration of video clips, etc. Asset libraries are good for storing your audio, video, and image content types.
To enable it (as a site collection admin) go to Settings > Site Settings and choose Site collection features from under the Site Collection Administration heading.
Then scroll down and look for the Video and Rich Media feature. Click Activate.
As the description says, this will “[provide] libraries, content types, and web parts for storing, managing, and viewing rich media assets, like images, sound clips, and videos.” Once activated, you’ll now be able to add the asset library to your site(s) in that collection.
If you’ve created a workflow in SharePoint Designer and an email action appears to be configured correctly, but emails aren’t being sent to some individuals in the To: line, you may need to turn the email being used into a workflow variable and use that instead of direct addition to the To: line of the email step.
This often happens for group email inboxes or external recipients that aren’t just a “normal user.” If there is a mix of recipients, some may receive the message but the troublesome addresses don’t even appear in the To: line, as if they’re removed before sending.
In this post I’ll cover two symptoms commonly seen when subsites evolve from inheriting permissions (using existing groups) to being given unique permissions (having their own groups at the site’s level).
A site owner with full control gets “Sorry, this site hasn’t been shared with you” when trying to approve access requests.
When reviewing Access Request Settings, a user or owner sees the message “Members cannot share this site because this site is missing a default members group.”
Chances are the site was never set up with default, unique permissions groups. Perhaps the creator of the site chose to inherit permissions from the parent (using existing groups from a hierarchical level higher than the new site), then later decided to manually build out groups that resemble the traditional visitors, members, and owners groups at the new site’s level. Or perhaps the default groups were deleted. Either way, the following solution should set it straight:
We need to either officially designate or build new default groups for the site, using the same dialog you see when creating a new site. Since we can’t “reconfigure” the site with a wizard, we need to manipulate the site’s URL a bit to get to the configuration screen we’re looking for.
Add “_layouts/15/permsetup.aspx” to the end of the site URL. For example, it may resemble sharepoint.contoso.com/sites/ABC/EA/_layouts/15/permsetup.aspx. This takes you to the permissions setup page.
IF YOU HAVE GROUPS YOU WANT TO SET AS THE DEFAULTS
Perhaps after site creation, you created groups intended to be used like the visitors, members, and owners groups. Go to your site’s _layouts/15/permsetup.aspx page and simply:
Leave “Use an existing group” selected, and change the dropdown for each to the groups that were created and intended to be the new defaults. Click OK when finished. This will make them “official.”
IF YOU DON’T HAVE GROUPS YOU WANT TO SET AS DEFAULT
Change “Use an existing group” to “Create a new group” for at least the Members and Owners options. Here you can add the appropriate persons to each group, or add them at a later time via Site Settings > Site Permissions. Be sure to add your owners (approvers/permissions managers) to the new owner group.