Stay organized with collections
Save and categorize content based on your preferences.
This page contains information about Google Fit API releases.
The changelog lists releases by date and includes any new
features, bug fixes or significant performance improvements.
August 2, 2021
Writing to Health data types is now generally available
to developers. Authorization to access Health data types is consistent with all
other data types. More details here.
April 27, 2021
There has been a small delay to enforcement of the authorization changes
announced on October 10, 2020. The authorization changes will now be enforced
from May 4, 2021.
As part of our ongoing efforts to enhance the security and privacy of Google Fit
for developers and users, we've made some changes to the Google Fit policies and
APIs:
Write-access will now only let an app read data it has written. To continue
reading data written by other apps from the Google Fit platform, update your
code to request read-access scopes for the relevant data types.
Heart rate data has its own scopes.
Sleep data has its own scopes and a new data type.
When working with the SessionsClient, you now need to specify what type of
session your app needs to access, using the appropriate methods from
FitnessOptions.
These changes to the API will be available for developers to use from 19 October
2020. Enforcement will start from 27 April 2021.
See here for more details and instructions on these
changes.
March 21, 2019
The Google Fit app now displays sleep sessions written to the Android API.
Learn more about writing and reading sleep data.
November 19, 2018
The following changes have been made to the Google Fit API:
Read requests for datatypes com.google.location.sample and
com.google.location.bounding_box will only return data for the same app that
has written the data.
September 26, 2018
Google Play services fitness 16.0.0 provides access to two new data types and
their respective aggregates:
Updated the Fitness API for the new GoogleApi-based clients, which automatically manage connections to services and require less boilerplate code to use:
Added the BleClient class and the Fitness.getBleClient() methods. BleClient provides the entry point for scanning, claiming, and using Bluetooth Low Energy devices in Google Fit.
Added the ConfigClient class and the Fitness.getConfigClient() methods. ConfigClient provides the entry point for accessing custom data types and settings in Google Fit.
Added the GoalsClient class and the Fitness.getGoalsClient() methods. GoalsClient provides the entry point for reading fitness Goals created by users in Google Fit.
Added the HistoryClient class and the Fitness.getHistoryClient() methods. HistoryClient provides the entry point for inserting, deleting, and reading data in Google Fit.
Added the RecordingClient class and the Fitness.getRecordingClient() methods. RecordingClient provides the entry point for enabling low-power, always-on background collection of sensor data in Google Fit.
Added the SensorsClient class and the Fitness.getSensorsClient() methods. SensorsClient provides the entry point for exposing different sources of fitness data in local and connected devices, and delivering live events to listeners.
Added the SessionsClient class and the getSessionsClient methods. SessionsClient provides the entry point for creating and managing Sessions of user activity in Google Fit.
Distance traveled and calories expended computations are available for
subscription.
The Fit platform starts tracking distance and calorie data as soon as an
app on the device subscribes to the data. For more information on how to
subscribe to data types, see Record Fitness Data.
The data is not available in real-time with the
Sensors API.
The Fit platform can now store exercise routine data, such as bicep curls and
squats, with the com.google.activity.exercise data type. For more
information on the exercises Fit can store, see
WorkoutExercises.
Developers can retrieve daily aggregate step counts for use in
areas such as Android Wear watch faces. For more information, see
Read daily total data.
The Google Fit API is now modularized so that you can choose which
features to include in your app. This change significantly reduces the memory
requirement for apps that enable Google Fit and affects how you access the
APIs. For more information on how to update your code, see
Connect to the fitness service.
The Fit platform now calculates distance. To access the data, use the
com.google.distance.delta data type. For more information on data types, see
Fitness Data Types.
Developers can now read and write granular sleep data.
This includes light sleep, deep sleep, REM, and awake activities. These
granular activity types have been added to the
FitnessActivities
enumerated type.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-05-07 UTC."],[[["\u003cp\u003eThis page lists Google Fit API releases, including new features, bug fixes, and performance improvements.\u003c/p\u003e\n"],["\u003cp\u003eThe Google Fit API has undergone authorization changes, including new data types and scopes for heart rate and sleep data.\u003c/p\u003e\n"],["\u003cp\u003eStarting May 4, 2021, Google Fit authorization changes went into effect, along with the Google Fit Developer and User Data Policy, and app verification began.\u003c/p\u003e\n"],["\u003cp\u003eWriting to Health data types became generally available on August 2, 2021, with authorization consistent with other data types.\u003c/p\u003e\n"],["\u003cp\u003eThe Google Fit API introduced GoogleApi-based clients in November 2017, automatically managing service connections and offering new features like BLE device support and custom data type access.\u003c/p\u003e\n"]]],[],null,["This page contains information about Google Fit API releases.\nThe changelog lists releases by date and includes any new\nfeatures, bug fixes or significant performance improvements.\n\nAugust 2, 2021\n\nWriting to [Health data types](/fit/datatypes/health) is now generally available\nto developers. Authorization to access Health data types is consistent with all\nother data types. More details [here](/fit/datatypes#authorization_scopes).\n\nApril 27, 2021\n\nThere has been a small delay to enforcement of the [authorization changes](/fit/improvements#what_are_the_authorization_changes)\nannounced on October 10, 2020. The authorization changes will now be enforced\nfrom May 4, 2021.\n\nThe [Google Fit Developer and User Data Policy](/fit/policy) will also become\nenforceable on May 4, 2021. [App verification](/fit/improvements#strengthening_the_review_system_for_apps_using_google_fit)\n, as part of enforcement of the Fit developer policy, will start start in due\ncourse.\n\nOctober 19, 2020\n\nAs part of our ongoing efforts to enhance the security and privacy of Google Fit\nfor developers and users, we've made some changes to the Google Fit policies and\nAPIs:\n\n- There is a new [Google Fit Developer and User Data Policy](/fit/policy). Please review the policy, and if relevant, make appropriate changes to your apps and services.\n- Write-access will now only let an app read data it has written. To continue reading data written by *other apps* from the Google Fit platform, update your code to request read-access scopes for the relevant data types.\n- Heart rate data has its own scopes.\n- Sleep data has its own scopes and a new data type.\n- When working with the `SessionsClient`, you now need to specify what type of session your app needs to access, using the appropriate methods from `FitnessOptions`.\n\nThese changes to the API will be available for developers to use from 19 October\n2020. Enforcement will start from 27 April 2021.\n\nSee [here](/fit/improvements) for more details and instructions on these\nchanges.\n\nMarch 21, 2019\n\nThe Google Fit app now displays sleep sessions written to the Android API.\nLearn more about [writing](/fit/scenarios/write-sleep-data) and [reading](/fit/scenarios/read-sleep-data) sleep data.\n\nNovember 19, 2018\n\nThe following changes have been made to the Google Fit API:\n\n- Read requests for datatypes `com.google.location.sample` and `com.google.location.bounding_box` will only return data for the same app that has written the data.\n\nSeptember 26, 2018\n\nGoogle Play services fitness 16.0.0 provides access to two new data types and\ntheir respective aggregates:\n\n- [`TYPE_HEART_POINTS`](/android/reference/com/google/android/gms/fitness/data/DataType#TYPE_HEART_POINTS)\n- [`AGGREGATE_HEART_POINTS`](/android/reference/com/google/android/gms/fitness/data/DataType#AGGREGATE_HEART_POINTS)\n- [`TYPE_MOVE_MINUTES`](/android/reference/com/google/android/gms/fitness/data/DataType#TYPE_MOVE_MINUTES)\n- [`AGGREGATE_MOVE_MINUTES`](/android/reference/com/google/android/gms/fitness/data/DataType#AGGREGATE_MOVE_MINUTES)\n\nArtifacts released on maven.google.com\n\n- com.google.android.gms:play-services-fitness:16.0.0\n\nNovember 2017\n\n[Google Play services 11.6.0](//developer.android.com/google/play-services/index.html)\nintroduces the following new Google Fit features:\n\n- Updated the Fitness API for the new [`GoogleApi`](/android/reference/com/google/android/gms/common/api/GoogleApi)-based clients, which automatically manage connections to services and require less boilerplate code to use:\n - Added the [`BleClient`](/android/reference/com/google/android/gms/fitness/BleClient) class and the [`Fitness.getBleClient()`](/android/reference/com/google/android/gms/fitness/Fitness#getBleClient(android.app.Activity,%20com.google.android.gms.auth.api.signin.GoogleSignInAccount)) methods. `BleClient` provides the entry point for scanning, claiming, and using Bluetooth Low Energy devices in Google Fit.\n - Added the [`ConfigClient`](/android/reference/com/google/android/gms/fitness/ConfigClient) class and the [`Fitness.getConfigClient()`](/android/reference/com/google/android/gms/fitness/Fitness#getConfigClient(android.content.Context,%20com.google.android.gms.auth.api.signin.GoogleSignInAccount)) methods. `ConfigClient` provides the entry point for accessing custom data types and settings in Google Fit.\n - Added the [`GoalsClient`](/android/reference/com/google/android/gms/fitness/GoalsClient) class and the [`Fitness.getGoalsClient()`](/android/reference/com/google/android/gms/fitness/Fitness#getGoalsClient(android.content.Context,%20com.google.android.gms.auth.api.signin.GoogleSignInAccount)) methods. `GoalsClient` provides the entry point for reading fitness [`Goal`](/android/reference/com/google/android/gms/fitness/data/Goal)s created by users in Google Fit.\n - Added the [`HistoryClient`](/android/reference/com/google/android/gms/fitness/HistoryClient) class and the [`Fitness.getHistoryClient()`](/android/reference/com/google/android/gms/fitness/Fitness#getHistoryClient(android.content.Context,%20com.google.android.gms.auth.api.signin.GoogleSignInAccount)) methods. `HistoryClient` provides the entry point for inserting, deleting, and reading data in Google Fit.\n - Added the [`RecordingClient`](/android/reference/com/google/android/gms/fitness/RecordingClient) class and the [`Fitness.getRecordingClient()`](/android/reference/com/google/android/gms/fitness/Fitness#getRecordingClient(android.content.Context,%20com.google.android.gms.auth.api.signin.GoogleSignInAccount)) methods. `RecordingClient` provides the entry point for enabling low-power, always-on background collection of sensor data in Google Fit.\n - Added the [`SensorsClient`](/android/reference/com/google/android/gms/fitness/SensorsClient) class and the [`Fitness.getSensorsClient()`](/android/reference/com/google/android/gms/fitness/Fitness#getSensorsClient(android.content.Context,%20com.google.android.gms.auth.api.signin.GoogleSignInAccount)) methods. `SensorsClient` provides the entry point for exposing different sources of fitness data in local and connected devices, and delivering live events to listeners.\n - Added the [`SessionsClient`](/android/reference/com/google/android/gms/fitness/SessionsClient) class and the [`getSessionsClient`](/android/reference/com/google/android/gms/fitness/Fitness#getSessionsClient(android.content.Context,%20com.google.android.gms.auth.api.signin.GoogleSignInAccount)) methods. `SessionsClient` provides the entry point for creating and managing [`Session`](/android/reference/com/google/android/gms/fitness/data/Session)s of user activity in Google Fit.\n\nMay 2015\n\n[Google Play services 7.5](//developer.android.com/google/play-services/index.html)\nintroduces the following new Google Fit features:\n\n- Distance traveled and calories expended computations are available for subscription.\n - The Fit platform starts tracking distance and calorie data as soon as an app on the device subscribes to the data. For more information on how to subscribe to data types, see [Record Fitness Data](/fit/android/record).\n - The data is not available in real-time with the [Sensors API](/fit/android/sensors).\n- The Fit platform can now store exercise routine data, such as bicep curls and squats, with the `com.google.activity.exercise` data type. For more information on the exercises Fit can store, see [`WorkoutExercises`](/android-gcore/reference/com/google/android/gms/fitness/data/WorkoutExercises).\n\nApril 2015\n\n[Google Play services 7.3](//developer.android.com/google/play-services/index.html)\nintroduces the following new Google Fit features:\n\n- The Fit platform can now track nutrition data with the `com.google.fitness` data type.\n - The `com.google.calories.consumed` data type is now deprecated. Calorie consumption can be recorded with the `com.google.fitness.item` data type.\n - For more information on data types, see [Fitness Data Types](/fit/android/data-types).\n- Developers can retrieve daily aggregate step counts for use in areas such as Android Wear watch faces. For more information, see [Read daily total data](/fit/android/history#read_daily_total_data).\n\nMarch 2015\n\n[Google Play services 7.0](//developer.android.com/google/play-services/index.html)\nintroduces the following new Google Fit features:\n\n- The Google Fit API is now modularized so that you can choose which features to include in your app. This change significantly reduces the memory requirement for apps that enable Google Fit and affects how you access the APIs. For more information on how to update your code, see [Connect to the fitness service](/fit/android/get-started#step_5_connect_to_the_fitness_service).\n- The Fit platform now calculates distance. To access the data, use the `com.google.distance.delta` data type. For more information on data types, see [Fitness Data Types](/fit/android/data-types).\n- Developers can now read and write granular sleep data. This includes light sleep, deep sleep, REM, and awake activities. These granular activity types have been added to the [`FitnessActivities`](/android/reference/com/google/android/gms/fitness/FitnessActivities) enumerated type.\n - To insert sleep data, create a session of type [`FitnessActivities.SLEEP`](/android/reference/com/google/android/gms/fitness/FitnessActivities#SLEEP).\n - To detect granularity in your session, insert activity segments of types:\n - [`FitnessActivities.SLEEP_LIGHT`](/android/reference/com/google/android/gms/fitness/FitnessActivities#SLEEP_LIGHT)\n - [`FitnessActivities.SLEEP_DEEP`](/android/reference/com/google/android/gms/fitness/FitnessActivities#SLEEP_DEEP)\n - [`FitnessActivities.SLEEP_REM`](/android/reference/com/google/android/gms/fitness/FitnessActivities#SLEEP_REM)\n - [`FitnessActivities.SLEEP_AWAKE`](/android/reference/com/google/android/gms/fitness/FitnessActivities#SLEEP_AWAKE)\n - To read sleep data, query the sleep sessions for sleep activity segments as you would do with normal fitness activities."]]