Back to Blog

How to Export Fitbit Data to Spreadsheets Manually or Automatically on a Custom Schedule

Fitbit smartwatches and trackers constantly collect tons of health and fitness data such as the distance covered, calories consumed and burned, and much more. This information is displayed on a user-friendly dashboard in your Fitbit app, and you can also access it through your Fitbit account.

Why would you need to export all this Fitbit data?

You may want to analyze your health changes for a specific period. Fitness coaches may need to monitor the data of many people, so it’s better to have all their data in one place. Whatever reason you have, we’ll explain how you can export data from Fitbit manually, as well as automate data export directly to Google Sheets without coding. Read on to explore!

What kind of data can I export from Fitbit?

From fitbit.com, you can export the following information:

  • Fitbit profile data (display name, height, weight, etc.)
  • Fitbit Premium subscription information
  • List of friends
  • Conversations
  • Summary of your activity (distance, steps, heart rate, etc.)
  • GPS data 
  • Exercise history
  • Community data (community groups, posts, badges, etc.)
  • Summary of your sleep (minutes asleep and awake, number of times you woke up, etc.)
  • Sleep scores
  • Summary of your Fitbit Coach workouts
  • Wellness program information
  • Logs (food, water, exercise, weight)
  • Menstrual health information (if you’ve added this tracking feature in your Fitbit app)

The Fitbit data above is available for export right away for a period of up to 31 days. To export the Fitbit data for the lifetime of your account, you’ll need to submit a request.

Data that you can export via Fitbit API

If you need a thorough breakdown of your Fitbit data, you can use the API to retrieve data. This will let you export:

  • Activity (summary, time series, logging, etc.)
  • Body & Weight (body fat, goals, weight loss, etc.)
  • Devices (overview, alrams, etc.)
  • Food logging (collection data, food or ware time series, etc.)
  • Friends (invitation, leaderboard, etc.)
  • Heart rate time series
  • Sleep (sleep logs, goals) 
  • List of subscriptions
  • User (badges, profile)

If this is what you need, jump right to that section.

How to export Fitbit data from fitbit.com

First, let’s check out the native way of getting your Fitbit data. For this, you’ll need to log in to your Fitbit account using your browser. Once you find yourself on the main dashboard, you have to choose which data you need. 

How to export all data from Fitbit

Click the gear icon and choose “Settings”.

Click “Data Export” on the left, scroll down to the Export Your Account Archive section and click “Request Data“.

After that, you’ll need to confirm your request (you’ll get an email with a confirmation link). Once the ZIP file with your Fitbit data is ready, you’ll receive another email with a link to download it. The file will be available for download within 30 minutes. 

Note: The time it takes to generate the Fitbit data archive depends on the amount of data accumulated within the lifetime of your Fitbit account. In some cases, this may take a few days. To avoid long waits, consider exporting data for a specific period.

How to export Fitbit data to CSV

Repeat the first step as above – click the gear icon, choose “Settings”, and click “Data Export” on the left. You’ll see Your Fitbit Data, where you’ll need to select:

  • Time period (either a preset option or a custom one)
  • Data to include (Body, Foods, Activities, Sleep)
  • File Format (CSV or Excel)

Click the “Download” button, and your CSV file will be downloaded to your device right away.

Export Fitbit data to Excel

That’s the easy part! Fitbit allows you to choose Excel as the format to download data. You’ll need to click the gear icon => choose “Settings” => click “Data Export” => select “Microsoft Excel” as the file format.

Click “Download” and there you go!

How to export Fitbit data by time period

The flow is the same as described above. The only difference is that you need to choose a custom time period. The date range for the chosen custom time period must be less than or equal to 31 days. This means that if your start date is December 1, 2020, the end date can be up to December 31, 2020, but not January 1, 2021. 

Once ready, click the “Download” button to get your Fitbit data on your device.

How do I export my Fitbit GPS data?

You can export GPS data for a specific activity as a TCX file. For this, you need to move from “Dashboard” to “Log” and choose “Activities“.

Scroll down to the Activity History, choose the activity you need and click “View Details“.

You will see the details of the chosen activity, as well as how it looks on the map. Click the three dots at the top right and select “Export as TCS File“.

The file with the GPS data will be downloaded immediately. Now, let’s dive deeper and explore how you can export your Fitbit data to a spreadsheet app, such as Excel or Google Sheets.

Fitbit export data to Google Sheets

With Google Sheets, you have two exporting options – manual and automatic. Manual means that you’ll first need to download your Fitbit data as CSV (or Excel) and then import it into Google Sheets… 🙄

The second option is much more interesting since you can automate export of Fitbit data into your Google Sheets doc! Roll up your sleeves, since you’ll need to complete a tough challenge – getting a Fitbit API token.

Get Fitbit API token

Register a Fitbit app

Go to dev.fitbit.com to register a new app. Fill out the following fields:

  • Application name – insert any name you want
  • Description – insert the description 
  • Application website
https://www.coupler.io/
  • Organization
Coupler.io
  • Organization website
https://www.coupler.io/
  • Terms of Service URL
