bodyMass: HealthKit quantity type
HKQuantityTypeIdentifierBodyMass · read from Apple’s documentation on 2026-10-02
HKQuantityTypeIdentifier.bodyMass (Objective-C HKQuantityTypeIdentifierBodyMass) is a HealthKit quantity type in Apple's "Body measurements" group. Apple's abstract: “A quantity sample type that measures the user’s weight.” Apple's discussion says its samples use mass units and measure discrete values, so in HKStatisticsQuery it takes .discreteAverage, .discreteMin or .discreteMax. It is available from iOS 8.0 and watchOS 2.0. This site's verified cross-platform matrix lists it in its Body composition row, beside WeightRecord, BodyFatRecord, LeanBodyMassRecord, BoneMassRecord, BodyWaterMassRecord, BasalMetabolicRateRecord on Android Health Connect, with the caveat “The store holds it, but something has to write it — usually a smart scale or manual entry.”
What Apple says bodyMass is
A quantity sample type that measures the user’s weight.
Apple’s abstract, quoted from its bodyMass reference page, read 2026-10-02. Apple’s discussion of the type runs 15 words.
- Swift
HKQuantityTypeIdentifier.bodyMass- Objective-C
HKQuantityTypeIdentifierBodyMass- Family
HKQuantityTypeIdentifier- Apple's topic group
- Body measurements
- Group page
- Body measurements
- Apple's reference
- bodyMass on developer.apple.com
Availability
The versions Apple’s documentation data gives for bodyMass, platform by platform, as read on 2026-10-02.
| Platform | Introduced | Deprecated |
|---|---|---|
| iOS | 8.0 | — |
| iPadOS | 8.0 | — |
| Mac Catalyst | 13.0 | — |
| macOS | 13.0 | — |
| visionOS | 1.0 | — |
| watchOS | 2.0 | — |
The rest of that release: HealthKit Types Introduced in iOS 8.
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 mass units (described in ) and measure discrete values (described in ).
Unit family
mass — 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 bodyMass?
Apple’s documentation for bodyMass 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
bodyMass sits in the verified cross-platform matrix’s Body composition row, which names HKQuantityTypeIdentifier.bodyMass, .bodyFatPercentage, .leanBodyMass, .bodyMassIndex on Apple and WeightRecord, BodyFatRecord, LeanBodyMassRecord, BoneMassRecord, BodyWaterMassRecord, BasalMetabolicRateRecord on Android. The row groups the metric; it does not pair each Apple type with one Android record.
The store holds it, but something has to write it — usually a smart scale or manual entry. Body fat is a bioimpedance estimate.
The metric guide for this row: Body composition on every platform.
Questions
- Should I sum or average bodyMass in HealthKit?
- Average it, or take its minimum or maximum — do not sum it. Apple's documentation for bodyMass 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 mass units (described in ) and measure discrete values (described in )."
- Which unit family does Apple give bodyMass?
- Mass. Apple's discussion of bodyMass says its samples use mass units: "These samples use mass units (described in ) and measure discrete values (described in )."
- Does bodyMass have a Health Connect equivalent?
- This site's verified cross-platform matrix lists bodyMass in its Body composition row, which groups HKQuantityTypeIdentifier.bodyMass, .bodyFatPercentage, .leanBodyMass, .bodyMassIndex on Apple with WeightRecord, BodyFatRecord, LeanBodyMassRecord, BoneMassRecord, BodyWaterMassRecord, BasalMetabolicRateRecord on Android; the row groups the metric and does not pair each Apple type with one Android record. The caveat recorded with that row: The store holds it, but something has to write it — usually a smart scale or manual entry. Body fat is a bioimpedance estimate.
- Which iOS version added bodyMass?
- iOS 8.0. Apple's availability data for bodyMass lists iOS 8.0, iPadOS 8.0, Mac Catalyst 13.0, macOS 13.0, visionOS 1.0 and watchOS 2.0.
Sources checked
- Apple — HKQuantityTypeIdentifier.bodyMass · 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.