> For the complete documentation index, see [llms.txt](https://docs.tryterra.co/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tryterra.co/faq/help-topics/no-data/missing-fields-data-types-in-payloads/apple-health-missing-detailed-samples.md).

# Why are Apple Health HR, sleep stages or GPS missing?

Missing detail in Apple Health payloads almost always means **the source did not record it, or a HealthKit permission was not granted**, not a pipeline failure. First, ensure you are on the latest SDK version (recent releases improved background sync and sample collection), then check by field:

* **Sleep stages**: older Apple devices only record asleep/awake, so light/deep/REM are null while total asleep is populated. Check the Health app's sleep graph.
* **Workout HR**: a workout object can sync before its detailed HR, so trigger a backfill (you must call `initTerra` again so the SDK picks it up on next foreground).
* **Sparse HR**: usually means the watch did not record continuous HR (Workout Power Saving Mode disables the HR sensor, plus wrist fit). Confirm via the HR graph in Apple Fitness/Health.
* **GPS**: no route is recorded for indoor types, auto-detected short walks/runs, or manual/third-party workouts, and the 'Workout Route' permission must be enabled in iOS Settings > Privacy & Security > Health.
* **Athlete payload**: the user must grant read access to characteristics like Gender and Date of Birth at the HealthKit prompt.

If it persists after these checks, share `user_id`, dates and source-app screenshots for investigation.
