PowerApps: can I use SharePoint as a data source with over 10k rows? Test

Henrik Hjertstedt
3 min readMar 25, 2021

A common question that comes up when building PowerApps is whether it is possible to use SharePoint as a data source. The answer is yes. However, when you have lots of data — over 500 rows — there are some limitations. I have applied these principles in the official PowerApp for my No Cost Contract Automation project.

In the test shown in the GIF below we have a scenario with 10,080 rows of data being imported into our PowerApp from a SharePoint list. There are 268 companies / customers and 168 of those companies each has several projects (60 in the example). All in all adding up to 10,080 rows of data.

Testing over 10,000 rows of data from SharePoint in PowerApps

The idea in the example is to select a company in the first drop-down input and then only show the projects associated with that company in the second drop-down input i.e. the second drop-down is dependent on the first drop-down. I have added labels that count the number of items in the drop-down inputs.

The first thing we can see is all 268 companies are loaded in the first drop-down input.

CountRows(CompanyData)

On the other hand the project data, which has over 10,000 rows, stops at 500 using the same formula. So it seems there are only 500 rows of SharePoint data imported from SharePoint.

CountRows(Projects)

It still works with over 10k rows

When we select the first drop-down input PowerApps starts filtering the data. It seems as though PowerApps makes a new data request to SharePoint and retrieves the 60 rows that we need. Each time the first drop-down input is changed the data is reloaded.

CountRows(Filter(Projects, CompanyID = Dropdown1.Selected.ID))

The conclusion is that we can have over 10,000 rows of data from SharePoint — as long as we don’t need more than 500 rows of data after filtering. Also, the filtering is quite fast and the user doesn’t experience any delay— the GIF above is real speed.

If we need more than 500 rows of data we could add another filter or load results in a collection. At some point you may decided to connect an SQL database as the data source, but for most people this is not needed.

Conclusion

Using SharePoint as a data source is possible, even when you have over 10,000 rows of data. By applying filters you can limit the number of rows displayed to less than 500. This means that the contract lifecycle management system built in the No Cost Contract Automation project can easily scale to support 10,000s of contracts and records even when using SharePoint as a data source.

--

--

Henrik Hjertstedt

Lawyer and Citizen Developer. Founder of LawChatGPT.com. Passionate for digitalising and automating legal work.