Using The Dynamic Countdown Timer in Power BI

Do you want to track project deadlines, sales targets, or any time-sensitive metrics using Power BI?

Or are you looking for a visually appealing way to track days, hours, or minutes in a dashboard until a big project or event?

A dynamic countdown timer is exactly what you are looking for.

It tracks deadlines, event launches, project milestones, and monitors KPIs.

It can even be used to enhance user engagement with real-time updates.

By “Dynamic”, it means the displayed timer updates automatically in real-time or at intervals without a manual refresh!

Power BI does not natively support real-time sub-seconds updates (like a live digital clock), but in this article, we’ll build a workaround.

Banner image for Power BI's Dynamic Countdown Timer

What Is A Countdown Timer?

A countdown timer is a simple dynamic visual element that automatically displays the remaining time until a predefined event or deadline.

Using a dynamic countdown timer is super useful for tracking time-sensitive metrics in business scenarios such as:

  • Time until next product launch: to build anticipation and track progress towards a product launch date.
  • Time left in a sales campaign: to encourage the sales team by showing the remaining time for promotions.
  • Deadlines reminders in project dashboards keep project teams aligned with deliverables.

Key Concepts & Requirements

What are the requirements for creating and using a dynamic countdown timer in Power BI?

  • A target datetime: a fixed future datetime (e.g., event start time).
  • The current datetime: dynamically fetched using DAX functions (e.g., NOW(), which returns the current datetime.
  • Time remaining calculation: A DAX measure to calculate the difference between the target and current time.

Key DAX Functions

To calculate, display, and use a dynamic countdown timer, you’ll need to use these DAX functions below:

NOW(): returns the current date and time including hours, minutes, and seconds.

The NOW() function in DAX and its details

DATEDIFF(): computes the difference between two datetimes in specified units like seconds, minutes, or days.

The DATEDIFF() Function in DAX and its details

FORMAT(): converts the calculated time difference between the two datetimes into human-readable formats.

The FORMAT() Function in DAX and its details

Using a dynamic countdown timer in Power BI has limitations for real-time updates, as discussed above.

Below are solutions and workarounds to keep your countdown timer as dynamic as possible:

Power BI Desktop vs. Power BI Service

Power BI Desktop has no auto-refresh capability, measures only updates on manual data refresh (clicking refresh) or interactions (filtering, slicing).

Power BI services supports schedule refreshes (hourly, daily).

For more details, check out our Power BI version comparison to help you pick the right one!

Auto Page Refresh (Premium)

This requires Power BI Premium or Premium Per User (PPU), and it allows automatic visual updates at set intervals (e.g., every 1 min, not seconds).

This only works in Power BI Service, not desktop.

Manual Refresh Workaround

Creating a bookmark that refreshes visuals and adding a button to trigger the bookmark.

Users click the button periodically to update the timer.

Power Automate (Advanced Workaround)

Use Power Automate for near real-time updates (every few seconds) to trigger a dataset refresh.

However this requires Power BI API setup, and it may hit refresh limits based on Power Automate license.

Building A Simple Countdown Timer

This is how to create a basic countdown timer that calculates and displays the time remaining until a target date.

1 – Add a Fixed Target Date to the Model

Create a new table for a static date. Go to Home > Enter Data under data options.

Where to find the Enter Data button within data options

Add a single row with your future target date (e.g., 2025-12-31) following the example below.

GIF showing how to add a single row with the future target date in mind

2 – Create a Measure for Time Remaining.

Use these DAX functions below to calculate the time remaining towards the target date and time.

  • NOW(): fetches the current time.
  • SELECTEDVALUE(): ensures a single target date is used.
  • SECOND(): calculates the difference in seconds.

Create a new a New Measure. Go to Home > New Measure in the calculations group.

How to create a new measure, found in the calculations group

Type in the DAX formula below to calculate and compute the time remaining in seconds.

Adjusting your DAX formula to find the remaining time in seconds

Your DAX formula in the formula tab

Visualize the New Measure on the Power BI canvas with a card visual. It shows the total remaining seconds.

Next is to format the countdown time to a much more readable format.

The card visual showing your new measure

3 – Format the Countdown Timer (Days, Hours, Minutes)

Next is to refine and format the countdown timer (Time Remaining measure) to display in a human-readable format, digital style countdown.

Create a new a New Measure again. Go to Home > New Measure in the calculations group.

Type in the DAX formula below to Format the original Time Remaining measure above into a digital countdown.

A more complex DAX formula that Formats the Time Remaining measure into a digital countdown

The DAX formula below should return a digital countdown style to a card visual.

What the new DAX formula returns

Add the new Countdown Timer measure onto a card visual and click the refresh button to see it update in real time as you click Refresh.

GIF showing the Countdown Timer refreshing in real time

Making It Dynamic

Making it “Dynamic” makes the countdown timer periodically and automatically update without requiring manual refreshes or user interaction, as you can see above.

Dynamic inputs per row or event make the countdown timer work for multiple events instead of a single fixed date.

For this to work, you’ll need a table with two columns, Event Name and End Date, with each row showing its countdown.

How To Make It Dynamic

Auto Page Refresh

Available in Power BI Premium or Premium Per user (not Power BI Pro or Free).

It’s great for dashboards as Power BI automatically refreshes visuals at a set interval.

To set it up, publish and open your reports in Power BI Service. Go to Format > Page Refresh. Set interval (e.g., 5 minutes).

Trainer Insight: We find that the most successful dashboards combine multiple refresh methods.

Use Auto Page Refresh for regular updates and manual refresh for instant updates on demand.

This hybrid approach gives flexibility and keeps both casual viewers and power users happy.

Power Automate

A Power Automate flow triggers a dataset refresh at set intervals but uses the Power BI API to push the updates.

It’s best for reports needing second-level precision, it requires knowledge of API setup, and pro users are limited to 48 refreshes per day.

Direct Query

Direct Query connects to a live database (SQL Server, Azure). The timer updates whenever the source data changes.

It’s best for Dashboards linked to real-time operational data and performance, depending on database speed.

Advanced Use Case Example

You can track multiple deadlines using a dynamic countdown timer along with conditional formatting for color coding to highlight urgency.

Create or connect to a table with multiple rows for different events and deadlines.

Our table with multiple rows

Next, we need to create a Measure to calculate the Time Remaining (as done earlier above).

Or we can incorporate it into the Format Measure as seen below.

Incorporating the Measure into our DAX formula

The first two VAR DAX formulas calculate the current time (using NOW()) and time remaining (using DATEDIFF()).

Just as we’ve used in building a simple countdown timer above.

What our new DAX formula returns

The measure above formats the countdown timer to show in dd:hh:mm:ss as displayed in the table visual below.

Gif showing the countdown timer working in real time

Conditional formatting can also be used to highlight urgency and alerts.

In this scenario, conditional formatting can be applied to the Countdown Time (Multiple Events) column as shown above.

In Conditional formatting (Quick Conditional Formatting, without measures).

Applying conditional formatting to edit the background / font colour

Conditional formatting can be applied to either the Background color or the Font color under Cell elements.

Select either Background or Font color. Pick Rules. Add the following rules.

  • If value contains 🔴 EXPIRED, then Red.
  • If value starts with 00: then Orange (less than 1 day remaining on the timer)

The background colour interface where you can apply rules to change formatting

Feel free to add RULES based on your own countdown timer, calculations, and urgency needs.

Navigation image showing troubleshooting common issues

Troubleshooting – Common Errors

There are multiple common issues with using a dynamic countdown timer in Power BI.

Common issues include:

Error 1 – NOW() is not updating as it only recalculates during interactions and when you click the Refresh button.

Error 2 – Timers freezing in Power BI Service are caused by browser caching or auto refresh disabled.

Error 3 – Format Errors when subtracting datetimes are caused by incorrect DAX syntax, especially using DATE() or DATETIME() functions.

Error 4 – Auto refresh is not supported in some environments as it requires Premium subscriptions to Power BI.

Troubleshooting – Solutions

Solution 1 – Enable Auto Page Refresh (Premium) in Power BI Service.

Solution 2 – You can also enable Auto Page Refresh (minimum 1 min) and add a Refresh button with bookmarks.

Solution 3 – Use DATEDIFF() for accurate calculations, then convert to dd:hh:mm:ss.

Solution 4 – Use Direct Query to connect to datasets, especially live data.

It’s important to use Measures and not Calculated Columns to ensure the dynamic behavior of the countdown timer.

For non-premium users, create a Bookmark in Power BI desktop, insert a Button, tied to the bookmark, to create a clickable Refresh button.

Navigational image showing best practices & tips

Best Practices & Tips

To ensure a seamless use of the dynamic countdown timer in Power BI, ensure that to adhere to the following practices and tips.

1 – Use Measures, Not Calculated Columns

Measures always overcalculate columns, as measures recalculate dynamically while calculated columns are static.

2 – Auto-Refresh Test, Early in Power BI Service

Power BI Desktop doesn’t support auto-refresh, test in service to avoid premium license requirements or API limit errors.

3 – Isolate Countdown Logic

Keep the countdown timer logic in a separate table as it’s easier to maintain and reuse across reports.

4 – Balance Refresh Rate and Performance

Frequent refresh (e.g., every 1 sec) can crash reports. Set refresh rate to hourly or daily.

Trainer Insight: On our Power BI courses, people often underestimate the impact of refresh rates.

Setting them too aggressively can slow reports to a crawl.

Setting them too infrequently makes the timer feel unresponsive.

Aim for a balance – typically between 1 and 15 minutes depending on the urgency of your metric.

Conclusion

Using countdown timers enhances time awareness while tracking deadlines or events visually to drive action.

It adds urgency and interactivity to your dashboards, and live countdowns help teams react faster to time-sensitive events, deadlines, and metrics.

Key limitations include NOW() functions not auto-updating within Power BI desktop, but auto page refresh in Power BI Service (Premium feature) allows for near real-time automatic updates.

The workaround helps maintain the dynamic countdown feature and functionality and avoids Power BI constraints.

The next step is to start with a simple countdown timer, add dynamic features, and test auto page refresh in Power BI Service or integrate with Power Automate for near real-time updates.

About Ben Richardson

Ben is a director of Acuity Training which he has been running for over 10 years.


He is a Natural Sciences graduate from the University of Cambridge and a qualified accountant with the ICAEW.


He previously worked as a venture capitalist and banker and so had extensive experience with Excel from building financial models before moving to learn SQL, Microsoft Power BI and other technologies more recently.