Delegation Warnings: What They Mean and How to Fix Them
Understand Power Apps delegation limits and learn patterns to work with large datasets efficiently.
What is Delegation?
Delegation is when Power Apps sends a query to the data source to process, rather than fetching all records and filtering locally. Without delegation, you're limited to the first 500-2000 records.
The Yellow Warning Triangle
When you see this warning, your function can't be delegated. The app will only process local data (up to 2000 records by default).
Common Non-Delegable Functions
Search()- UseFilter()withStartsWith()insteadLen(),Left(),Right()- Calculate in data sourceIsBlank()on some data sources - Use= Blank()inoperator - Use multipleOrconditions
Delegation Patterns
Pattern 1: Use StartsWith Instead of Search
// Non-delegable
Search(Customers, SearchBox.Text, "Name")
// Delegable alternative
Filter(Customers, StartsWith(Name, SearchBox.Text))
Pattern 2: Pre-filter with Views
Create Dataverse views that pre-filter data, then use the view in your app.
Pattern 3: Server-Side Calculated Columns
Instead of using Year(Date) in Power Apps, create a calculated column in Dataverse.
Increase the Limit (Temporary Fix)
Go to Settings > Upcoming features > Experimental > Data row limit and increase to 2000. This is not a real solution for large datasets.
Data Source Delegation Support
| Data Source | Delegation Support |
|---|---|
| Dataverse | Excellent |
| SharePoint | Good (with limits) |
| SQL Server | Excellent |
| Excel | None |
Best practice: Design your data model with delegation in mind from the start. It's much harder to fix later.