web
You’re offline. This is a read only version of the page.
close
Skip to main content
Community site session details

Community site session details

Session Id :
Power Apps - Building Power Apps
Unanswered

Performance issues in PowerApps due to large list

(0) ShareShare
ReportReport
Posted on by 124

Hello all,

 

I am  beginner to PowerApps and stuck with my first app deployed in production.

 

I have dropdown list which fetches items from SharePoint list with 8000+ records by doing some calculations. But due to the formula written in Item property of dropdown list, app is taking more than 3 minutes to load and page becomes unresponsive. How can i make the formula efficient or is there any other alternative to improve performance?

 

Below is the formula which fetches items from Projects list where Gate is the column indicating stages of a project. I want to laod all projects which are approved in Gate 1 and/or Gate 2 :

Sort(Distinct(Filter(Filter(Projects,(Gate="1" && Approval="Approved") || (Gate = "2" && Approval="Approved")).Title,Not(Title in Filter(Projects,Gate="3" && Approval="Approved").Title)),Title),Result,Ascending)

 P.S: some times this dropdown does not shows all the values as i guess i am using Distinct in the function.  

I have the same question (0)
  • Drrickryp Profile Picture
    Super User 2024 Season 1 on at
    Re: Performance issues in PowerApps due to large list

    @uiit3155 

    If you are using a list >2k in SharePoint. you need to understand delegation in PowerApps.  Only certain functions and operators are delegatable, meaning they perform at the Server level.  Otherwise, PowerApps limits the number of records that it will work with at the Device level. 

    In your formula, Distinct(), "not" and "in" cannot be delegated to SharePoint and the record set they operate on will only be accurate if it is less than the 2k record limit set by PowerApps.  In your case, if you can prefilter the data down to <2k records before using those operators, then your formula will provide accurate results and not take a performance hit.  Otherwise you will have to consider using a different data source than SharePoint to avoid performance and accuracy problems. 

     

    With({proj:Sort(Filter(Projects, Approval="Approved"), Title, Ascending), // each condition must have 
     g3a: Filter(Projects, Approval="Approved" && Gate = 3), Title, Ascending) // <2k records
     }, 
     Distinct(
     Filter(
     proj, !(Title in g3a.Title)
     ), Title
     )
    )

     

    Give thought to using either Dataverse or Sql as the data can be pre-filtered at the Server level as a View and they can handle very large datasets, 

     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Chiara Carbone – Community Spotlight

We are honored to recognize Chiara Carbone as our Community Spotlight for November…

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 652 Most Valuable Professional

#2
Michael E. Gernaey Profile Picture

Michael E. Gernaey 410 Super User 2025 Season 2

#3
developerAJ Profile Picture

developerAJ 236

Last 30 days Overall leaderboard