Introduction: Create an Interactive Fitbit Dashboard With IFTTT

One of the best parts of my week is when I receive my weekly progress report from Fitbit. I’m so excited to see just how active I was the previous week, but I’ve always wanted to be able to compare my progress from when I’m training for a race to when I’m just on my normal exercise grind. While Fitbit’s own dashboard is great for seeing data from a single day, I needed a better solution to compare my fitness trends over time. Another great thing about using Initial State for this is the ability bring data in from multiple sources. So, I can have a dashboard that combines my Fitbit data with any other device all in one location.


Being newer to coding, I was nervous about how much time this may take me. I had to find a way to do this without having to spend the next year of my life taking online classes learning how to code. This is when my co-worker at Initial State, Rachel, showed me that I could use a wonderful service called IFTTT to connect my Fitbit to just about anything. Now I can see all of my Fitbit data, and get an idea of how active I’ve been with just a glance. I can also compare any day to another with just a few simple clicks.

What you need for this project:

1. An Initial State account

2. An IFTTT account

3. A Fitbit (I use a flex, but you can use any of their devices)

4. The willingness to see exactly how many minutes you spend sedentary in your life

Step 1: Initial State

Signing up for Initial State is easy! Just go to initialstate.com/register to create your account. Type in your email, password, click register and you’re done!

You can watch the video above if you’d like a walk through of how to sign up.

Create a home for your Fitbit data

This is where you’ll create a location for your Fitbit data to post.

1. Click the cloud icon in the top right of your bucket menu to create a new https bucket.

2. You can name your bucket anything you wish. Mine is named “Fitbit Dashboard.”

3. Click Configure Endpoint Keys

4. Optionally, to make it easier to recognize my API endpoint key, I changed my bucket key to fitbit-dash.

5. Below that, you can change your access key if you wish. Using whichever one pops up is fine.

6. Click create

Once you’ve gone through those steps, you’ll see you’ve created a new bucket ready to fill up with some data. Next you’ll set up your IFTTT accounts and get your Fitbit to fill that bucket up!

Step 2: IFTTT

IFTTT is super easy to use! I've used IFTTT to connect my Amazon Echo and the DO Button App to Initial State dashboards in other posts. You can see the Amazon Echo Instructable here. I'll be posting the DO app Instructable soon as well!

1. Create your IFTTT account here: https://ifttt.com/join

2. Create a new recipe

3. Click My Recipes

4. Click Create a Recipe in the top right

5. Click the blue text that says “this.”

6. Type “Fitbit” in the search bar, and click the Fitbit icon.

7. You’ll be required to connect your Fitbit account to IFTTT if you’ve never done it before. You’ll only have to do this once. Submit your Fitbit information, and after it connects you’ll see a handful of options in gray boxes.

8. You can use any of these options to send data to Initial State. For the sake of this tutorial, we’ll be using the first option titled “Daily activity summary.” Click the first gray box.

9. Click “Create Trigger.”

10. Click the blue text that says “that”

11. Type “Maker” in the search bar, and choose the icon with the big M on it. (This channel allows you to connect things that may not have an IFTTT channel yet. Initial State has already been approved for an IFTTT channel, but the channel has not yet been created. We’ll update this tutorial as soon as that’s happened!)

12. Your only option is “Make a web request.” Click it.

13. Go back to your Initial State Fitbit bucket you created earlier and click the settings link under the title.

14. Copy the API Endpoint URL by clicking the copy icon next to it.

15. Go back to IFTTT and paste the URL in the URL section.

16. Change Method to POST and Content Type to application/json.

17. Click in the body section, and type the following: {"key":"TotalSteps","value":"{{TotalSteps}}"}

18. Click create action.

19. Click create recipe.

IMPORTANT NOTE: Adding Calorie, distance, activity, and other data

A. “TotalSteps” will be the name of the tile in your Initial State dashboard.

B. The Important part here is the {{TotalSteps}} section. This will tell IFTTT what specific data from your Fitbit that you’ll want to send to Initial State. You’ll have to create a new recipe for every data ingredient you want on your dashboard. In this example, we’re using the total steps ingredient.

When you want to use another ingredient (calories, distance, etc...), you’ll go through this process using the same template, but change the ingredient and key name like so:

1. Highlight {{INGREDIENT}}

2. Choose the new ingredient for this recipe. Click Add Ingredient.

3. It will replace your highlighted {{INGREDIENT}}, and you can then change the key name if you haven’t already done so.

NOTE: I messed up a few of these recipes my first time around on this because I kept the template text for the body in my Notes app on my computer, which tried to format some of my characters.

For example, it made some of my quotation marks slant instead of them being straight up and down. This read in IFTTT as a different command than I originally intended. To fix this problem, I paid close attention to the characters and deleted and retyped those that needed to be corrected.

Be Active and Collect Data

On my dashboard, I made recipes for the Date, Total Steps, Calories, Distance Covered, Sedentary, Lightly Active, Fairly Active and Very Active ingredients. If you have a Fitbit that tracks floors climbed and elevation, you can create recipes to collect that data as well.

I also added all of my sleep and weigh in data to the same dashboard. You can do this by following the same process, but instead of using the “Daily Activity Summary” trigger, you would use the “New Sleep Logged” or “New weight logged” trigger on the "This" part of your recipe.

After you’ve gone through and made recipes for all the ingredients you want on your Initial State Fitbit dashboard, it will automatically upload your data every morning. (You have to make sure you sync your Fitbit the day before, or there won’t be any data to add to your dashboard). After a few days, it will be awesome to easily see just how active you’ve been. When you upgrade your account (only $5 a month), you will be able to see more than one day’s worth of data at a time. Now, go out and get some steps in!