You open a SharePoint document library and the page takes many seconds to display the files. The browser spinner keeps spinning, and you cannot edit or download items quickly. This problem usually happens because the view is trying to load too many items, complex columns, or large metadata values at once. This article explains the main causes for a slow document library view and the specific settings you can adjust to speed up the loading time.
Key Takeaways: Speeding Up a Slow Document Library View
- Library settings > Throttling threshold (5000 items): When a view exceeds 5000 items, SharePoint throttles the query and the page loads slowly.
- View formatting > Group by or sort on indexed columns: Grouping or sorting on a column without an index forces a full scan of the library.
- Column types > Choice, lookup, or person/group columns: These columns require extra server round trips to resolve display names and values.
Why a Document Library View Loads Slowly
A document library view is a saved query that fetches items from the content database and renders them in the browser. When the view loads slowly, the root cause is almost always one of three things: the query returns too many items, the query uses unindexed columns for sorting or filtering, or the view includes columns that require expensive lookups. SharePoint has a list view threshold of 5000 items for standard users. If the view exceeds this number, the server throttles the query and returns only partial results after a delay. Even if the total item count is below 5000, a view that groups by a column without an index forces SQL Server to scan every row. Similarly, columns like Person or Group, Lookup, and Managed Metadata store internal IDs and must resolve display names through additional queries. Each resolved column adds milliseconds, and with hundreds of rows the delay becomes seconds.
The 5000-Item List View Threshold
SharePoint Server and SharePoint Online enforce a list view threshold of 5000 items per query. This limit protects the content database from large scans that could slow down other users. When a view tries to load more than 5000 items, SharePoint returns an error or a throttled response. The user sees a partially loaded page or a message that the view cannot be displayed. The fix is to create indexed columns and use filters that limit the result set to fewer than 5000 items.
Unindexed Columns Used for Sorting or Filtering
When you sort or filter a view by a column that does not have an index, SharePoint cannot use a database index to locate the items. Instead, it must scan the entire library. For libraries with many items, this scan causes a noticeable delay. Indexes are required on any column used in the default view for sorting, filtering, or grouping. Without an index, the view will always perform poorly as the library grows.
Expensive Column Types
Certain column types require additional server-side processing. Person or Group columns store a user ID and must query Active Directory or Azure AD to display the display name. Lookup columns retrieve a value from another list, adding a second query. Managed Metadata columns resolve term IDs to labels. Each of these columns increases the load time per row. A view with ten Person columns and 200 rows will trigger more than 2000 additional queries.
Steps to Diagnose and Fix a Slow Document Library View
Follow these steps in order. Each step addresses a different cause. After each change, test the view load time.
- Check the total item count in the library
Open the document library. At the bottom of the page, look for the item count. If the count is above 5000, the view will be throttled. Create a new view that filters by a date column or a choice column to reduce the number of items displayed. Use the column index to make the filter efficient. - Add an index to the column used for sorting
Go to Library settings > Indexed columns. Click Create a new index. Select the column that the default view is sorted by, such as Modified or Created. Click Create. After the index is created, the sort query uses the index instead of scanning the library. - Add an index to the column used for filtering
If the view has a filter (for example, Status equals Active), the filter column must have an index. Repeat the same process in Library settings > Indexed columns. Create an index on the filter column. Without an index, the filter still scans all items. - Remove grouping on unindexed columns
If the view uses Group by, the grouped column must have an index. If the column does not have an index, remove the grouping or replace it with a filter. To remove grouping, edit the view and set Group by to None. - Replace expensive columns with simple text columns
Identify columns of type Person or Group, Lookup, or Managed Metadata. If those columns are not essential for the default view, remove them from the view. To do this, edit the view and clear the check box next to the column name. If the column is required, consider using a calculated column that stores the text value instead of the lookup ID. - Limit the number of items per page
Edit the view. In the Item Limit section, set the number of items to display to 30 or 50. Check the box to limit the total number of items returned. This setting prevents the view from loading thousands of rows at once. - Create a new view with only the essential columns
Go to Library settings > Views > Create a new view. Choose a standard view type. Add only the columns you need. Set a filter on an indexed column. Set the sort on an indexed column. Set the item limit to 30. Test the new view. If it loads quickly, make it the default view.
If the Document Library View Is Still Slow After the Main Fix
View loads slowly only for certain users
This usually means a user has unique permissions or is a member of many SharePoint groups. When a user has unique permissions, SharePoint must evaluate security for each item individually. Check the library for broken permission inheritance. Go to Library settings > Permissions for this document library. If the inheritance is broken, restore inheritance and grant permissions at the library level instead of the item level.
View loads slowly only in the browser but not in SharePoint Designer
The browser renders all columns and formatting on the client side. If the view uses custom formatting or JavaScript, the rendering time increases. Edit the view and remove any JSON formatting or conditional formatting. Test the view after removing the formatting.
View loads slowly after adding a new column
The new column might be a lookup or a managed metadata column that triggers extra queries. Remove the column from the view. If the view speeds up, the column type is the cause. Replace the column with a simple text column that users fill in manually.
View loads slowly in the modern experience but not in the classic experience
The modern experience uses client-side rendering and may download additional resources. Switch the library to classic experience temporarily. Go to Library settings > Advanced settings. Under List experience, choose Classic experience. If the view loads faster, the modern experience is the bottleneck. You can keep the library in classic mode or reduce the number of columns in the modern view.
| Item | Before Fix | After Fix |
|---|---|---|
| Item count in view | 6000 items | Filtered to 200 items |
| Sort column index | No index on Modified | Index on Modified |
| Filter column index | No index on Status | Index on Status |
| Expensive columns | 3 Person columns in view | 0 Person columns in view |
| Item limit per page | 100 items | 30 items |
You can now diagnose and fix a slow document library view by checking the item count, adding indexes, and removing expensive columns. Start by creating an index on the column you sort by. Then reduce the number of columns in the view. If the view still loads slowly, check for unique permissions or custom formatting. For very large libraries, use a filtered view that returns fewer than 5000 items every time.