While I was at QS 15, I heard that Fitbit had made their data export free. I have been using Zenobase for a while now to store and export my hourly Fitbit data, but I was interested to see what FitBit was now offering their users. I am not sure whether this new feature was added in connection with the recent Fitbit IPO or in response to customer complaining about lack of support for syncing to the iOS Health app. Previously, Fitbit charged customers $50/year to export their data and this was the source of many gripes from customers. Whatever their reasoning, I commend Fitbit for their simple statement that “Your data belongs to you!” (Better late than never.)
If you are looking for the Fitbit data export options, you can find them through your Fitbit dashboard page. When you log in to your online account from the web, locate the cog icon on the top toolbar, click on it, and choose Settings. When the settings page comes up, choose the Data Export section.
As you can see, you can select a time period and what kind of data you wish to export. I was disappointed not to see heart rate data as an option, but perhaps it is coming.
Since I have been using my Fitbit Charge HR since the end of March, I selected Custom for my Time period and choose all the various Data types to see the structure of the exported data. This was when I ran into my first issue, which turned out to be a known Fitbit bug. I used the calendar widget to choose March 27, 2015 through July 2, 2015 as my time period, but when my data exported, it only contained data from March 27 through April 26.
I searched the Fitbit forums and found a few different threads on this issue. A customer had posted the helpful observation that the calendar widget was inserting the wrong date format, and his work-around was to enter the date directly in the correct format (MM/DD/YYYY), which worked for him. Later users mentioned that this helped them, but more recent comments indicated that this broke again, perhaps when Fitbit recently added new tiles. I followed all the suggestions, but it didn’t work for me in Chrome or IE.
Before deciding if I wanted to go through the hassle of combining monthly data or wait for them to fix this bug, I decided to look at the output for combined data export for a single month. Unfortunately, when including all supported data types, the Excel export option created a bunch of separate worksheets in a single workbook and the CSV formatted output dumped various differently formatted tables into a single document. I was hoping to avoid needing to parse this output with regex so exporting types separately seemed the most sensible course of action.
To get my first month of Activity data, I entered my date range manually to begin on March 28 and chose Activities under the Data section. Here is the first week of the data I exported as CSV.
So far, so good. I also exported the same data as XLS, and thought it was a bit odd that the dates in the CSV export showed up as MM/DD/YYYY and the date format in the XLS export showed up as YYYY-MM-DD. Even trying the dashed date format for XLS export in the dialog didn’t get the software to export a longer time frame.
To avoid further frustration, I decided to give up on trying to export more than a month at a time for now. If you are a Fitbit user, you can search for data export in the forum to add your own comments and likes to Fitbit threads about this issue. Basically at the moment you are left to export one month at a time and combine your data, or choose a third party provider like Fitabase or Zenobase that will let you export all your data at the same time.
I also exported my sleep data using the Fitbit data export. Again, I only got a month of my data and it was pre-summarized to include information about the minutes I slept, minutes I was awake, and total time in bed. I currently get sleep segment information from Zenobase, but this is useful pre-summarized additional data that I may want to export and track in the future.
One advantage to this format is that it summarizes data for a specific night of sleep. I have run into issues with the correct night of sleep being assigned to a segment depending on where it falls relative to the midnight border, however, and it’s not yet clear to me if this issue also exists here.
I don’t currently log my foods in Fitbit’s software. After leaving BodyMedia’s food logging interface and exploring MyFitnessPal, I liked the idea of trading up to a database with a broader selection of food items that either Bodymedia or Fitbit offered. Since I had logged food data for a few days in Fitbit as I evaluated the two side by side, I exported my Food data to see what Fitbit’s format looked like.
After I swtiched to using MyFitnessPal, I had set it up to export summary data to Fitbit. Those days looked like this.
The CSV Food output included a single table with calorie summary data followed by the table listing details of foods eaten and days with imported summary data from MFP. I found this format to be less useful than it could have been. To make the food log part of the table more analysis-ready, it should instead contain a date column filled in for all rows, a separate column labeled Meal with the name listed in every row, and no partially blank lines.
As an example of what I mean, here is the table format I created from a report in similar format that I exported from Bodymedia’s software.
The XLS format separated different kinds of information into tabs, with summary data on the first tab and detailed food log information for specific dates on later tabs. It would take some work to get this processed into an analysis-ready format.
If I was going to use this detailed information, I would definitely restructure it in JMP to match my standard format. However, since I already get this information from exports of my MyFitnessPal data, I don’t need to do that at the moment. Perhaps I will save my suggestions on reformatting this data this for a future JMP blog.
I thought I had set up my Withings wireless scale to sync to Fitbit, but I noticed that this doesn’t appear to be working. For that reason, only my starting weight shows in the Body export. I am going to need to fix that or import my daily weight data data directly from Withings or MyFitnessPal (whose sync with Withings does appear to be working for me).
All in all, I’m a bit disappointed by Fitbit’s data export options. The bug with the Custom date range that would force me to export monthly data is especially annoying, since I had to deal with monthly export of many files (~50 in the end) when using Bodymedia’s native export tools and I was very glad to leave that behind when I found Zenobase. I much prefer being able to pull my whole table whenever I want to without needing to write any additional code or concatenate files manually, so I will stick with Zenobase.
However, exploring my Fitbit export options wasn’t a waste of my time as the Sleep data offers some additional useful summary information. I’ll probably work on exporting that data for use at some point.