Understanding Refresh Time Display in Power BI
Are you struggling to keep track of when your Power BI reports were last updated? Organizations often need to monitor data freshness but find it challenging to display this information directly in their reports.
Solution Overview
We’ll create a dynamic refresh time indicator using DAX and display it prominently in your Power BI report. This solution works for both Power BI Desktop and Service.
Data Model
Single-table solution using a calculated table to store and display refresh time information.
Implementation Steps
- Create a new calculated table using DAX:
RefreshTime =
DATATABLE(
"LastRefresh", STRING,
"Value", DATETIME,
{{"Last Updated", NOW()}}
)
- Add a new measure for formatting:
LastRefreshDisplay =
VAR CurrentTime = SELECTEDVALUE(RefreshTime[Value])
RETURN
FORMAT(CurrentTime, "mm/dd/yyyy hh:mm:ss AM/PM")
- Create the visual:
- Add a card visual to your report
- Drag LastRefreshDisplay measure to the Fields section
- Format the card to match your report theme
- Configure refresh settings:
- In Power BI Desktop: The time updates on each manual refresh
- In Power BI Service: Set up scheduled refresh to update automatically
- Optional: Add automatic time zone conversion
LocalRefreshTime =
VAR UTCTime = SELECTEDVALUE(RefreshTime[Value])
RETURN
UTC2LOCAL(UTCTime)
Troubleshooting
- If refresh time doesn’t update: Verify that your dataset has automatic refresh enabled
- For blank values: Check if the RefreshTime table was created successfully
- Time zone issues: Use UTC2LOCAL function to convert to local time
- Performance concerns: The calculated table has minimal impact on report performance