Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Score big with last-minute savings on the final tickets to FabCon Vienna. Secure your discount

Reply
bhalicki
Helper V
Helper V

Powerquery table refresh time

Hi all,

Is there a system table (or other) that will display the time it takes to refresh each table in a PowerBi semantic model?  I want to establish baseline performance before we embark on some significant model enhancements.

 

Thanks,

Ben.

1 ACCEPTED SOLUTION
v-dineshya
Community Support
Community Support

Hi @bhalicki ,

Thank you for reaching out to the Microsoft Community Forum.

 

There is no built-in system table in Power BI Desktop or Power Query that directly logs refresh duration per table. There are external tools and logging techniques to monitor this. Here's how you can approach it:

1. Use Power BI Performance Analyzer: This gives you visual timing metrics for visuals and queries during report usage, not during model refresh. But for actual table refresh times, you'll want to use one of the following:

2. Use Power BI Desktop + Power Query Diagnostics: Power Query includes diagnostics tools that help track query execution time.

Please follow below steps:

Go to Power Query Editor. From the toolbar: Tools > Start Diagnostics. Refresh the queries or refresh all tables. Then click Stop Diagnostics.

Power BI will generate two tables: Diagnostics & Step-level diagnostics

These show timings for each query step, including overall durations. You can group them by table and get a good sense of performance per table.

3. Use Power BI Premium + XMLA + DAX Studio / Tabular Editor: If you're using Power BI Premium (or Premium Per User), you can: Connect via DAX Studio using the XMLA endpoint. Use DISCOVER_COMMANDS or DISCOVER_TRACE_EVENT to trace events and durations during dataset refreshes. Alternatively, DAX Studio has a "Server Timings" and "Query Plan" tab that can show query timings but not refresh per sec.

4. Scripted Logging with PowerShell or TMSL:
If you're managing refreshes via Power BI REST API or through scheduled scripts (in Power BI Service), you can:

Capture refresh start/end times via the API. Log them to a database or file. Over time, this helps build a baseline.

This won’t show per-table refresh, but you can trigger tables individually with TMSL and time them separately.

5. External Tools: SQL Server Profiler or Log Analytics (Premium): If you're in a Premium workspace and want enterprise-grade tracing: Use Log Analytics and bind it to your workspace. Capture and analyze refresh traces in detail. You can see per-table processing events, duration, memory usage, etc.

There's no native system table, but with these tools you can build the insights.

 

Please refer community forum thread .

Solved: Power Query taking forever to load or refresh - Microsoft Fabric Community

 

If my response has resolved your query, please mark it as the Accepted Solution to assist others. Additionally, a 'Kudos' would be appreciated if you found my response helpful.

Thank you

View solution in original post

4 REPLIES 4
v-dineshya
Community Support
Community Support

Hi @bhalicki ,

Thank you for reaching out to the Microsoft Community Forum.

 

There is no built-in system table in Power BI Desktop or Power Query that directly logs refresh duration per table. There are external tools and logging techniques to monitor this. Here's how you can approach it:

1. Use Power BI Performance Analyzer: This gives you visual timing metrics for visuals and queries during report usage, not during model refresh. But for actual table refresh times, you'll want to use one of the following:

2. Use Power BI Desktop + Power Query Diagnostics: Power Query includes diagnostics tools that help track query execution time.

Please follow below steps:

Go to Power Query Editor. From the toolbar: Tools > Start Diagnostics. Refresh the queries or refresh all tables. Then click Stop Diagnostics.

Power BI will generate two tables: Diagnostics & Step-level diagnostics

These show timings for each query step, including overall durations. You can group them by table and get a good sense of performance per table.

3. Use Power BI Premium + XMLA + DAX Studio / Tabular Editor: If you're using Power BI Premium (or Premium Per User), you can: Connect via DAX Studio using the XMLA endpoint. Use DISCOVER_COMMANDS or DISCOVER_TRACE_EVENT to trace events and durations during dataset refreshes. Alternatively, DAX Studio has a "Server Timings" and "Query Plan" tab that can show query timings but not refresh per sec.

4. Scripted Logging with PowerShell or TMSL:
If you're managing refreshes via Power BI REST API or through scheduled scripts (in Power BI Service), you can:

Capture refresh start/end times via the API. Log them to a database or file. Over time, this helps build a baseline.

This won’t show per-table refresh, but you can trigger tables individually with TMSL and time them separately.

5. External Tools: SQL Server Profiler or Log Analytics (Premium): If you're in a Premium workspace and want enterprise-grade tracing: Use Log Analytics and bind it to your workspace. Capture and analyze refresh traces in detail. You can see per-table processing events, duration, memory usage, etc.

There's no native system table, but with these tools you can build the insights.

 

Please refer community forum thread .

Solved: Power Query taking forever to load or refresh - Microsoft Fabric Community

 

If my response has resolved your query, please mark it as the Accepted Solution to assist others. Additionally, a 'Kudos' would be appreciated if you found my response helpful.

Thank you

Hi @bhalicki ,

As we haven’t heard back from you, we wanted to kindly follow up to check if the solution provided for the issue worked? or Let us know if you need any further assistance?
If our response addressed, please mark it as Accept as solution and consider giving a KUDOS. Feel free to reach out if you need further assistance.

 

Regards,

Dinesh

Hi @bhalicki ,

As we haven’t heard back from you, we wanted to kindly follow up to check if the solution provided for the issue worked? or Let us know if you need any further assistance?
If our response addressed, please mark it as Accept as solution and consider giving a KUDOS. Feel free to reach out if you need further assistance.

 

Regards,

Dinesh

mtayyab07
Frequent Visitor

Power BI does not show individual table refresh times by default....only the total model refresh time is available in standard history. If you have Premium or Fabric, you can use SemanticModelLogs and KQL to get refresh durations for each table or partition. Without Premium or Fabric, table-level refresh times aren’t available. I recommend using log analytics to set a performance baseline before making any model changes.

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

Check out the August 2025 Power BI update to learn about new features.

August 2025 community update carousel

Fabric Community Update - August 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors