Skip to content
AF

Wear OS Health Services ExerciseType: all 85 constants with their ids and same-name constants on the other platforms

85 ExerciseType constants · 65 with a same-name counterpart · read 2026-10-18

Wear OS Health Services names an exercise with 85 public ExerciseType constants. 65 share a name with a constant on HealthKit, Health Connect or the Google Health API once the EXERCISE_TYPE_ prefix, case and separators are removed; the other 20, such as ExerciseType.ALPINE_SKIING and ExerciseType.BACK_EXTENSION, have none. The reference does not print the ids; the androidx source it links as View Source does, and the ids here are read from it. Read from the sources on 2026-10-18.

The join rule and the whole crosswalk are on the workout types hub. The other lists: HKWorkoutActivityType · ExerciseSessionRecord.EXERCISE_TYPE_* · Exercise.exerciseType.

All 85 constants

Names are copied exactly from the source; the last column lists the constants on the other platforms whose names match under the crosswalk rule, with their numbers where printed.

ConstantIdGoogle’s descriptionSame name on
ALPINE_SKIING92None on the referenceNo same-name constant
BACKPACKING84None on the referenceGoogle Health API: BACKPACKING
BACK_EXTENSION1None on the referenceNo same-name constant
BADMINTON2None on the referenceHealthKit: badmintonHealth Connect: EXERCISE_TYPE_BADMINTON (2)Google Health API: BADMINTON
BARBELL_SHOULDER_PRESS3None on the referenceNo same-name constant
BASEBALL4None on the referenceHealthKit: baseballHealth Connect: EXERCISE_TYPE_BASEBALL (4)Google Health API: BASEBALL
BASKETBALL5None on the referenceHealthKit: basketballHealth Connect: EXERCISE_TYPE_BASKETBALL (5)Google Health API: BASKETBALL
BENCH_PRESS6None on the referenceNo same-name constant
BIKING8None on the referenceHealth Connect: EXERCISE_TYPE_BIKING (8)Google Health API: BIKING
BIKING_STATIONARY9None on the referenceHealth Connect: EXERCISE_TYPE_BIKING_STATIONARY (9)
BOOT_CAMP10None on the referenceHealth Connect: EXERCISE_TYPE_BOOT_CAMP (10)Google Health API: BOOTCAMP
BOXING11None on the referenceHealthKit: boxingHealth Connect: EXERCISE_TYPE_BOXING (11)Google Health API: BOXING
BURPEE12None on the referenceNo same-name constant
CALISTHENICS13Calisthenics (E.g., push ups, sit ups, pull-ups, jumping jacks).Health Connect: EXERCISE_TYPE_CALISTHENICS (13)Google Health API: CALISTHENICSSide by side →
CRICKET14None on the referenceHealthKit: cricketHealth Connect: EXERCISE_TYPE_CRICKET (14)Google Health API: CRICKET
CROSS_COUNTRY_SKIING91None on the referenceHealthKit: crossCountrySkiing
CRUNCH15None on the referenceNo same-name constant
DANCING16None on the referenceHealth Connect: EXERCISE_TYPE_DANCING (16)Google Health API: DANCING
DEADLIFT17None on the referenceNo same-name constant
ELLIPTICAL25None on the referenceHealthKit: ellipticalHealth Connect: EXERCISE_TYPE_ELLIPTICAL (25)Google Health API: ELLIPTICALSide by side →
EXERCISE_CLASS26None on the referenceHealth Connect: EXERCISE_TYPE_EXERCISE_CLASS (26)Google Health API: EXERCISE_CLASS
FENCING27None on the referenceHealthKit: fencingHealth Connect: EXERCISE_TYPE_FENCING (27)Google Health API: FENCING
FOOTBALL_AMERICAN29None on the referenceHealth Connect: EXERCISE_TYPE_FOOTBALL_AMERICAN (28)Google Health API: FOOTBALL_AMERICAN
FOOTBALL_AUSTRALIAN30None on the referenceHealth Connect: EXERCISE_TYPE_FOOTBALL_AUSTRALIAN (29)Google Health API: FOOTBALL_AUSTRALIAN
FORWARD_TWIST31None on the referenceNo same-name constant
FRISBEE_DISC28None on the referenceHealth Connect: EXERCISE_TYPE_FRISBEE_DISC (31)
GOLF32None on the referenceHealthKit: golfHealth Connect: EXERCISE_TYPE_GOLF (32)Google Health API: GOLF
GUIDED_BREATHING33None on the referenceHealth Connect: EXERCISE_TYPE_GUIDED_BREATHING (33)
GYMNASTICS34None on the referenceHealthKit: gymnasticsHealth Connect: EXERCISE_TYPE_GYMNASTICS (34)Google Health API: GYMNASTICS
HANDBALL35None on the referenceHealthKit: handballHealth Connect: EXERCISE_TYPE_HANDBALL (35)Google Health API: HANDBALL
HIGH_INTENSITY_INTERVAL_TRAINING36None on the referenceHealthKit: highIntensityIntervalTrainingHealth Connect: EXERCISE_TYPE_HIGH_INTENSITY_INTERVAL_TRAINING (36)Side by side →
HIKING37None on the referenceHealthKit: hikingHealth Connect: EXERCISE_TYPE_HIKING (37)Google Health API: HIKINGSide by side →
HORSE_RIDING88None on the referenceNo same-name constant
ICE_HOCKEY38None on the referenceHealth Connect: EXERCISE_TYPE_ICE_HOCKEY (38)
ICE_SKATING39None on the referenceHealth Connect: EXERCISE_TYPE_ICE_SKATING (39)Google Health API: ICE_SKATING
INLINE_SKATING87None on the referenceNo same-name constant
JUMPING_JACK41None on the referenceNo same-name constant
JUMP_ROPE40None on the referenceHealthKit: jumpRope
LAT_PULL_DOWN42None on the referenceNo same-name constant
LUNGE43None on the referenceNo same-name constant
MARTIAL_ARTS44None on the referenceHealthKit: martialArtsHealth Connect: EXERCISE_TYPE_MARTIAL_ARTS (44)Google Health API: MARTIAL_ARTS
MEDITATION45None on the referenceNo same-name constant
MOUNTAIN_BIKING85None on the referenceNo same-name constant
ORIENTEERING86None on the referenceGoogle Health API: ORIENTEERING
PADDLING46None on the referenceHealth Connect: EXERCISE_TYPE_PADDLING (46)
PARA_GLIDING47None on the referenceHealth Connect: EXERCISE_TYPE_PARAGLIDING (47)Google Health API: PARAGLIDING
PILATES48None on the referenceHealthKit: pilatesHealth Connect: EXERCISE_TYPE_PILATES (48)Google Health API: PILATESSide by side →
PLANK49None on the referenceNo same-name constant
RACQUETBALL50None on the referenceHealthKit: racquetballHealth Connect: EXERCISE_TYPE_RACQUETBALL (50)Google Health API: RACQUETBALL
ROCK_CLIMBING51None on the referenceHealth Connect: EXERCISE_TYPE_ROCK_CLIMBING (51)Google Health API: ROCK_CLIMBING
ROLLER_HOCKEY52None on the referenceHealth Connect: EXERCISE_TYPE_ROLLER_HOCKEY (52)
ROLLER_SKATING89None on the referenceGoogle Health API: ROLLER_SKATING
ROWING53None on the referenceHealthKit: rowingHealth Connect: EXERCISE_TYPE_ROWING (53)Google Health API: ROWING
ROWING_MACHINE54None on the referenceHealth Connect: EXERCISE_TYPE_ROWING_MACHINE (54)Google Health API: ROWING_MACHINE
RUGBY57None on the referenceHealthKit: rugbyHealth Connect: EXERCISE_TYPE_RUGBY (55)Google Health API: RUGBY
RUNNING55None on the referenceHealthKit: runningHealth Connect: EXERCISE_TYPE_RUNNING (56)Google Health API: RUNNINGSide by side →
RUNNING_TREADMILL56None on the referenceHealth Connect: EXERCISE_TYPE_RUNNING_TREADMILL (57)
SAILING58None on the referenceHealthKit: sailingHealth Connect: EXERCISE_TYPE_SAILING (58)Google Health API: SAILING
SCUBA_DIVING59None on the referenceHealth Connect: EXERCISE_TYPE_SCUBA_DIVING (59)Google Health API: SCUBA_DIVING
SKATING60None on the referenceHealth Connect: EXERCISE_TYPE_SKATING (60)Google Health API: SKATING
SKIING61None on the referenceHealth Connect: EXERCISE_TYPE_SKIING (61)Google Health API: SKIING
SNOWBOARDING62None on the referenceHealthKit: snowboardingHealth Connect: EXERCISE_TYPE_SNOWBOARDING (62)Google Health API: SNOWBOARDING
SNOWSHOEING63None on the referenceHealth Connect: EXERCISE_TYPE_SNOWSHOEING (63)Google Health API: SNOWSHOEING
SOCCER64None on the referenceHealthKit: soccerHealth Connect: EXERCISE_TYPE_SOCCER (64)Google Health API: SOCCER
SOFTBALL65None on the referenceHealthKit: softballHealth Connect: EXERCISE_TYPE_SOFTBALL (65)Google Health API: SOFTBALL
SQUASH66None on the referenceHealthKit: squashHealth Connect: EXERCISE_TYPE_SQUASH (66)Google Health API: SQUASH
SQUAT67None on the referenceNo same-name constant
STAIR_CLIMBING68None on the referenceHealthKit: stairClimbingHealth Connect: EXERCISE_TYPE_STAIR_CLIMBING (68)Side by side →
STAIR_CLIMBING_MACHINE69None on the referenceHealth Connect: EXERCISE_TYPE_STAIR_CLIMBING_MACHINE (69)
STRENGTH_TRAINING70None on the referenceHealth Connect: EXERCISE_TYPE_STRENGTH_TRAINING (70)Google Health API: STRENGTH_TRAINING
STRETCHING71None on the referenceHealth Connect: EXERCISE_TYPE_STRETCHING (71)Google Health API: STRETCHING
SURFING72None on the referenceHealth Connect: EXERCISE_TYPE_SURFING (72)Google Health API: SURFING
SWIMMING_OPEN_WATER73None on the referenceHealth Connect: EXERCISE_TYPE_SWIMMING_OPEN_WATER (73)Google Health API: SWIMMING_OPEN_WATER
SWIMMING_POOL74None on the referenceHealth Connect: EXERCISE_TYPE_SWIMMING_POOL (74)Google Health API: SWIMMING_POOL
TABLE_TENNIS75None on the referenceHealthKit: tableTennisHealth Connect: EXERCISE_TYPE_TABLE_TENNIS (75)Google Health API: TABLE_TENNIS
TENNIS76None on the referenceHealthKit: tennisHealth Connect: EXERCISE_TYPE_TENNIS (76)Google Health API: TENNIS
UNKNOWN0The current exercise type of the user is unknown or not set.No same-name constant
UPPER_TWIST77None on the referenceNo same-name constant
VOLLEYBALL78None on the referenceHealthKit: volleyballHealth Connect: EXERCISE_TYPE_VOLLEYBALL (78)Google Health API: VOLLEYBALL
WALKING79None on the referenceHealthKit: walkingHealth Connect: EXERCISE_TYPE_WALKING (79)Google Health API: WALKINGSide by side →
WATER_POLO80None on the referenceHealthKit: waterPoloHealth Connect: EXERCISE_TYPE_WATER_POLO (80)Google Health API: WATER_POLO
WEIGHTLIFTING81None on the referenceHealth Connect: EXERCISE_TYPE_WEIGHTLIFTING (81)Google Health API: WEIGHTLIFTING
WORKOUT82None on the referenceGoogle Health API: WORKOUT
YACHTING90None on the referenceNo same-name constant
YOGA83None on the referenceHealthKit: yogaHealth Connect: EXERCISE_TYPE_YOGA (83)Google Health API: YOGASide by side →

