Forum Discussion
Improve report/dashboard performance and loading speed
- Anonymous10 months ago
Hi mdm2025 ,
It sounds like you’ve built quite a substantial report, and it’s easy to see why performance might be struggling a bit given the amount of data and complexity involved. Before going down the route of splitting the report, it’s really worth focusing on optimizing the model and DAX first, since that’s usually where the biggest improvements come from. If your survey data is set up with one column per question, try restructuring it so each row represents a single response to a question. That approach tends to compress much better in Power BI and makes calculations more efficient. It also helps to remove any unused columns and double-check that your data types and relationships are as lean as possible, ideally following a clean star schema.
On the DAX side, review the measures that are doing the heavy lifting and see if they can be simplified or rewritten using variables to avoid repeated calculations. Creating base measures that other measures can build on can also make a noticeable difference. You might also want to check which visuals are taking longest to render by using the Performance Analyzer in Desktop sometimes a few visuals or interactions are the main cause of the lag.
The difference you’re seeing between Desktop and the Service is fairly normal with larger models, since the Service is running on more powerful infrastructure. For development, it can help to work with a smaller sample of your data and turn off background data or auto-refresh while you make changes.
If, after optimization, it still feels too slow, then splitting it into smaller, focused reports is a perfectly valid approach. Just be sure to keep a single shared dataset in the Service so your DAX and data model stay centralized. That way you can manage everything in one place while giving users faster, lighter reports to work with.
In most cases, though, a round of careful model and DAX tuning will give you a noticeable boost before you need to consider breaking it apart.
Best Regards,
Tejaswi.
Community Support
Hi mdm2025 ,
This depends on a lot of things but believe that the main point is how you have setup you model and the measures, having more than 100 dax measures seems to be fairly complex, moreover the way you setup the questions on your model is also important.
The report performance on the desktop should not be impacted a lot except if you have a very low performance computer, low ram values.
Can you give some litle more context on how the model is setup and the relationships and tables.
- mdm202510 months ago
Helper I
Hi MFelix ,
The main data file that I'm importing is a xlsx file of 1 GB size with around 7 mil rows. The relationship model is very simple just the main Table created by the main data file and 2 other created in PowerQuery from data in the main Table(these are very small and used for USERELANTHIOSHIP functions used across the majority of DAX measures). So the relationship in the model is one(small table) to many (main large Table).
I did not split the main Table data into dedicated Questions tables because I am using to many question from the main data file so the Star schema would have to many dimensions tables if I would.
I am bringing several other xlsx files in the report but these don't have a relationship with the main table and have their own DAX measure unrelated with the main Table measures.
Regarding the hardware I am using is not the greatest(a AMD Ryzen 5 laptop with 32 GB of RAM) but I don't see the CPU going full throtlle when navigating between report pages.
- MFelix10 months ago
Super User
Hi mdm2025 ,
A 32gb computer is not bad. Concerning the model it seems like it's a simple one. Why do you have the USERELATIONSHIP are you having a lot of inactive relations between tables?
Allow me to give some points on the response you gave below:
"The issues is that each report will have dozens of them. Minumum 20 or can go up to 40 or more due to the complexity of the visualization needs."Having several visualizations load in a table will make more requests to the semantic model wich causes slow refresh time.
Since you are using cards I suggest that you try to use the new card visual since you can place several measures or values at once and it will work has a single visual, can help reduce the time.
- mdm202510 months ago
Helper I
Hi MFelix ,
The main data file that I'm importing is a xlsx file of 1 GB size with around 7 mil rows. The relationship model is very simple just the main Table created by the main data file and 2 other created in PowerQuery from data in the main Table(these are very small and used for USERELANTHIOSHIP functions used across the majority of DAX measures). So the relationship in the model is one(small table) to many (main large Table).
I did not split the main Table data into dedicated Questions tables because I am using to many question from the main data file so the Star schema would have to many dimensions tables if I would.
I am bringing several other xlsx files in the report but these don't have a relationship with the main table and have their own DAX measure unrelated with the main Table measures.
Regarding the hardware I am using is not the greatest(a AMD Ryzen 5 laptop with 32 GB of RAM) but I don't see the CPU going full throtlle when navigating between report pages.