Every HealthKit type identifier
240 identifiers across 4families · read from Apple’s documentation on 2026-08-28
64 of the 120 quantity types are cumulative and 53 are discrete — the split that decides which HKStatisticsQuery option returns a correct number. Apple states it in prose, not as a property, so it cannot be read off the type at compile time.
Four families, four sets of rules
HealthKit does not have one identifier type, it has four, and they behave differently enough that treating them alike is a common source of bugs. Only quantity types are numeric samples you can aggregate. Category types carry a value drawn from a fixed enum, and reading one without knowing which enum decodes it is meaningless — so that enum is a column here. Characteristics are read-only facts about the user that your app can never write. Workout activity types are labels for what a workout was, not data in their own right.
- HKQuantityTypeIdentifier
- 120
- HKCategoryTypeIdentifier
- 30
- HKCharacteristicTypeIdentifier
- 6
- HKWorkoutActivityType
- 84
The one distinction that changes your query
A quantity type is either cumulative — it accumulates over an interval, like stepCount or activeEnergyBurned — or discrete, a point-in-time reading like heartRate or bodyMass. Cumulative types are summed with .cumulativeSum. Discrete types are reduced with .discreteAverage, .discreteMin or .discreteMax.
Apply the wrong one and nothing throws. You get a number, it renders in your UI, and it is wrong — a summed heart rate for a week reads in the tens of thousands and looks like a bug in someone else’s code. Apple states which is which inside each type’s discussion prose rather than exposing it as a property, so the compiler cannot help you. That is why it is a column here.
- Cumulative
- 64
- sum them
- Discrete
- 53
- average them
- Not stated
- 3
- check the docs
Prefer the set in slices? The HealthKit reference hub breaks these 240 identifiers into twelve group pages with the synthesis each group deserves, plus the version timeline, unit families, category value enums and error codes.
Showing 240 of 240 identifiers.
| Identifier | What it measures | Family | Aggregation | Units / values | iOS |
|---|---|---|---|---|---|
activeEnergyBurnedHKQuantityTypeIdentifierActiveEnergyBurned | A quantity sample type that measures the amount of active energy the user has burned. | HKQuantityTypeIdentifier | cumulative | energy | 8.0 |
appleExerciseTimeHKQuantityTypeIdentifierAppleExerciseTime | A quantity sample type that measures the amount of time the user spent exercising. | HKQuantityTypeIdentifier | cumulative | time | 9.3 |
appleMoveTimeHKQuantityTypeIdentifierAppleMoveTime | A quantity sample type that measures the amount of time the user has spent performing activities that involve full-body movements during the specified day. | HKQuantityTypeIdentifier | cumulative | time | 14.5 |
appleSleepingBreathingDisturbancesHKQuantityTypeIdentifierAppleSleepingBreathingDisturbances | Apple documents this type with no description. | HKQuantityTypeIdentifier | not stated | — | 18.0 |
appleSleepingWristTemperatureHKQuantityTypeIdentifierAppleSleepingWristTemperature | A quantity sample type that records the wrist temperature during sleep. | HKQuantityTypeIdentifier | discrete | temperature | 16.0 |
appleStandTimeHKQuantityTypeIdentifierAppleStandTime | A quantity sample type that measures the amount of time the user has spent standing. | HKQuantityTypeIdentifier | cumulative | time | 13.0 |
appleWalkingSteadinessHKQuantityTypeIdentifierAppleWalkingSteadiness | A quantity sample type that measures the steadiness of the user’s gait. | HKQuantityTypeIdentifier | discrete | percentage | 15.0 |
atrialFibrillationBurdenHKQuantityTypeIdentifierAtrialFibrillationBurden | A quantity type that measures an estimate of the percentage of time a person’s heart shows signs of atrial fibrillation (AFib) while wearing Apple Watch. | HKQuantityTypeIdentifier | discrete | percentage | 16.0 |
basalBodyTemperatureHKQuantityTypeIdentifierBasalBodyTemperature | A quantity sample type that records the user’s basal body temperature. | HKQuantityTypeIdentifier | discrete | temperature | 9.0 |
basalEnergyBurnedHKQuantityTypeIdentifierBasalEnergyBurned | A quantity sample type that measures the resting energy burned by the user. | HKQuantityTypeIdentifier | cumulative | energy | 8.0 |
bloodAlcoholContentHKQuantityTypeIdentifierBloodAlcoholContent | A quantity sample type that measures the user’s blood alcohol content. | HKQuantityTypeIdentifier | discrete | percent | 8.0 |
bloodGlucoseHKQuantityTypeIdentifierBloodGlucose | A quantity sample type that measures the user’s blood glucose level. | HKQuantityTypeIdentifier | discrete | mass/volume | 8.0 |
bloodPressureDiastolicHKQuantityTypeIdentifierBloodPressureDiastolic | A quantity sample type that measures the user’s diastolic blood pressure. | HKQuantityTypeIdentifier | discrete | pressure | 8.0 |
bloodPressureSystolicHKQuantityTypeIdentifierBloodPressureSystolic | A quantity sample type that measures the user’s systolic blood pressure. | HKQuantityTypeIdentifier | discrete | pressure | 8.0 |
bodyFatPercentageHKQuantityTypeIdentifierBodyFatPercentage | A quantity sample type that measures the user’s body fat percentage. | HKQuantityTypeIdentifier | discrete | percent | 8.0 |
bodyMassHKQuantityTypeIdentifierBodyMass | A quantity sample type that measures the user’s weight. | HKQuantityTypeIdentifier | discrete | mass | 8.0 |
bodyMassIndexHKQuantityTypeIdentifierBodyMassIndex | A quantity sample type that measures the user’s body mass index. | HKQuantityTypeIdentifier | discrete | count | 8.0 |
bodyTemperatureHKQuantityTypeIdentifierBodyTemperature | A quantity sample type that measures the user’s body temperature. | HKQuantityTypeIdentifier | discrete | temperature | 8.0 |
crossCountrySkiingSpeedHKQuantityTypeIdentifierCrossCountrySkiingSpeed | A quantity sample type that measures how fast you are traveling while cross country skiing. | HKQuantityTypeIdentifier | discrete | distance per time | 18.0 |
cyclingCadenceHKQuantityTypeIdentifierCyclingCadence | A quantity sample type that represents the rate at which the user is pedaling. | HKQuantityTypeIdentifier | discrete | counts per minute | 17.0 |
cyclingFunctionalThresholdPowerHKQuantityTypeIdentifierCyclingFunctionalThresholdPower | A quantity sample type that measures the estimated maximum average power sustained while riding a bike for 60 minutes. | HKQuantityTypeIdentifier | discrete | power | 17.0 |
cyclingPowerHKQuantityTypeIdentifierCyclingPower | A quantity sample type that measures the estimated power being used while riding a bike. | HKQuantityTypeIdentifier | discrete | power | 17.0 |
cyclingSpeedHKQuantityTypeIdentifierCyclingSpeed | A quantity sample type that measures how fast you are traveling while riding a bike. | HKQuantityTypeIdentifier | discrete | distance per time | 17.0 |
dietaryBiotinHKQuantityTypeIdentifierDietaryBiotin | A quantity sample type that measures the amount of biotin (vitamin B7) consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryCaffeineHKQuantityTypeIdentifierDietaryCaffeine | A quantity sample type that measures the amount of caffeine consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryCalciumHKQuantityTypeIdentifierDietaryCalcium | A quantity sample type that measures the amount of calcium consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryCarbohydratesHKQuantityTypeIdentifierDietaryCarbohydrates | A quantity sample type that measures the amount of carbohydrates consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryChlorideHKQuantityTypeIdentifierDietaryChloride | A quantity sample type that measures the amount of chloride consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryCholesterolHKQuantityTypeIdentifierDietaryCholesterol | A quantity sample type that measures the amount of cholesterol consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryChromiumHKQuantityTypeIdentifierDietaryChromium | A quantity sample type that measures the amount of chromium consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryCopperHKQuantityTypeIdentifierDietaryCopper | A quantity sample type that measures the amount of copper consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryEnergyConsumedHKQuantityTypeIdentifierDietaryEnergyConsumed | A quantity sample type that measures the amount of energy consumed. | HKQuantityTypeIdentifier | cumulative | energy | 8.0 |
dietaryFatMonounsaturatedHKQuantityTypeIdentifierDietaryFatMonounsaturated | A quantity sample type that measures the amount of monounsaturated fat consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryFatPolyunsaturatedHKQuantityTypeIdentifierDietaryFatPolyunsaturated | A quantity sample type that measures the amount of polyunsaturated fat consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryFatSaturatedHKQuantityTypeIdentifierDietaryFatSaturated | A quantity sample type that measures the amount of saturated fat consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryFatTotalHKQuantityTypeIdentifierDietaryFatTotal | A quantity sample type that measures the total amount of fat consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryFiberHKQuantityTypeIdentifierDietaryFiber | A quantity sample type that measures the amount of fiber consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryFolateHKQuantityTypeIdentifierDietaryFolate | A quantity sample type that measures the amount of folate (folic acid) consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryIodineHKQuantityTypeIdentifierDietaryIodine | A quantity sample type that measures the amount of iodine consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryIronHKQuantityTypeIdentifierDietaryIron | A quantity sample type that measures the amount of iron consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryMagnesiumHKQuantityTypeIdentifierDietaryMagnesium | A quantity sample type that measures the amount of magnesium consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryManganeseHKQuantityTypeIdentifierDietaryManganese | A quantity sample type that measures the amount of manganese consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryMolybdenumHKQuantityTypeIdentifierDietaryMolybdenum | A quantity sample type that measures the amount of molybdenum consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryNiacinHKQuantityTypeIdentifierDietaryNiacin | A quantity sample type that measures the amount of niacin (vitamin B3) consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryPantothenicAcidHKQuantityTypeIdentifierDietaryPantothenicAcid | A quantity sample type that measures the amount of pantothenic acid (vitamin B5) consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryPhosphorusHKQuantityTypeIdentifierDietaryPhosphorus | A quantity sample type that measures the amount of phosphorus consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryPotassiumHKQuantityTypeIdentifierDietaryPotassium | A quantity sample type that measures the amount of potassium consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryProteinHKQuantityTypeIdentifierDietaryProtein | A quantity sample type that measures the amount of protein consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryRiboflavinHKQuantityTypeIdentifierDietaryRiboflavin | A quantity sample type that measures the amount of riboflavin (vitamin B2) consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietarySeleniumHKQuantityTypeIdentifierDietarySelenium | A quantity sample type that measures the amount of selenium consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietarySodiumHKQuantityTypeIdentifierDietarySodium | A quantity sample type that measures the amount of sodium consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietarySugarHKQuantityTypeIdentifierDietarySugar | A quantity sample type that measures the amount of sugar consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryThiaminHKQuantityTypeIdentifierDietaryThiamin | A quantity sample type that measures the amount of thiamin (vitamin B1) consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryVitaminAHKQuantityTypeIdentifierDietaryVitaminA | A quantity sample type that measures the amount of vitamin A consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryVitaminB12HKQuantityTypeIdentifierDietaryVitaminB12 | A quantity sample type that measures the amount of cyanocobalamin (vitamin B12) consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryVitaminB6HKQuantityTypeIdentifierDietaryVitaminB6 | A quantity sample type that measures the amount of pyridoxine (vitamin B6) consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryVitaminCHKQuantityTypeIdentifierDietaryVitaminC | A quantity sample type that measures the amount of vitamin C consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryVitaminDHKQuantityTypeIdentifierDietaryVitaminD | A quantity sample type that measures the amount of vitamin D consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryVitaminEHKQuantityTypeIdentifierDietaryVitaminE | A quantity sample type that measures the amount of vitamin E consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryVitaminKHKQuantityTypeIdentifierDietaryVitaminK | A quantity sample type that measures the amount of vitamin K consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
dietaryWaterHKQuantityTypeIdentifierDietaryWater | A quantity sample type that measures the amount of water consumed. | HKQuantityTypeIdentifier | cumulative | volume | 9.0 |
dietaryZincHKQuantityTypeIdentifierDietaryZinc | A quantity sample type that measures the amount of zinc consumed. | HKQuantityTypeIdentifier | cumulative | mass | 8.0 |
distanceCrossCountrySkiingHKQuantityTypeIdentifierDistanceCrossCountrySkiing | A quantity sample type that measures the distance the user has moved by cross country skiing. | HKQuantityTypeIdentifier | cumulative | length | 18.0 |
distanceCyclingHKQuantityTypeIdentifierDistanceCycling | A quantity sample type that measures the distance the user has moved by cycling. | HKQuantityTypeIdentifier | cumulative | length | 8.0 |
distanceDownhillSnowSportsHKQuantityTypeIdentifierDistanceDownhillSnowSports | A quantity sample type that measures the distance the user has traveled while skiing or snowboarding. | HKQuantityTypeIdentifier | cumulative | length | 11.2 |
distancePaddleSportsHKQuantityTypeIdentifierDistancePaddleSports | A quantity sample type that measures the distance the user has moved by paddling sports. | HKQuantityTypeIdentifier | cumulative | length | 18.0 |
distanceRowingHKQuantityTypeIdentifierDistanceRowing | A quantity sample type that measures the distance the user has moved by rowing. | HKQuantityTypeIdentifier | cumulative | length | 18.0 |
distanceSkatingSportsHKQuantityTypeIdentifierDistanceSkatingSports | A quantity sample type that measures the distance the user has moved by skating. | HKQuantityTypeIdentifier | cumulative | length | 18.0 |
distanceSwimmingHKQuantityTypeIdentifierDistanceSwimming | A quantity sample type that measures the distance the user has moved while swimming. | HKQuantityTypeIdentifier | cumulative | length | 10.0 |
distanceWalkingRunningHKQuantityTypeIdentifierDistanceWalkingRunning | A quantity sample type that measures the distance the user has moved by walking or running. | HKQuantityTypeIdentifier | cumulative | length | 8.0 |
distanceWheelchairHKQuantityTypeIdentifierDistanceWheelchair | A quantity sample type that measures the distance the user has moved using a wheelchair. | HKQuantityTypeIdentifier | cumulative | length | 10.0 |
electrodermalActivityHKQuantityTypeIdentifierElectrodermalActivity | A quantity sample type that measures electrodermal activity. | HKQuantityTypeIdentifier | discrete | conductance | 8.0 |
environmentalAudioExposureHKQuantityTypeIdentifierEnvironmentalAudioExposure | A quantity sample type that measures audio exposure to sounds in the environment. | HKQuantityTypeIdentifier | discrete | sound pressure | 13.0 |
environmentalSoundReductionHKQuantityTypeIdentifierEnvironmentalSoundReduction | A quantity sample type that measures the difference in sound intensity when wearing headphones that lower environmental sound levels. | HKQuantityTypeIdentifier | discrete | sound pressure | 16.0 |
estimatedWorkoutEffortScoreHKQuantityTypeIdentifierEstimatedWorkoutEffortScore | Apple documents this type with no description. | HKQuantityTypeIdentifier | not stated | — | 18.0 |
flightsClimbedHKQuantityTypeIdentifierFlightsClimbed | A quantity sample type that measures the number flights of stairs that the user has climbed. | HKQuantityTypeIdentifier | cumulative | count | 8.0 |
forcedExpiratoryVolume1HKQuantityTypeIdentifierForcedExpiratoryVolume1 | A quantity sample type that measures the amount of air that can be forcibly exhaled from the lungs during the first second of a forced exhalation. | HKQuantityTypeIdentifier | discrete | volume | 8.0 |
forcedVitalCapacityHKQuantityTypeIdentifierForcedVitalCapacity | A quantity sample type that measures the amount of air that can be forcibly exhaled from the lungs after taking the deepest breath possible. | HKQuantityTypeIdentifier | discrete | volume | 8.0 |
headphoneAudioExposureHKQuantityTypeIdentifierHeadphoneAudioExposure | A quantity sample type that measures audio exposure from headphones. | HKQuantityTypeIdentifier | discrete | sound pressure | 13.0 |
heartRateHKQuantityTypeIdentifierHeartRate | A quantity sample type that measures the user’s heart rate. | HKQuantityTypeIdentifier | discrete | count/time | 8.0 |
heartRateRecoveryOneMinuteHKQuantityTypeIdentifierHeartRateRecoveryOneMinute | A quantity sample that records the reduction in heart rate from the peak exercise rate to the rate one minute after exercising ended. | HKQuantityTypeIdentifier | discrete | count | 16.0 |
heartRateVariabilitySDNNHKQuantityTypeIdentifierHeartRateVariabilitySDNN | A quantity sample type that measures the standard deviation of heartbeat intervals. | HKQuantityTypeIdentifier | discrete | time | 11.0 |
heightHKQuantityTypeIdentifierHeight | A quantity sample type that measures the user’s height. | HKQuantityTypeIdentifier | discrete | length | 8.0 |
inhalerUsageHKQuantityTypeIdentifierInhalerUsage | A quantity sample type that measures the number of puffs the user takes from their inhaler. | HKQuantityTypeIdentifier | cumulative | count | 8.0 |
insulinDeliveryHKQuantityTypeIdentifierInsulinDelivery | A quantity sample that measures the amount of insulin delivered. | HKQuantityTypeIdentifier | cumulative | international | 11.0 |
leanBodyMassHKQuantityTypeIdentifierLeanBodyMass | A quantity sample type that measures the user’s lean body mass. | HKQuantityTypeIdentifier | discrete | mass | 8.0 |
nikeFuelHKQuantityTypeIdentifierNikeFuel | A quantity sample type that measures the number of NikeFuel points the user has earned. | HKQuantityTypeIdentifier | cumulative | count | 8.0 |
numberOfAlcoholicBeveragesHKQuantityTypeIdentifierNumberOfAlcoholicBeverages | A quantity sample type that measures the number of standard alcoholic drinks that the user has consumed. | HKQuantityTypeIdentifier | cumulative | count | 15.0 |
numberOfTimesFallenHKQuantityTypeIdentifierNumberOfTimesFallen | A quantity sample type that measures the number of times the user fell. | HKQuantityTypeIdentifier | cumulative | count | 8.0 |
oxygenSaturationHKQuantityTypeIdentifierOxygenSaturation | A quantity sample type that measures the user’s oxygen saturation. | HKQuantityTypeIdentifier | discrete | percent | 8.0 |
paddleSportsSpeedHKQuantityTypeIdentifierPaddleSportsSpeed | A quantity sample type that measures the distance the user has moved by paddling sports. | HKQuantityTypeIdentifier | cumulative | distance per time | 18.0 |
peakExpiratoryFlowRateHKQuantityTypeIdentifierPeakExpiratoryFlowRate | A quantity sample type that measures the user’s maximum flow rate generated during a forceful exhalation. | HKQuantityTypeIdentifier | discrete | volume/time | 8.0 |
peripheralPerfusionIndexHKQuantityTypeIdentifierPeripheralPerfusionIndex | A quantity sample type that measures the user’s peripheral perfusion index. | HKQuantityTypeIdentifier | discrete | percent | 8.0 |
physicalEffortHKQuantityTypeIdentifierPhysicalEffort | A quantity sample type that measures the estimated amount of energy being used to perform a task excluding other factors such as temperature, altitude, or heart rate. | HKQuantityTypeIdentifier | discrete | — | 17.0 |
pushCountHKQuantityTypeIdentifierPushCount | A quantity sample type that measures the number of pushes that the user has performed while using a wheelchair. | HKQuantityTypeIdentifier | cumulative | count | 10.0 |
respiratoryRateHKQuantityTypeIdentifierRespiratoryRate | A quantity sample type that measures the user’s respiratory rate. | HKQuantityTypeIdentifier | discrete | count/time | 8.0 |
restingHeartRateHKQuantityTypeIdentifierRestingHeartRate | A quantity sample type that measures the user’s resting heart rate. | HKQuantityTypeIdentifier | discrete | count/time | 11.0 |
rowingSpeedHKQuantityTypeIdentifierRowingSpeed | A quantity sample type that measures how fast the rower is moving. | HKQuantityTypeIdentifier | discrete | distance per time | 18.0 |
runningGroundContactTimeHKQuantityTypeIdentifierRunningGroundContactTime | A quantity sample type that measures the amount of time the runner’s foot is in contact with the ground while running. | HKQuantityTypeIdentifier | discrete | time | 16.0 |
runningPowerHKQuantityTypeIdentifierRunningPower | A quantity sample type that measures the rate of work required for the runner to maintain their speed. | HKQuantityTypeIdentifier | discrete | power | 16.0 |
runningSpeedHKQuantityTypeIdentifierRunningSpeed | A quantity sample type that measures the runner’s speed. | HKQuantityTypeIdentifier | discrete | distance per time | 16.0 |
runningStrideLengthHKQuantityTypeIdentifierRunningStrideLength | A quantity sample type that measures the distance covered by a single step while running. | HKQuantityTypeIdentifier | discrete | length | 16.0 |
runningVerticalOscillationHKQuantityTypeIdentifierRunningVerticalOscillation | A quantity sample type measuring pelvis vertical range of motion during a single running stride. | HKQuantityTypeIdentifier | discrete | length | 16.0 |
sixMinuteWalkTestDistanceHKQuantityTypeIdentifierSixMinuteWalkTestDistance | A quantity sample type that stores the distance a user can walk during a six-minute walk test. | HKQuantityTypeIdentifier | discrete | length | 14.0 |
stairAscentSpeedHKQuantityTypeIdentifierStairAscentSpeed | A quantity sample type measuring the user’s speed while climbing a flight of stairs. | HKQuantityTypeIdentifier | discrete | distance/time | 14.0 |
stairDescentSpeedHKQuantityTypeIdentifierStairDescentSpeed | A quantity sample type measuring the user’s speed while descending a flight of stairs. | HKQuantityTypeIdentifier | discrete | distance/time | 14.0 |
stepCountHKQuantityTypeIdentifierStepCount | A quantity sample type that measures the number of steps the user has taken. | HKQuantityTypeIdentifier | cumulative | count | 8.0 |
swimmingStrokeCountHKQuantityTypeIdentifierSwimmingStrokeCount | A quantity sample type that measures the number of strokes performed while swimming. | HKQuantityTypeIdentifier | cumulative | count | 10.0 |
timeInDaylightHKQuantityTypeIdentifierTimeInDaylight | A quantity sample type that measures amount of time the user spent in daylight. | HKQuantityTypeIdentifier | cumulative | time | 17.0 |
underwaterDepthHKQuantityTypeIdentifierUnderwaterDepth | A quantity sample that records a person’s depth underwater. | HKQuantityTypeIdentifier | discrete | length | 16.0 |
uvExposureHKQuantityTypeIdentifierUVExposure | A quantity sample type that measures the user’s exposure to UV radiation. | HKQuantityTypeIdentifier | discrete | count | 9.0 |
vo2MaxHKQuantityTypeIdentifierVO2Max | A quantity sample that measures the maximal oxygen consumption during exercise. | HKQuantityTypeIdentifier | discrete | volume/mass/time | 11.0 |
waistCircumferenceHKQuantityTypeIdentifierWaistCircumference | A quantity sample type that measures the user’s waist circumference. | HKQuantityTypeIdentifier | discrete | length | 11.0 |
walkingAsymmetryPercentageHKQuantityTypeIdentifierWalkingAsymmetryPercentage | A quantity sample type that measures the percentage of steps in which one foot moves at a different speed than the other when walking on flat ground. | HKQuantityTypeIdentifier | discrete | percentage | 14.0 |
walkingDoubleSupportPercentageHKQuantityTypeIdentifierWalkingDoubleSupportPercentage | A quantity sample type that measures the percentage of time when both of the user’s feet touch the ground while walking steadily over flat ground. | HKQuantityTypeIdentifier | discrete | percentage | 14.0 |
walkingHeartRateAverageHKQuantityTypeIdentifierWalkingHeartRateAverage | A quantity sample type that measures the user’s heart rate while walking. | HKQuantityTypeIdentifier | discrete | count/time | 11.0 |
walkingSpeedHKQuantityTypeIdentifierWalkingSpeed | A quantity sample type that measures the user’s average speed when walking steadily over flat ground. | HKQuantityTypeIdentifier | discrete | distance per time | 14.0 |
walkingStepLengthHKQuantityTypeIdentifierWalkingStepLength | A quantity sample type that measures the average length of the user’s step when walking steadily over flat ground. | HKQuantityTypeIdentifier | discrete | distance | 14.0 |
waterTemperatureHKQuantityTypeIdentifierWaterTemperature | A quantity sample that records the water temperature. | HKQuantityTypeIdentifier | discrete | temperature | 16.0 |
workoutEffortScoreHKQuantityTypeIdentifierWorkoutEffortScore | Apple documents this type with no description. | HKQuantityTypeIdentifier | not stated | — | 18.0 |
appleStandHourHKCategoryTypeIdentifierAppleStandHour | A category sample type that counts the number of hours in the day during which the user has stood and moved for at least one minute per hour. | HKCategoryTypeIdentifier | n/a | HKCategoryValueAppleStandHour | 9.0 |
appleWalkingSteadinessEventHKCategoryTypeIdentifierAppleWalkingSteadinessEvent | A category sample type that records an incident where the user showed a reduced score for their gait’s steadiness. | HKCategoryTypeIdentifier | n/a | HKCategoryValueAppleWalkingSteadinessEvent | 15.0 |
audioExposureEventHKCategoryTypeIdentifierAudioExposureEvent | A category sample type for audio exposure events. | HKCategoryTypeIdentifier | n/a | HKCategoryValueAudioExposureEvent | 13.0 |
bleedingAfterMenopauseHKCategoryTypeIdentifierBleedingAfterMenopause | An identifier for samples that record bleeding after menopause. | HKCategoryTypeIdentifier | n/a | — | 27.0 |
cervicalMucusQualityHKCategoryTypeIdentifierCervicalMucusQuality | A category sample type that records the quality of the user’s cervical mucus. | HKCategoryTypeIdentifier | n/a | HKCategoryValueCervicalMucusQuality | 9.0 |
contraceptiveHKCategoryTypeIdentifierContraceptive | A category sample type that records the use of contraceptives. | HKCategoryTypeIdentifier | n/a | HKCategoryValueContraceptive | 14.3 |
environmentalAudioExposureEventHKCategoryTypeIdentifierEnvironmentalAudioExposureEvent | A category sample type that records exposure to potentially damaging sounds from the environment. | HKCategoryTypeIdentifier | n/a | HKCategoryValueEnvironmentalAudioExposureEvent | 14.0 |
handwashingEventHKCategoryTypeIdentifierHandwashingEvent | A category sample type for handwashing events. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 14.0 |
headphoneAudioExposureEventHKCategoryTypeIdentifierHeadphoneAudioExposureEvent | A category sample type that records exposure to potentially damaging sounds from headphones. | HKCategoryTypeIdentifier | n/a | HKCategoryValueHeadphoneAudioExposureEvent | 14.2 |
highHeartRateEventHKCategoryTypeIdentifierHighHeartRateEvent | A category sample type for high heart rate events. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 12.2 |
hypertensionEventHKCategoryTypeIdentifierHypertensionEvent | Apple documents this type with no description. | HKCategoryTypeIdentifier | n/a | — | 26.2 |
infrequentMenstrualCyclesHKCategoryTypeIdentifierInfrequentMenstrualCycles | A category sample that indicates an infrequent menstrual cycle. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 16.0 |
intermenstrualBleedingHKCategoryTypeIdentifierIntermenstrualBleeding | A category sample type that records spotting outside the normal menstruation period. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 9.0 |
irregularHeartRhythmEventHKCategoryTypeIdentifierIrregularHeartRhythmEvent | A category sample type for irregular heart rhythm events. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 12.2 |
irregularMenstrualCyclesHKCategoryTypeIdentifierIrregularMenstrualCycles | A category sample that indicates an irregular menstrual cycle. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 16.0 |
lactationHKCategoryTypeIdentifierLactation | A category type that records lactation. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 14.3 |
lowCardioFitnessEventHKCategoryTypeIdentifierLowCardioFitnessEvent | An event that indicates the user’s VO2 max values consistently fall below a particular aerobic fitness threshold. | HKCategoryTypeIdentifier | n/a | HKCategoryValueLowCardioFitnessEvent | 14.3 |
lowHeartRateEventHKCategoryTypeIdentifierLowHeartRateEvent | A category sample type for low heart rate events. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 12.2 |
menopausalStateHKCategoryTypeIdentifierMenopausalState | An identifier for samples that record a person’s menopausal state. | HKCategoryTypeIdentifier | n/a | HKCategoryValueMenopausalState | 27.0 |
menstrualFlowHKCategoryTypeIdentifierMenstrualFlow | A category sample type that records menstrual cycles. | HKCategoryTypeIdentifier | n/a | HKCategoryValueMenstrualFlow | 9.0 |
mindfulSessionHKCategoryTypeIdentifierMindfulSession | A category sample type for recording a mindful session. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 10.0 |
ovulationTestResultHKCategoryTypeIdentifierOvulationTestResult | A category sample type that records the result of an ovulation home test. | HKCategoryTypeIdentifier | n/a | HKCategoryValueOvulationTestResult | 9.0 |
persistentIntermenstrualBleedingHKCategoryTypeIdentifierPersistentIntermenstrualBleeding | A category sample that indicates persistent intermenstrual bleeding. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 16.0 |
pregnancyHKCategoryTypeIdentifierPregnancy | A category type that records pregnancy. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 14.3 |
pregnancyTestResultHKCategoryTypeIdentifierPregnancyTestResult | A category type that represents the results from a home pregnancy test. | HKCategoryTypeIdentifier | n/a | HKCategoryValuePregnancyTestResult | 15.0 |
progesteroneTestResultHKCategoryTypeIdentifierProgesteroneTestResult | A category type that represents the results from a home progesterone test. | HKCategoryTypeIdentifier | n/a | HKCategoryValueProgesteroneTestResult | 15.0 |
prolongedMenstrualPeriodsHKCategoryTypeIdentifierProlongedMenstrualPeriods | A category sample that indicates a prolonged menstrual cycle. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 16.0 |
sexualActivityHKCategoryTypeIdentifierSexualActivity | A category sample type that records sexual activity. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 9.0 |
sleepAnalysisHKCategoryTypeIdentifierSleepAnalysis | A category sample type for sleep analysis information. | HKCategoryTypeIdentifier | n/a | HKCategoryValueSleepAnalysis | 8.0 |
toothbrushingEventHKCategoryTypeIdentifierToothbrushingEvent | A category sample type for toothbrushing events. | HKCategoryTypeIdentifier | n/a | HKCategoryValue | 13.0 |
activityMoveModeHKCharacteristicTypeIdentifierActivityMoveMode | A characteristic identifier for the user’s activity mode. | HKCharacteristicTypeIdentifier | n/a | — | 14.0 |
biologicalSexHKCharacteristicTypeIdentifierBiologicalSex | A characteristic type identifier for the user’s sex. | HKCharacteristicTypeIdentifier | n/a | — | 8.0 |
bloodTypeHKCharacteristicTypeIdentifierBloodType | A characteristic type identifier for the user’s blood type. | HKCharacteristicTypeIdentifier | n/a | — | 8.0 |
dateOfBirthHKCharacteristicTypeIdentifierDateOfBirth | A characteristic type identifier for the user’s date of birth. | HKCharacteristicTypeIdentifier | n/a | — | 8.0 |
fitzpatrickSkinTypeHKCharacteristicTypeIdentifierFitzpatrickSkinType | A characteristic type identifier for the user’s skin type. | HKCharacteristicTypeIdentifier | n/a | — | 9.0 |
wheelchairUseHKCharacteristicTypeIdentifierWheelchairUse | A characteristic identifier for the user’s use of a wheelchair. | HKCharacteristicTypeIdentifier | n/a | — | 10.0 |
americanFootballHKWorkoutActivityTypeAmericanFootball | The constant for playing American football. | HKWorkoutActivityType | n/a | — | 8.0 |
archeryHKWorkoutActivityTypeArchery | The constant for shooting archery. | HKWorkoutActivityType | n/a | — | 8.0 |
australianFootballHKWorkoutActivityTypeAustralianFootball | The constant for playing Australian football. | HKWorkoutActivityType | n/a | — | 8.0 |
badmintonHKWorkoutActivityTypeBadminton | The constant for playing badminton. | HKWorkoutActivityType | n/a | — | 8.0 |
barreHKWorkoutActivityTypeBarre | The constant for barre workout. | HKWorkoutActivityType | n/a | — | 10.0 |
baseballHKWorkoutActivityTypeBaseball | The constant for playing baseball. | HKWorkoutActivityType | n/a | — | 8.0 |
basketballHKWorkoutActivityTypeBasketball | The constant for playing basketball. | HKWorkoutActivityType | n/a | — | 8.0 |
bowlingHKWorkoutActivityTypeBowling | The constant for bowling. | HKWorkoutActivityType | n/a | — | 8.0 |
boxingHKWorkoutActivityTypeBoxing | The constant for boxing. | HKWorkoutActivityType | n/a | — | 8.0 |
cardioDanceHKWorkoutActivityTypeCardioDance | The constant for cardiovascular dance workouts. | HKWorkoutActivityType | n/a | — | 14.0 |
climbingHKWorkoutActivityTypeClimbing | The constant for climbing. | HKWorkoutActivityType | n/a | — | 8.0 |
cooldownHKWorkoutActivityTypeCooldown | The constant for low intensity stretching and mobility exercises following a more vigorous workout. | HKWorkoutActivityType | n/a | — | 14.0 |
coreTrainingHKWorkoutActivityTypeCoreTraining | The constant for core training. | HKWorkoutActivityType | n/a | — | 10.0 |
cricketHKWorkoutActivityTypeCricket | The constant for playing cricket. | HKWorkoutActivityType | n/a | — | 8.0 |
crossCountrySkiingHKWorkoutActivityTypeCrossCountrySkiing | The constant for cross country skiing. | HKWorkoutActivityType | n/a | — | 10.0 |
crossTrainingHKWorkoutActivityTypeCrossTraining | The constant for exercise that includes any mixture of cardio, strength, and/or flexibility training. | HKWorkoutActivityType | n/a | — | 8.0 |
curlingHKWorkoutActivityTypeCurling | The constant for curling. | HKWorkoutActivityType | n/a | — | 8.0 |
cyclingHKWorkoutActivityTypeCycling | The constant for cycling. | HKWorkoutActivityType | n/a | — | 8.0 |
danceHKWorkoutActivityTypeDance | The constant for dancing. | HKWorkoutActivityType | n/a | — | 8.0 |
danceInspiredTrainingHKWorkoutActivityTypeDanceInspiredTraining | The constant for workouts inspired by dance, including Pilates, Barre, and Feldenkrais. | HKWorkoutActivityType | n/a | — | 8.0 |
discSportsHKWorkoutActivityTypeDiscSports | The constant for playing disc sports such as Ultimate and Disc Golf. | HKWorkoutActivityType | n/a | — | 13.0 |
downhillSkiingHKWorkoutActivityTypeDownhillSkiing | The constant for downhill skiing. | HKWorkoutActivityType | n/a | — | 10.0 |
ellipticalHKWorkoutActivityTypeElliptical | The constant for workouts on an elliptical machine. | HKWorkoutActivityType | n/a | — | 8.0 |
equestrianSportsHKWorkoutActivityTypeEquestrianSports | The constant for activities that involve riding a horse, including polo, horse racing, and horse riding. | HKWorkoutActivityType | n/a | — | 8.0 |
fencingHKWorkoutActivityTypeFencing | The constant for fencing. | HKWorkoutActivityType | n/a | — | 8.0 |
fishingHKWorkoutActivityTypeFishing | The constant for fishing. | HKWorkoutActivityType | n/a | — | 8.0 |
fitnessGamingHKWorkoutActivityTypeFitnessGaming | The constant for playing fitness-based video games. | HKWorkoutActivityType | n/a | — | 13.0 |
flexibilityHKWorkoutActivityTypeFlexibility | The constant for a flexibility workout. | HKWorkoutActivityType | n/a | — | 10.0 |
functionalStrengthTrainingHKWorkoutActivityTypeFunctionalStrengthTraining | The constant for strength training, primarily with free weights and body weight. | HKWorkoutActivityType | n/a | — | 8.0 |
golfHKWorkoutActivityTypeGolf | The constant for playing golf. | HKWorkoutActivityType | n/a | — | 8.0 |
gymnasticsHKWorkoutActivityTypeGymnastics | Performing gymnastics. | HKWorkoutActivityType | n/a | — | 8.0 |
handballHKWorkoutActivityTypeHandball | The constant for playing handball. | HKWorkoutActivityType | n/a | — | 8.0 |
handCyclingHKWorkoutActivityTypeHandCycling | The constant for hand cycling. | HKWorkoutActivityType | n/a | — | 11.0 |
highIntensityIntervalTrainingHKWorkoutActivityTypeHighIntensityIntervalTraining | The constant for high intensity interval training. | HKWorkoutActivityType | n/a | — | 10.0 |
hikingHKWorkoutActivityTypeHiking | The constant for hiking. | HKWorkoutActivityType | n/a | — | 8.0 |
hockeyHKWorkoutActivityTypeHockey | The constant for playing hockey, including ice hockey, field hockey, and related sports. | HKWorkoutActivityType | n/a | — | 8.0 |
huntingHKWorkoutActivityTypeHunting | The constant for hunting. | HKWorkoutActivityType | n/a | — | 8.0 |
jumpRopeHKWorkoutActivityTypeJumpRope | The constant for jumping rope. | HKWorkoutActivityType | n/a | — | 10.0 |
kickboxingHKWorkoutActivityTypeKickboxing | The constant for kickboxing. | HKWorkoutActivityType | n/a | — | 10.0 |
lacrosseHKWorkoutActivityTypeLacrosse | The constant for playing lacrosse. | HKWorkoutActivityType | n/a | — | 8.0 |
martialArtsHKWorkoutActivityTypeMartialArts | The constant for practicing martial arts. | HKWorkoutActivityType | n/a | — | 8.0 |
mindAndBodyHKWorkoutActivityTypeMindAndBody | The constant for performing activities like walking meditation, Gyrotonic exercise, and Qigong. | HKWorkoutActivityType | n/a | — | 8.0 |
mixedCardioHKWorkoutActivityTypeMixedCardio | The constant for workouts that mix a variety of cardio exercise machines or modalities. | HKWorkoutActivityType | n/a | — | 11.0 |
mixedMetabolicCardioTrainingHKWorkoutActivityTypeMixedMetabolicCardioTraining | The constant for performing any mix of cardio-focused exercises. | HKWorkoutActivityType | n/a | — | 8.0 |
otherHKWorkoutActivityTypeOther | The constant for a workout that does not match any of the other workout activity types. | HKWorkoutActivityType | n/a | — | 8.0 |
paddleSportsHKWorkoutActivityTypePaddleSports | The constant for canoeing, kayaking, paddling an outrigger, paddling a stand-up paddle board, and related sports. | HKWorkoutActivityType | n/a | — | 8.0 |
pickleballHKWorkoutActivityTypePickleball | The constant for playing pickleball. | HKWorkoutActivityType | n/a | — | 14.0 |
pilatesHKWorkoutActivityTypePilates | The constant for a pilates workout. | HKWorkoutActivityType | n/a | — | 10.0 |
playHKWorkoutActivityTypePlay | The constant for play-based activities like tag, dodgeball, hopscotch, tetherball, and playing on a jungle gym. | HKWorkoutActivityType | n/a | — | 8.0 |
preparationAndRecoveryHKWorkoutActivityTypePreparationAndRecovery | The constant for warm-up and therapeutic activities like foam rolling and stretching. | HKWorkoutActivityType | n/a | — | 8.0 |
racquetballHKWorkoutActivityTypeRacquetball | The constant for playing racquetball. | HKWorkoutActivityType | n/a | — | 8.0 |
rowingHKWorkoutActivityTypeRowing | The constant for rowing. | HKWorkoutActivityType | n/a | — | 8.0 |
rugbyHKWorkoutActivityTypeRugby | The constant for playing rugby. | HKWorkoutActivityType | n/a | — | 8.0 |
runningHKWorkoutActivityTypeRunning | The constant for running and jogging. | HKWorkoutActivityType | n/a | — | 8.0 |
sailingHKWorkoutActivityTypeSailing | The constant for sailing. | HKWorkoutActivityType | n/a | — | 8.0 |
skatingSportsHKWorkoutActivityTypeSkatingSports | The constant for skating activities, including ice skating, speed skating, inline skating, and skateboarding. | HKWorkoutActivityType | n/a | — | 8.0 |
snowboardingHKWorkoutActivityTypeSnowboarding | The constant for snowboarding. | HKWorkoutActivityType | n/a | — | 10.0 |
snowSportsHKWorkoutActivityTypeSnowSports | The constant for a variety of snow sports, including sledding, snowmobiling, or building a snowman. | HKWorkoutActivityType | n/a | — | 8.0 |
soccerHKWorkoutActivityTypeSoccer | The constant for playing soccer. | HKWorkoutActivityType | n/a | — | 8.0 |
socialDanceHKWorkoutActivityTypeSocialDance | The constant for dancing with a partner or partners, such as swing, salsa, or folk dances. | HKWorkoutActivityType | n/a | — | 14.0 |
softballHKWorkoutActivityTypeSoftball | The constant for playing softball. | HKWorkoutActivityType | n/a | — | 8.0 |
squashHKWorkoutActivityTypeSquash | The constant for playing squash. | HKWorkoutActivityType | n/a | — | 8.0 |
stairClimbingHKWorkoutActivityTypeStairClimbing | The constant for workouts using a stair climbing machine. | HKWorkoutActivityType | n/a | — | 8.0 |
stairsHKWorkoutActivityTypeStairs | The constant for running, walking, or other drills using stairs (for example, in a stadium or inside a multilevel building). | HKWorkoutActivityType | n/a | — | 10.0 |
stepTrainingHKWorkoutActivityTypeStepTraining | The constant for training using a step bench. | HKWorkoutActivityType | n/a | — | 10.0 |
surfingSportsHKWorkoutActivityTypeSurfingSports | The constant for a variety of surf sports, including surfing, kite surfing, and wind surfing. | HKWorkoutActivityType | n/a | — | 8.0 |
swimBikeRunHKWorkoutActivityTypeSwimBikeRun | The constant for multisport activities like triathlons. | HKWorkoutActivityType | n/a | — | 16.0 |
swimmingHKWorkoutActivityTypeSwimming | The constant for swimming. | HKWorkoutActivityType | n/a | — | 8.0 |
tableTennisHKWorkoutActivityTypeTableTennis | The constant for playing table tennis. | HKWorkoutActivityType | n/a | — | 8.0 |
taiChiHKWorkoutActivityTypeTaiChi | The constant for tai chi. | HKWorkoutActivityType | n/a | — | 11.0 |
tennisHKWorkoutActivityTypeTennis | The constant for playing tennis. | HKWorkoutActivityType | n/a | — | 8.0 |
trackAndFieldHKWorkoutActivityTypeTrackAndField | Participating in track and field events, including shot put, javelin, pole vaulting, and related sports. | HKWorkoutActivityType | n/a | — | 8.0 |
traditionalStrengthTrainingHKWorkoutActivityTypeTraditionalStrengthTraining | The constant for strength training exercises primarily using machines or free weights. | HKWorkoutActivityType | n/a | — | 8.0 |
transitionHKWorkoutActivityTypeTransition | A constant for the transition time between activities in a multisport workout. | HKWorkoutActivityType | n/a | — | 16.0 |
underwaterDivingHKWorkoutActivityTypeUnderwaterDiving | The constant for underwater diving. | HKWorkoutActivityType | n/a | — | 17.0 |
volleyballHKWorkoutActivityTypeVolleyball | The constant for playing volleyball. | HKWorkoutActivityType | n/a | — | 8.0 |
walkingHKWorkoutActivityTypeWalking | The constant for walking. | HKWorkoutActivityType | n/a | — | 8.0 |
waterFitnessHKWorkoutActivityTypeWaterFitness | The constant for aerobic exercise performed in shallow water. | HKWorkoutActivityType | n/a | — | 8.0 |
waterPoloHKWorkoutActivityTypeWaterPolo | The constant for playing water polo. | HKWorkoutActivityType | n/a | — | 8.0 |
waterSportsHKWorkoutActivityTypeWaterSports | The constant for a variety of water sports, including water skiing, wake boarding, and related activities. | HKWorkoutActivityType | n/a | — | 8.0 |
wheelchairRunPaceHKWorkoutActivityTypeWheelchairRunPace | The constant for wheelchair workout at running pace. | HKWorkoutActivityType | n/a | — | 10.0 |
wheelchairWalkPaceHKWorkoutActivityTypeWheelchairWalkPace | The constant for a wheelchair workout at walking pace. | HKWorkoutActivityType | n/a | — | 10.0 |
wrestlingHKWorkoutActivityTypeWrestling | The constant for wrestling. | HKWorkoutActivityType | n/a | — | 8.0 |
yogaHKWorkoutActivityTypeYoga | The constant for practicing yoga. | HKWorkoutActivityType | n/a | — | 8.0 |
What the unit families tell you
Apple names a unit family for 116 of the 120 quantity types — the only family that carries units at all. It matters because HKQuantity will happily convert between any two compatible units and throw only when they are incompatible — so a distance read in metres and rendered as miles is a silent bug, not a crash.
- mass 39
- length 15
- count 11
- time 6
- distance per time 6
- temperature 4
The types Apple ships undocumented
4of these identifiers carry neither an abstract nor a discussion in Apple’s reference as of 2026-08-28: appleSleepingBreathingDisturbances, estimatedWorkoutEffortScore, workoutEffortScore, hypertensionEvent. All were introduced in iOS 18. The identifiers compile and the types exist; what they contain and how Apple derives them is simply not stated. Treat anything you infer from observed values as unverified.
Going cross-platform
An identifier existing on iOS says nothing about Android. Our HealthKit ↔ Health Connect reference maps the metrics we could verify on both platforms, including the ones that look equivalent and are not — Apple stores HRV as SDNN while Health Connect stores RMSSD, and those are different calculations that must not be normalised into one field.
Questions
How do I know whether a HealthKit type is cumulative or discrete?
Apple states it in the type's discussion rather than exposing it as a property, which is why it is easy to miss. Of the 120 quantity types, 64 are described as measuring cumulative values and 53 as discrete; Apple's wording does not state it for the remaining 3. The distinction decides which HKStatisticsQuery option is correct: cumulative types are summed with .cumulativeSum, discrete types are averaged or reduced with options such as .discreteAverage, .discreteMin and .discreteMax. Choosing the wrong one does not raise an error — it returns a plausible number that is wrong, which is the worst possible failure mode.
Why does summing heart rate give a nonsense number?
Because heart rate is a discrete type, not a cumulative one. Cumulative types like step count and active energy accumulate over an interval, so summing the samples in that interval is meaningful. Discrete types like heart rate, body mass and VO2 max are point-in-time measurements; adding them together produces a figure with no physical meaning. Use .discreteAverage for a representative value over a window, and .discreteMin or .discreteMax when you want the extremes.
Are there HealthKit types Apple ships without any documentation?
Yes. As of our 2026-08-28 read of Apple's documentation, 4 quantity types carry neither an abstract nor a discussion: appleSleepingBreathingDisturbances, estimatedWorkoutEffortScore, workoutEffortScore, hypertensionEvent. All three were introduced in iOS 18. The identifiers are real and usable, but Apple's own reference says nothing about what they contain or how they are calculated, so treat any behaviour you observe as unverified until Apple documents it.
Compiled by AIFitnessAPI from Apple’s published documentation, read 2026-08-28. Apple’s abstracts are quoted for identification; the analysis, the aggregation split and the cross-platform mapping are ours. Regenerate with scripts/fetch-healthkit-identifiers.mjs.