cyclingSpeed: HealthKit quantity type
HKQuantityTypeIdentifierCyclingSpeed · read from Apple’s documentation on 2026-10-02
HKQuantityTypeIdentifier.cyclingSpeed (Objective-C HKQuantityTypeIdentifierCyclingSpeed) is a HealthKit quantity type in Apple's "Activity" group. Apple's abstract: “A quantity sample type that measures how fast you are traveling while riding a bike.” Apple's discussion says its samples use distance per time units and measure discrete values, so in HKStatisticsQuery it takes .discreteAverage, .discreteMin or .discreteMax. It is available from iOS 17.0 and watchOS 10.0.
What Apple says cyclingSpeed is
A quantity sample type that measures how fast you are traveling while riding a bike.
Apple’s abstract, quoted from its cyclingSpeed reference page, read 2026-10-02. Apple’s discussion of the type runs 47 words.
- Swift
HKQuantityTypeIdentifier.cyclingSpeed- Objective-C
HKQuantityTypeIdentifierCyclingSpeed- Family
HKQuantityTypeIdentifier- Apple's topic group
- Activity
- Group page
- Activity
- Apple's reference
- cyclingSpeed on developer.apple.com
Availability
The versions Apple’s documentation data gives for cyclingSpeed, platform by platform, as read on 2026-10-02.
| Platform | Introduced | Deprecated |
|---|---|---|
| iOS | 17.0 | — |
| iPadOS | 17.0 | — |
| Mac Catalyst | 17.0 | — |
| macOS | 14.0 | — |
| visionOS | 1.0 | — |
| watchOS | 10.0 | — |
The rest of that release: HealthKit Types Introduced in iOS 17.
Sum or average, and in which units
Apple states both of these in the prose of the type’s discussion, not as properties, so they are derived from Apple’s sentence and the sentence is shown with each.
Aggregation style
discrete — in an HKStatisticsQuery, use .discreteAverage, .discreteMin or .discreteMax. Apple’s sentence:
These samples use distance per time units (described in ) and measure discrete values (described in ).
Unit family
distance per time — every type in this family is on the HKUnit reference.
Apple states it in the same sentence as the aggregation style, quoted above.
Empty parentheses and a dangling “described in” mark links in Apple’s sentence to other documentation pages: the generator keeps the sentence’s text, not its links, and the quote is left as stored rather than repaired.
Can apps write cyclingSpeed?
Apple’s documentation for cyclingSpeed does not state that its samples are read-only. Apple states read-only status only in prose, and its silence is not a statement either way, so this page makes no claim that apps can save it.
On Android Health Connect
No verified Health Connect counterpart. The cross-platform matrix pairs only metrics checked against both Apple’s and Google’s documentation, and cyclingSpeed is not among them. A similarly named Health Connect record may exist, but a name match is not a verified mapping.
Questions
- Should I sum or average cyclingSpeed in HealthKit?
- Average it, or take its minimum or maximum — do not sum it. Apple's documentation for cyclingSpeed describes it as measuring discrete values, so an HKStatisticsQuery over it takes .discreteAverage, .discreteMin or .discreteMax. Apple's sentence, as read on 2026-10-02: "These samples use distance per time units (described in ) and measure discrete values (described in )."
- Which unit family does Apple give cyclingSpeed?
- Distance per time. Apple's discussion of cyclingSpeed says its samples use distance per time units: "These samples use distance per time units (described in ) and measure discrete values (described in )."
- Which iOS version added cyclingSpeed?
- iOS 17.0. Apple's availability data for cyclingSpeed lists iOS 17.0, iPadOS 17.0, Mac Catalyst 17.0, macOS 14.0, visionOS 1.0 and watchOS 10.0.
Sources checked
- Apple — HKQuantityTypeIdentifier.cyclingSpeed · read 2026-10-02
- Apple — HKQuantityTypeIdentifier · read 2026-10-02
Apple’s abstract and sentences are quoted for identification; the page layout, the capsule and the cross-platform pairing are AIFitnessAPI’s. Generated from Apple’s documentation by scripts/fetch-healthkit-identifiers.mjs, not typed by hand — the same data as the full identifier table.