Apple Health and Health Connect disagree more than their marketing suggests. This page lists all 70 signals OneRep understands, what each store calls it, and what happens on the platform that does not have it.
Metrics marked with an asterisk are the ones OneRep scores on and draws its own screens for. Everything else you reach by making a custom metric on the Health page and choosing Fill from Apple Health (or Health Connect) when you make it. The sync then fills that metric in every day, and it is filed under the dial its catalogue group belongs to. This is how blood glucose gets tracked without the app pretending to have an opinion about what a good reading is.
How to read these tables
- Apple Health names the HealthKit identifier, without the
HKQuantityTypeIdentifier prefix. HealthKit’s spelling is its own: it capitalises the VO2 max acronym and nothing else, and it puts the noun first in dietaryFatSaturated. Both are correct as printed, not typos.
- Health Connect names the record class, without the
Record suffix.
- Aggregation is how a day’s readings collapse into one number.
Sum for things that accumulate, Average for sampled signals where no single reading is more true than another, Latest for point measurements you take, Sessions for things with a start and an end.
- Plausible range is a filter, not a target. A reading outside it is dropped on its own; the rest of the day survives. A health store aggregates every app on your phone, and one badly behaved writer must not be able to poison a baseline.
A dash means that platform has no equivalent type. Where that happens, the note under the table says what to do instead, since “your phone cannot do this” is a better answer than a number that never arrives.
The catalogue
Activity
- Total calories: Apple Health reports active and resting energy separately rather than as one total.
- Walking and running distance: Health Connect keeps one distance figure across every activity; on Android this includes cycling and swimming.
- Cycling distance: Health Connect does not split distance by activity.
- Swimming distance: Health Connect does not split distance by activity.
- Elevation gained: Apple Health exposes flights climbed rather than metres ascended.
- Steps cadence: Apple Health records cycling cadence but has no walking or running cadence type.
Vitals
- Walking heart rate: Health Connect stores raw heart rate samples without labelling which came from walking.
- Heart rate recovery: Health Connect has no heart rate recovery type.
- Wrist temperature: Health Connect reports a change from your baseline rather than an absolute temperature; see skin temperature change.
- Skin temperature change: Apple Health reports an absolute wrist temperature instead; see wrist temperature.
Body
- Bone mass: Apple Health has no bone mass type; enter it as a custom metric on iOS.
- Basal metabolic rate: Apple reports resting energy accumulated over the day; Health Connect reports a rate. Both land here as kcal per day.
- Waist: Health Connect has no waist type; log it as a check-in measurement on Android.
- Body water: Apple Health has no body water type; enter it as a custom metric on iOS.
- BMI: Health Connect stores height and weight and expects apps to divide; there is no BMI record.
Nutrition
- Trans fat: HealthKit has identifiers for saturated, monounsaturated and polyunsaturated fat but none for trans fat.
Sleep
Reproductive health
- Period: Apple Health stores flow per day and works the period out in its own app; use menstrual flow on iOS.
Mindfulness
- Mindful minutes: Health Connect has no mindfulness type.
Caveats worth keeping
Heart rate variability is not the same number on both platforms. Apple reports SDNN; Health Connect reports RMSSD. Same concept, different maths. Compare your HRV against your own history and never against a figure from someone on the other platform, or against a published “normal” range that does not say which of the two it means.
Distance. Apple splits distance by activity, so walking and running, cycling, and swimming are three separate types. Health Connect keeps one figure across everything. On Android, the walking and running distance you see therefore includes any cycling and swimming your phone recorded.
Basal metabolic rate. Apple reports resting energy accumulated over the day; Health Connect reports a rate. Both arrive here as kcal per day, which is close enough to compare with your own targets and not close enough to compare with a stranger’s.
Blood pressure. Health Connect keeps both numbers in one BloodPressure record, so systolic and diastolic map to the same record class and are pulled apart on the way in.
Nutrition. Health Connect files every nutrient, from calories to vitamin D, under a single Nutrition record. Reading these is useful when another app owns your food logging; if you log food in OneRep, you already have better numbers. HealthKit has identifiers for saturated, monounsaturated, and polyunsaturated fat, but none at all for trans fat, so that row is Android only.
Temperature is two metrics, not one. Wrist temperature and skin temperature change are deliberately separate entries. Apple stores an absolute overnight wrist temperature; Google stores a signed delta from your own baseline. Merging them would produce a series whose meaning silently changed the day you switched phones, so each platform gets its own row and neither pretends to be the other. A negative value is normal for the Android one and impossible for the Apple one.
Sleep stages. Deep, REM, light, and awake-in-bed all come out of the same sleepAnalysis or SleepSession record as total sleep. They are stage totals pulled from one night’s session, not four separate recordings.
25 of these are catalogued but not yet readable. The catalogue recently grew by 25 entries: steps cadence, walking heart rate, heart rate recovery, wrist and skin temperature, body water, BMI, the four sleep stages, period and sexual activity, and fourteen nutrient rows. The native plugin mapping tables have not been extended to cover them yet. They are listed here and offered by list_platform_metrics, and a custom metric can be bound to one, but no reading arrives from a phone until the plugins catch up.
Of the rest, the plugins read what each platform can supply, minus the gaps noted under each table.
Write-back is narrower: 34 metrics on iOS and 22 on Android. Nutrition, blood pressure, sleep, and the reproductive records refuse write-back on Android for structural reasons. A nutrition record needs a meal to hang off, blood pressure is a single record holding two numbers so half of it cannot be corrected on its own, and the sleep and reproductive records carry structure that one number cannot reconstruct.
Neither Apple Health nor Health Connect lets an app amend a sample another app wrote. A write-back is added alongside the original, so the store then shows two readings for that day: yours and the device’s. OneRep uses your corrected figure either way. See Health for the switch that controls this.
Turning them on
Nothing here is read until you turn on sync, and the ten first-class metrics each have their own switch in Settings → Health & wearables. See Health for the switch list and what a metric being off actually means. The rest arrive only once a custom metric is bound to them.