Skip to content

Activity Types

Michal Zaniewicz edited this page Jul 14, 2026 · 2 revisions

Workouts carry a numeric activityId. The integration maps a known subset to readable names (used by the Last activity sensor, the Workouts Calendar & Recent and the recent list). Unknown ids fall back to Activity <id> rather than guessing.

Mapped ids

id Name id Name
0 Walking 24 Nordic walking
1 Running 29 Climbing
2 Cycling 30 Snowboarding
3 Cross-country skiing 33 Soccer
10 Mountain biking 38 Volleyball
11 Hiking 51 Yoga
13 Alpine skiing 52 Indoor cycling
14 Paddling 53 Treadmill running
15 Rowing 70 Trekking
16 Golf 72 Kayaking
21 Swimming 76 Strength training
22 Trail running 77 Walking
23 Gym

Why the list is curated, not bulk-imported

There is a larger "canonical" activity enum floating around (from the upstream suuntool project), but it has proven unreliable where it could be checked against real account data - at least ids 76 and 77 disagree with what the Suunto app actually displays for those activities. So the policy here is:

  • Live-observed labels win. An id gets a name only after it's confirmed against real data.
  • Unverified ids stay as Activity <id> until confirmed, rather than risk a wrong label.

If you see Activity <number> for one of your workouts, that's an id not yet confirmed - open an issue with the number and what the Suunto app calls it, and it can be added.

Foot-based activities and stride length

The stride length sensor (distance per cadence cycle) is only meaningful for foot sports. It is computed only for a set of foot-based activity ids (running, hiking, trail running, Nordic walking, treadmill, track & field, orienteering, snowshoeing, trekking, walking). For everything else (e.g. cycling, where cadence is pedal RPM) the sensor is intentionally left empty rather than showing a nonsensical "stride".

Cadence unit caveat: the cadence sensor's unit is rpm, which is correct for cycling. For running, cadence may be steps/min (spm) or Suunto cycle-rpm depending on the watch - interpret accordingly.

Clone this wiki locally