Skip to content
Henry Arce automation · AI · data

Your Power BI report is slow: causes and fixes

You open the report and the charts keep loading, or every filter takes seconds. It is almost always one of these six causes. Start with Performance Analyzer in Power BI Desktop (Optimize ribbon): it tells you which visual is slow and where its time goes. If you can’t find it, I’ll go through it with you.

Ask for a quote

The six most common causes

For each one, the clue that gives it away and what to do. Performance Analyzer tells you where to start.

Cause 1

Too many visuals on one page

The page is slow to open and, in Performance Analyzer, many visuals spend time in “Other”: they are waiting for the rest to finish.

  • Keep only what is needed on each page.
  • Move the detail to a drillthrough page or a report page tooltip.
  • Test custom visuals one by one: a poorly built one slows down the whole report.

Cause 2

A table that shows everything

A table or matrix shows thousands of unfiltered rows, and it is the slowest item in Performance Analyzer.

  • Give it a Top N filter to limit the rows, with a maximum higher than anyone will look at.
  • Open the page with a sensible filter already set, such as the current month, instead of the whole history.

Cause 3

The model loads more data than it uses

The file is large, refresh is slow too and the whole report lags, not one particular visual.

  • Remove the columns and rows no report uses; for example, load only the last few years.
  • Turn off “Auto date/time”: it creates a hidden table for every date column.
  • Create new columns in Power Query rather than as DAX calculated columns.

Cause 4

Heavy DAX measures

In Performance Analyzer, the “DAX query” takes most of the time.

  • Store in a variable (VAR) whatever the measure calculates twice, so it is calculated only once.
  • Inside CALCULATE, use simple conditions on a column instead of FILTER over the whole table.
  • Copy the query from Performance Analyzer and test it in DAX query view until it gets faster.

Cause 5

Two-way relationships

In model view, a relationship has arrows in both directions.

  • Keep them single-direction unless they are needed: two-way ones give every query more work.
  • If it was so a slicer only shows options with data, filter the slicer with an “is not blank” measure instead.
  • If a measure needs to filter both ways, turn it on only in that measure with CROSSFILTER.

Cause 6

DirectQuery or a slow source

The data isn’t imported: every filter asks the database, and in Performance Analyzer “Direct query” takes the time.

  • Consider importing the data: it is Microsoft’s recommended default and it answers from memory.
  • If you need DirectQuery, keep measures simple (SUM, COUNT, MIN, MAX, AVERAGE) and avoid two-way relationships.
  • Keep the gateway and the database close to your Power BI region to cut latency.

What’s included

Diagnosis

I measure the report with Performance Analyzer and see which page, visual and measure take the time.

Lighter model

I remove columns, rows and history nobody uses, and whatever bloats the model without adding anything.

Faster DAX

I rewrite the slowest measures and check they return the same figures as before.

Clearer pages

Fewer visuals per page and the detail kept apart, so it opens sooner and reads better.

Before and after

I give you the load times measured before and after the change, page by page.

Power BI Desktop, Power BI service, Performance Analyzer, DAX, Power Query, DirectQuery, SQL Server

How we work

  1. Free review45 minutes on a video call to look at your data, your tasks and what really takes up your time.
  2. Written proposalWhat gets built, how many rounds of changes, the fixed price and the deadline, set once I have seen the data.
  3. BuildI show you progress along the way. You pay 50% to start and 50% on delivery, always with an invoice.
  4. Delivery and trainingI leave it working, documented and explained to your team. If you like, I carry on with monthly maintenance.

Why work with me?

What changes compared with hiring an agency or off-the-shelf software

  1. You talk to the person who builds itWhoever listens to you in the review is who designs, codes and delivers the work. No sales reps, no middlemen.
  2. I know how a company works day to dayI have worked with data since 2019, first in consulting and now inside industry, with ERPs such as A3, SAP or Clavei.
  3. A fixed price, in writingBefore we start you know what gets built, how many rounds of changes there are and what it costs. No surprises at the end.
  4. Your data, looked afterI work read-only whenever possible and the applications live on EU servers with nightly backups.
  5. No lock-inI hand the work over documented, and much of what I do is open source: you can see how I work before you call me.
  6. I measure what you gainI note how long the task takes today and how long afterwards, so you know whether it was worth it.

Related projects

Frequently asked questions

Why is my Power BI so slow?
Almost always for one of these reasons: too many visuals on the page, a model with more data than it needs, heavy DAX measures, two-way relationships or a slow source with DirectQuery. Performance Analyzer tells you which.
How do I know which visual is slow?
Open Performance Analyzer (Optimize ribbon in Power BI Desktop, or the View menu when editing the report in the service), select “Start recording” and then “Refresh visuals”. You’ll see how long each one takes and on what.
Is it better to import the data or use DirectQuery?
Import, unless you have a reason not to: the data is queried from memory and responds fast. With DirectQuery every visual asks the database, so it is only as fast as the database. It makes sense if you need near real-time data or it doesn’t fit in the model.
How much does it cost for you to speed it up?
It depends on the cause and the size of the model. Tell me which report is slow and I’ll send you a fixed quote before starting, with no obligation.

Other services

Power BIPower BI for factoriesPower BI not refreshingPower BI gateway errorAutomation with n8nEmail orders into the ERPAI assistant for your ERPWebsites and appsServices

Leave Henry a message

It goes straight to Henry. Your details are only used to reply to you.