How to Fix the Delegation Warning in Power Apps Gallery Controls
Juan Carlos Santiago
How to Fix the Delegation Warning in Power Apps Gallery Controls
If you have worked with Power Apps for more than a week, you have seen it: that yellow triangle warning you that your query is not delegable and only the first 500 (or 2000) records will be returned.
Why Does This Happen?
Power Apps tries to push data filtering to the data source (SharePoint, Dataverse, SQL). But not all functions can be translated to the backend query language. When Power Apps cannot delegate, it pulls all records locally and filters in the app — limited to 500 rows by default.
The Fix
1. Use Delegable Functions Only
Instead of using Search() (non-delegable with SharePoint), use Filter() with StartsWith():
Filter(Products, StartsWith(Name, TextInput1.Text))
2. Use Collections for Small Datasets
If your data source has fewer than 2,000 records, load everything into a collection on OnStart:
ClearCollect(colProducts, Products)
Then filter the collection instead — no delegation issues.
3. Switch to Dataverse
Dataverse supports delegation for almost every function, including Search(), in, and complex filters. If you are hitting delegation walls with SharePoint, migrating to Dataverse solves the problem permanently.
4. Increase the Row Limit
Go to Settings > General > Data row limit and set it to 2,000. This is a band-aid, not a solution, but it helps for medium datasets.
Pro Tip
Combine Filter() with Sort() carefully. SortByColumns() is delegable, but Sort() is not with SharePoint. Small details like this make a big difference.
This trick applies to Power Apps Canvas Apps connected to SharePoint, SQL Server, and Dataverse.