https://www.coupler.io/terms-of-use
  • Privacy Policy URL
https://www.coupler.io/privacy-policy
  • OAuth 2.0 Application Type – choose Personal
  • Redirect URL
https://blog.coupler.io/
  • Default Access Type – choose Read only

Check “I have read and agree to the terms of service” and click “Register“. You’ll get the API credentials, which we’ll use for obtaining an API token. Click “OAuth 2.0 tutorial page“.

Get an OAuth code

On the “OAuth 2.0 tutorial page“, scroll down to the automatically generated Authorization URL.

Once you click on it, you’ll be asked for permission to access your Fitbit data.

Click “Allow” => A new tab will open in your browser. Check out the URL address bar on it and copy the code from it.

Note: do not include #_=_ when copying the code

Go back to the “OAuth 2.0 tutorial page” and insert the code into the respective field. You’ll get the parameters to use in the POST request for obtaining an access token.

Get a Fitbit API token

This is it! We’re on the home stretch 🙂 What you need to do next is to send a POST request to

https://api.fitbit.com/oauth2/token

and obtain your access and refresh tokens. The easiest and no-code way to do this is to use Coupler.io, a solution for importing data from third-party apps and data sources. Here are the steps you need to complete:

Step 1: Sign in to Coupler.io and click “Add Importer“.

Step 2: Name the importer and choose JSON Client as the source application. Click “Continue“.

Step 3: Insert the following URL in the JSON URL field:

https://api.fitbit.com/oauth2/token

Click “Continue“.

Step 4: Configure the HTTP method, HTTP headers and URL query string using the parameters generated at the stage of getting an OAuth code.

  • HTTP method – POST
  • HTTP headers – copy the headers from the generated parameters:
Authorization: Basic M**************************************
Content-Type: application/x-www-form-urlencoded
  • URL query string – copy the generated parameters and paste them in the following format having replaced “=” with “:“:
clientId: ******
grant_type: authorization_code
redirect_uri: https://blog.coupler.io/
code: ************************************

Here is what it should look like in Coupler.io:

Click “Proceed to Destination Settings“.

Step 5: Configure the Destination.

  • Destination account: add your Google account. 
  • Spreadsheet: select your Google Sheets doc and the sheet in it that will be receiving your Fitbit token. 

Click “Proceed to Schedule Settings“.

Step 6: Click “Save and Run” to get your access and refresh tokens into the spreadsheet.

Once the import is completed, go to your spreadsheet (you can click the “Open” button to do this) and find your access and refresh tokens.

The access token is required to export Fitbit data via Fitbit API. However, it is only valid for 8 hours. The refresh token is needed to renew the access token. To do this, you’ll need to slightly change the “URL query string” parameters in your JSON importer:

grant_type: refresh_token
refresh_token: {insert-your-refresh-token}

You can also enable the Automatic data refresh in the Schedule section to schedule the refresh of your access token every hour.  Once this is done, you can always find your new active token in the destination file.

Now we can export data from Fitbit to Google Sheets.

How to export Fitbit data in spreadsheet – use cases in action

Here are the Source parameters you need to set up in Coupler.io to automate exports of Fitbit data:

  • Application 
JSON Client
  • JSON URL
https://api.fitbit.com/{resource}*

*{resource} depends on the type of data you want to export.

  • HTTP method
GET
  • HTTP headers
Authorization: Bearer {your-access-token}

Let’s check out some examples to clarify this for you.

Fitbit export sleep data

You can get the following sleep data:

Description Resource for the JSON URL
Sleep goal /1.2/user/-/sleep/goal.json
Sleep logs list/1.2/user/-/sleep/list.json
Sleep log by date/1.2/user/-/sleep/date/{date}.json
Sleep logs by date range/1.2/user/-/sleep/date/{base-date}/{end-date}.json

As an example, let’s export our sleep goal. Here is what your importer in Coupler.io should look like:

Configure the Destination and Schedule whatever you want and click “Save and Run” to export data.

Export Fitbit heart rate data

Fitbit heart rate data is usually included in the CSV or Excel file when you export data manually. With Coupler.io, you can export heart rate time series:

DescriptionResource for the JSON URL
Heart Rate Time Series /1/user/-/activities/heart/date/{date}/{period}.json
/1/user/-/activities/heart/date/{base-date}/{end-date}.json
Heart Rate Intraday Time Series /1/user/-/activities/heart/date/{date}/{end-date}/{detail-level}.json
/1/user/-/activities/heart/date/{date}/{end-date}/{detail-level}/time/{start-time}/{end-time}.json
/1/user/-/activities/heart/date/{date}/1d/{detail-level}.json
/1/user/-/activities/heart/date/{date}/1d/{detail-level}/time/{start-time}/{end-time}.json
  • All date values should be specified in the format of yyyy-MM-dd.
  • All time values should be specified in the format of HH:mm. At the same time, Coupler.io allows you to use macro for date and time, so you can specify {{1hourago}} as your start date and {{now}} as end date. For more on this, read How to use macros in JSON Client importer.
  • {period} – available options are 1d, 7d, 30d, 1w, and 1m.
  • {detail-level} – the number of data points to include either 1sec or 1min.

