Power BI 12 Days of Dashboards – Day 8 – Fitbit Dashboard

Fitbit Power BI Dashboard

Day #8 - Fitbit Activity Dashboard

As part of my Power BI 12 Days of Dashboards series, day #8 showcases a customized Fitbit dashboard. This could easily be extended to build a dashboard for Garmin, Microsoft Band, or any other activity tracker that allows for data export.

Here is an example of the dashboard showing my yearly metrics. You can build this with your own Fitbit data by following the steps below.

The first step to creating this dashboard is to export your Fitbit stats from http://www.fitbit.com/.

  1. Navigate to http://www.fitbit.com/
  2. Click on “View Settings" (gear icon), then "Settings" on the top ribbon
  3. On the left, click on "Data Export"
  4. This next part is quite manual due to the Fitbit limitation of only allowing you to export 31 days at a time. Export your monthly stats for your desired time frame into a dedicated folder. This folder path will be the input parameter for the dashboard, so only place your exported .csv files in this path. I exported all 12 months in building this. TIP: Only select Activity in the data type selections.

Next, download the Power BI Template from here and continue with the following steps:

  1. Download and open the attached FitbitTemplate.pbit file and open it in Power BI Desktop
  2. A popup box appears asking for the full path of the folder of your exported .csv files from the above steps. Provide the full path to the folder on your computer and click the "Load" button in the bottom right. Leave the first parameter as it is, just fill in the second parameter containing the folder path.

Please leave a comment if you've enjoyed the dashboard or if you have any additional suggestions to improve it.

Sam Lester (MSFT)

Comments (11)
  1. Are there any Power BI templates that you know of for the other Fitbit exports of “Body”, “Foods” and more importantly (for me) “sleep”?

    Also, would you know of any pointers towards performing some ‘trend analysis’ for ‘Activities’ (and the others)?

    1. Hi George, I’m not aware of any other activity templates. I whipped this one up before work this morning for the blog series and only included steps since that’s the only data I track (and thus had available). If you want to send me an email and include your exported sleep stats, I can spend a few minutes on a sleep tracker for you and share out the dashboard in a future blog post. In terms of trend analysis, check out the forecasting feature that I believe was initially released in September and included in the PBI service last month. https://powerbi.microsoft.com/en-us/blog/power-bi-desktop-november-feature-summary/#forecasting
      With some of the visuals, you can use the Analytics tab to add trend lines in the same way I added max, min, and 10k lines in the steps/day visual above.

      1. Thanks Sam. I have been following this great series, and I do appreciate that they are demos of what ‘can’ be done quickly.
        Have a look at the following. Another good starter: https://powerbi.microsoft.com/en-us/partner-showcase/cobweb-fitbit/

      2. I’ve uploaded my ‘attempt’ at a Fitbit Dashboard, it’s still a work in progress. Tried to give credit where credit is due: https://gallery.technet.microsoft.com/FitBit-Activity-Power-BI-16be9c7a

        1. Hi George, your dashboard looks great! Thanks so much for extending this project and linking them together (along with the project from Cobweb, which I hadn’t seen). This will help a lot of people who land on any of these projects to figure out their favorite way to visualize Fitbit data. Also, great thought on the stacked column chart for the fairly/lightly active minutes in your dashboard. I really like that representation.

  2. Note that this is a US date format. and doesn’t work when the users data is not in US date format.
    I found that I needed to make a few changes to get this to work.
    Firstly, open and then File > Options and settings > Options > Regional Settings – Change to your regional settings. Save and close.
    Open again, then “Edit Queries” -> where set change the path and file names to your path and file names.
    Under “Other Queries” select “Advanced Editor”.
    Delete the line replace the 3 lines, with the two below (removing the middle line):
    #”Promoted Headers” = Table.PromoteHeaders(#”Removed Top Rows”),
    #”Removed Blank Rows” = Table.SelectRows(#”Promoted Headers”, each not List.IsEmpty(List.RemoveMatchingItems(Record.FieldValues(_), {“”, null}))),

    1. George, thanks again for the feedback and assistance with this dashboard. I’ve had several challenges with international formats since my machines are all in US-based formats, but I live (and frequently share solutions) in Europe. In the Goodreads dashboard, I had to change the File Origin of the .csv file during import from “1252: Western European” to “65001: Unicode (UTF-8)” to properly display some of the international characters in author names, book titles, etc. After this project wraps up I am thinking about doing a deeper dive blog entry into the different international format considerations in Power BI since I seem to be encountering them a lot lately.

  3. Jon Culp says:

    You could automate the data pull using the fitbit APIs to get historical data. I am currently trying to accomplish this.

    1. Hi Jon, great suggestion. I noticed that Fitbit provides an API, but I tried to keep the dashboards in this series fairly basic and based on standard export capabilities. There are also a couple projects on GitHub that export stats over a data range so you don’t have to perform the built-in export 12 times (one for each month).


    2. Dave says:

      Hello Jon Culp,
      Were you able to do this? automating data pull via Fitbit APIs.
      I am trying to pull data to a central DB from multiple Fitbit users within a group. I will be glad to hear how you went about it.

  4. Dave says:

    I am also trying to use the FItbit API to pull data from multiple users, please anyone done this before?

Comments are closed.

Skip to main content