Where the ids come from

Google’s ExerciseType reference lists the 85 public constants without numbers. The androidx source it links as View Source declares each as ExerciseType(id, name), and the ids above are read from those declarations. The same file declares 8 more constants internal, which an app cannot reference and the reference does not list:

  • BENCH_SIT_UP = 7
  • DUMBBELL_CURL_RIGHT_ARM = 18
  • DUMBBELL_CURL_LEFT_ARM = 19
  • DUMBBELL_FRONT_RAISE = 20
  • DUMBBELL_LATERAL_RAISE = 21
  • DUMBBELL_TRICEPS_EXTENSION_LEFT_ARM = 22
  • DUMBBELL_TRICEPS_EXTENSION_RIGHT_ARM = 23
  • DUMBBELL_TRICEPS_EXTENSION_TWO_ARM = 24

Ids that differ from Health Connect

6 constants share a name with a Health Connect constant but not its number: RUGBY is 57 here and 55 on Health Connect; RUNNING is 55 here and 56 on Health Connect; FOOTBALL_AMERICAN is 29 here and 28 on Health Connect; FOOTBALL_AUSTRALIAN is 30 here and 29 on Health Connect; FRISBEE_DISC is 28 here and 31 on Health Connect; RUNNING_TREADMILL is 56 here and 57 on Health Connect.