As an example, let’s export the Heart Rate Intraday Time Series. Here is what your importer in Coupler.io should look like:

Configure the Destination and Schedule whatever you want and click “Save and Run” to export data.

Fitbit export weight data

With Coupler.io, you can export the following body and weight data:

DescriptionResource for the JSON URL
Body fat logs/1/user/-/body/log/fat/date/{date}.json
/1/user/-/body/log/fat/date/{date}/{period}.json
​/1​/user​/-​/body​/log​/fat​/date​/{base-date}​/{end-date}.json
Body goals/1/user/-/body/log/{goal-type}/goal.json
Weight goals/1/user/-/body/log/weight/date/{date}.json
Weight logs/1/user/-/body/log/weight/date/{date}.json
/1/user/-/body/log/weight/date/{date}/{period}.json
/1/user/-/body/log/weight/date/{base-date}/{end-date}.json
  • All date values should be specified in the format of yyyy-MM-dd.
  • {period} – available options are 1d, 7d, 30d, 1w, 1m, 3m, 6m, 1y, or max.
  • {goal-type} – available options are weight or fat.

As an example, let’s export weight logs. Here is what your importer in Coupler.io should look like:

Can Fitbit export hourly data?

With Coupler.io, you can export activity intraday time series, but there is no hourly interval. However, if you need this data badly, you can export separate data for each hour. Here is the configuration you need to set up:

DescriptionResource for the JSON URL
Activity intraday time series /1/user/-/activities/{resource-path}/date/{base-date}/{end-date}/{detail-level}/time/{start-time}/{end-time}.json
/1/user/-/activities/{resource-path}/date/{date}/1d/{detail-level}/time/{start-time}/{end-time}.json
  • All date values should be specified in the format of yyyy-MM-dd.
  • All time values should be specified in the format of HH:mm. At the same time, Coupler.io allows you to use macro for date and time, so you can specify {{1hourago}} as your start date and {{now}} as end date.
  • {resource-path} – available options are calories, steps, distance, floors, elevation.
  • {detail-level} – the number of data points to include either 1min or 15min.

As an example, let’s export data about the distance covered. Here is what your importer in Coupler.io should look like:

Check out the Fitbit Web API to learn other data entities and their resources that you can export from Fitbit with Coupler.io. 

Do you need a ready-to-use Fitbit to Google Sheets integration?

The workflow above is quite intricate since you have to get an access token (and update it regularly), as well as manually tweak еру JSON URL for your data exports. Meanwhile, Coupler.io provides a number of Google Sheets integrations with Airtable, Clockify, Xero and others, where you can click most of the parameters. 

If you feel that you need a ready-to-use Fitbit to Google Sheets integration, let us know about it by filling out this form. Previous requests have already kickstarted integrations such as Trello, Shopify, and Slack. Your voice is very important to us.

Export Fitbit data to other apps

If you are going to try out another activity tracker, you may need to migrate your Fitbit data. Let’s check out how doable this is with the examples of Google Fit, Garmin, MyFitnessPal, and Apple Health.

How to export Fitbit data to Google Fit

This is going to be easy, since Google announced the purchase of Fitbit in 2019 and completed the acquisition on January 14, 2021. That’s what you’d think at first, right? However, Fitbit doesn’t support communicating with Google Fit yet. All you can do is to try some third-party apps such as FitToFit to complete your migration. This is what most Fitbit users use.

Export Fitbit data to Apple Health

Mostly the same here. There is no native connection option between Fitbit and Apple Health. However, there is an app on the App Store called Fitbit to Apple Health Syn‪c‬ that has quite a high rating (4.4 stars), so you can try it out.

Export Fitbit data to Garmin

Although there is no direct connection between Fitbit and Garmin, you can migrate your data via the export-import mechanism. So, you’ll need to export an archive of your data in a CSV file, and then import it using Garmin Connect. Do the same for the GPS data – export it as TCX and then import it into Garmin.

Export Fitbit data to MyFitnessPal

Good news! MyFitnessPal app is compatible with Fitbit, so you can exchange your Fitbit data with MyFitnessPal. For this, do the following:

  • Log in to MyFitnessPal and go to “Apps”.
  • Find “Fitbit Tracker” and click “Get“.
  • Click “Allow” to give MyFitnessPal access to your Fitbit data.
  • Click “Get Started” to migrate data from Fitbit to MyFitnessPal.

Which option is best to export Fitbit data?

Hmm…The answer depends on what you’re going to do with your data. If you need to create a backup archive, the best option is to manually export your data as a CSV file. In this case, however, you’ll have to manually update your backup archive with new records. This can be rather irksome.

With Coupler.io, you can export more detailed data, but the access token’s short expiry period is the blocker that prevents you from automating the flow. 

So, which is the best way to go?  Try both and then you’ll be able to decide which one is the best for your needs. Good luck!

Back to Blog

Comments are closed.

Access your data
in a simple format for free!

Start Free