HealthKit Deprecated and Beta Types
2 beta · 4 undocumented · 3 deprecated activity types · read from Apple’s documentation on 2026-08-28
0 of 240 HealthKit identifiers are flagged deprecated, yet Apple groups 3 under "Deprecated activity types". Plus the 2 betas and 4 with no abstract.
Zero of the 240 HealthKit type identifiers in this dataset are marked deprecated. Not one carries a deprecation flag on any of its platform availability entries, and every identifier is listed as available on all six platforms Apple documents: iOS, iPadOS, Mac Catalyst, macOS, visionOS and watchOS. There is no watchOS-only type and no iOS-only type in the set.
That is the good news, and it is narrower than it sounds. "Is X deprecated?" is only one of four questions you should be asking before you build on an identifier, and the other three have less comfortable answers.
Apple's own grouping contains a bucket named "Deprecated activity types."
It holds three workout activity constants — dance, danceInspiredTraining
and mixedMetabolicCardioTraining — all three introduced in iOS 8.0, all
three still listed as available on all six platforms, and none of them
carrying a deprecation flag. So the platform metadata and the group name
disagree, and this page reports both rather than picking one. Apple's abstract
for danceInspiredTraining still reads "The constant for workouts inspired by
dance, including Pilates, Barre, and Feldenkrais," which tells you what it
covers and nothing about whether you should reach for it. Treat the group name
as the signal about intent and the missing flag as the signal about
compilation: the symbols work, and Apple has grouped them under a heading
saying it would rather you did not use them.
Two identifiers are in beta on some platform, and they are the two newest
in the set: bleedingAfterMenopause and menopausalState, both category
types introduced in iOS 27.0. menopausalState resolves to its own value
enum, HKCategoryValueMenopausalState. bleedingAfterMenopause does not
resolve to one at all in this dataset — it is one of only two category types
without a resolved value enum. Beta symbols are the one part of the set where
the shape of the data can still change under you.
Four identifiers are listed with no abstract at all:
appleSleepingBreathingDisturbances, estimatedWorkoutEffortScore,
workoutEffortScore and hypertensionEvent. The first three are quantity
types that also have no stated aggregation style and no unit family, which
means there is no documented answer to what they measure, in what, or whether
you may add them together. hypertensionEvent is a category type from iOS
26.2 with no abstract, no discussion and no resolved value enum.
58 identifiers carry zero words of discussion prose, and the median discussion length across the whole set is 15 words. Silence is not a lifecycle status, but it has the same practical effect: an undocumented type is one you cannot verify your assumptions against, and assumptions about health data tend to be wrong in ways that never throw.
So the honest four-part answer to "is X safe to build on" is: nothing is flagged deprecated; three activity constants sit in a group Apple named deprecated; two are beta; and a much larger population is simply underdocumented. The counts come from this site's HealthKit identifier dataset, read from Apple's developer documentation on 2026-08-28. Which release each identifier arrived in is on HealthKit types by iOS version. For what the silent ones cost you in practice, see the 58 silent types, and for how these judgements are made, how we verify. If a type you depend on does go away, migrating off a deprecated API covers the mechanics.
The four status edges of the catalogue
Every count below is read from Apple’s documentation for the 240 identifiers on 2026-08-28. Beta and deprecation are per-platform facts in Apple’s availability data; “undocumented” means Apple ships the declaration with neither an abstract nor a discussion.
Beta — 2 identifiers
Marked beta on at least one platform. A beta identifier compiles against the beta SDK and can be renamed or withdrawn before release, so shipping against one ties your release train to Apple’s.
| Identifier | Family | iOS | Apple’s abstract |
|---|---|---|---|
| bleedingAfterMenopause | category | 27.0 | An identifier for samples that record bleeding after menopause. |
| menopausalState | category | 27.0 | An identifier for samples that record a person’s menopausal state. |
No abstract — 4 identifiers
Apple ships these with a declaration and nothing else — no abstract, no discussion. The types exist and compile; what they contain and how Apple derives them is simply not stated, so anything you infer from observed values is unverified.
| Identifier | Family | iOS | Apple’s abstract |
|---|---|---|---|
| appleSleepingBreathingDisturbances | quantity | 18.0 | Apple publishes no abstract for this type. |
| estimatedWorkoutEffortScore | quantity | 18.0 | Apple publishes no abstract for this type. |
| workoutEffortScore | quantity | 18.0 | Apple publishes no abstract for this type. |
| hypertensionEvent | category | 26.2 | Apple publishes no abstract for this type. |
Apple’s deprecated group — 3 identifiers
Apple files these under a topic group literally named “Deprecated activity types”. That grouping is the only deprecation signal they carry — see the next section.
| Identifier | Family | iOS | Apple’s abstract |
|---|---|---|---|
| dance | workoutActivity | 8.0 | The constant for dancing. |
| danceInspiredTraining | workoutActivity | 8.0 | The constant for workouts inspired by dance, including Pilates, Barre, and Feldenkrais. |
| mixedMetabolicCardioTraining | workoutActivity | 8.0 | The constant for performing any mix of cardio-focused exercises. |
Platform-flag deprecated — 0
Zero identifiers carry a deprecation flag on any platform. Not “none we listed” — none at all: across all 240 identifiers and every platform Apple publishes availability for, the deprecated flag is false everywhere as of 2026-08-28. So the 3 types in Apple's deprecated group are deprecated by editorial grouping only; nothing in the machine-readable availability data marks them, and neither the compiler nor a deprecation warning will tell you.
What will bite you
Do not read the zero as an endorsement. No deprecation flag across 240 identifiers means Apple has not marked any of them, not that Apple has promised anything. The three constants in the "Deprecated activity types" group are the proof: a symbol can be signposted as unwanted in the documentation's own structure while the availability metadata stays clean, and a compiler warning is not going to tell you about it.
Deprecation also happens below the type. A type can be perfectly current
while one of its enum values is not. Apple's .asleep sleep value is
deprecated in favour of the specific stages, so an integration reading
sleepAnalysis can be building on a deprecated value inside a
non-deprecated type. A type-level status check will never surface that; only
reading the value enum's own page will.
Beta means the schema is not settled. bleedingAfterMenopause and
menopausalState are iOS 27.0 betas, and bleedingAfterMenopause has no
value enum resolved in this dataset at all. Writing samples of either into
your own storage, keyed by a raw integer value, bets that the value set will
not change before general release. If you must handle them now, keep the raw
sample and re-derive your interpretation later rather than persisting the
interpretation.
Undocumented is the largest risk category, and it has no flag. Four types have no abstract and 58 have no discussion. Nothing in the API distinguishes them from a well-documented type at call time, so the guard has to be yours: verify against Apple's page for that identifier before you ship a rollup, and record what you found and when.
Questions
Are any HealthKit type identifiers deprecated?
None of the 240 carries a deprecation flag on its platform availability entries. Apple's documentation nevertheless groups three workout activity constants under a heading called "Deprecated activity types": dance, danceInspiredTraining and mixedMetabolicCardioTraining. The symbols still compile and are still listed on all six platforms, so the flag and the grouping disagree.
Which HealthKit identifiers are in beta?
Two, and both are reproductive health category types introduced in iOS 27.0: bleedingAfterMenopause and menopausalState. Beta status means the specification can still change, and bleedingAfterMenopause has no value enum resolved in this dataset. Treat anything you persist from either as provisional until they reach general release.
How do I tell whether a HealthKit type is safe to build on?
Check four things rather than one: whether it is flagged deprecated, whether it sits in the deprecated activity group, whether it is beta, and whether Apple actually documented it. That last one catches the most cases here, since four identifiers have no abstract at all and 58 have no discussion prose.
Derived by AIFitnessAPI from Apple’s published documentation, read 2026-08-28. The full table with units, aggregation and value enums is at every HealthKit type identifier, and the machine-readable export is on datasets.