No same-name counterpart (20)

No other platform spells these names the same way under the rule. That is a statement about names, not a finding that the activity is missing elsewhere.

ALPINE_SKIING, BACK_EXTENSION, BARBELL_SHOULDER_PRESS, BENCH_PRESS, BURPEE, CRUNCH, DEADLIFT, FORWARD_TWIST, HORSE_RIDING, INLINE_SKATING, JUMPING_JACK, LAT_PULL_DOWN, LUNGE, MEDITATION, MOUNTAIN_BIKING, PLANK, SQUAT, UNKNOWN, UPPER_TWIST, YACHTING

The catch-all: ExerciseType.UNKNOWN

  • “UNKNOWN: The current exercise type of the user is unknown or not set.” (ExerciseType (Jetpack reference, Java))
  • “fromId(id): Returns the ExerciseType based on its unique id. If the id doesn't map to an particular ExerciseType, then ExerciseType.UNKNOWN is returned by default.” (ExerciseType (Jetpack reference, Java))
  • “Each ExerciseType supports certain data types for metrics and for exercise goals. Check these capabilities at startup, because they can vary depending on the device. A device might not support a certain exercise type, or it might not support a specific function, such as auto-pause.” (Record an exercise with ExerciseClient)

Side by side, one activity at a time

More on Wear OS Health Services on this site

Questions

Where does Google print the Wear OS ExerciseType ids?

Not on the ExerciseType reference, which lists the 85 public constants without numbers. The androidx source it links declares each one as ExerciseType(id, name), for example RUNNING with id 55, and ExerciseType.fromId(id) returns UNKNOWN for an id that matches none. The source also declares 8 internal constants the reference does not list.

How many exercise types does Wear OS Health Services define?

Google's ExerciseType reference lists 85 public constants, read on 2026-10-18. The androidx source declares 93 in all: those 85 and 8 internal ones an app cannot reference (BENCH_SIT_UP, DUMBBELL_CURL_RIGHT_ARM, DUMBBELL_CURL_LEFT_ARM, DUMBBELL_FRONT_RAISE, DUMBBELL_LATERAL_RAISE, DUMBBELL_TRICEPS_EXTENSION_LEFT_ARM, DUMBBELL_TRICEPS_EXTENSION_RIGHT_ARM and DUMBBELL_TRICEPS_EXTENSION_TWO_ARM), under the comment “Next ID: 93”.

Which Wear OS exercise types have no Health Connect constant with the same name?

25 of the 85, not counting UNKNOWN: ALPINE_SKIING, BACKPACKING, BACK_EXTENSION, BARBELL_SHOULDER_PRESS, BENCH_PRESS, BURPEE, CROSS_COUNTRY_SKIING, CRUNCH, DEADLIFT, FORWARD_TWIST, HORSE_RIDING, INLINE_SKATING, JUMPING_JACK, JUMP_ROPE, LAT_PULL_DOWN, LUNGE, MEDITATION, MOUNTAIN_BIKING, ORIENTEERING, PLANK, ROLLER_SKATING, SQUAT, UPPER_TWIST, WORKOUT and YACHTING. Of all 85, 20 (UNKNOWN among them) match no name on any of the other three platforms.

Sources (4)