Apple Health Sleep Report Card
Load your export.xml and get a graded sleep score card — duration, consistency, stages, and social jetlag. Free, private, and runs entirely in your browser — nothing is uploaded.
... or drop your export.xml file here
0%
How to use
- On your iPhone, open the Health app and export all health data to get a ZIP containing
export.xml. - Unzip it on your computer (if you have the
.zip, extractexport.xmlfirst). - Pick your report period and nightly sleep target above.
- Click Load export.xml or drag the file onto the box. Parsing runs locally and may take 10–60 seconds for large files.
- Read your report card. Adjust the target or period to recompute instantly.
What this Apple Health sleep report measures
Apple Health and Apple Watch record a lot of raw sleep data, but the Health app stops short of telling you whether your sleep habits are actually good. This tool reads the HKCategoryTypeIdentifierSleepAnalysis records in your export and turns weeks or months of nights into a single, honest report card. Everything below is computed in your browser — your data never leaves your device.
How each grade is calculated
We only count asleep intervals (values AsleepCore, AsleepDeep, AsleepREM, and the older Asleep/AsleepUnspecified) — never InBed or Awake. Because an iPhone and an Apple Watch often both log the same night, we merge overlapping intervals across every source before summing, so no minute is ever double-counted.
- Average nightly duration. Sessions are grouped by "night" using a noon-to-noon window (an interval starting between 12:00 on one day and 12:00 the next belongs to that night). We average the merged asleep time per night. Grade: A ≥ 7.5h, B ≥ 7h, C ≥ 6.5h, D ≥ 6h, otherwise F.
- Consistency. We take the standard deviation of your bedtimes and wake times (in minutes, handling the midnight wrap). Grade: A if SD < 30 min, B < 60 min, C < 90 min, otherwise D. A regular schedule is one of the strongest predictors of feeling rested.
- Sleep debt. For every night we compute
target − actual(only shortfalls count) and sum it over the period. Grade: A if average debt < 15 min/night, B < 30, C < 45, D < 60, otherwise F. Your target is adjustable from 7 to 9 hours. - Stage breakdown. When your watch logged stages, we show the share of Deep and REM sleep. Typical healthy ranges are Deep 13–23% and REM 20–25%. We grade how many of the two fall in range (A = both, B = one, C = neither but close, D = far off). If no staged data exists, this card is skipped.
- Social jetlag. We compare average sleep-midpoint on weekends versus weekdays. A large weekend shift means your body clock is effectively flying across time zones each week. Grade: A < 30 min, B < 60 min, C < 90 min, otherwise D.
The overall grade
The overall letter grade is a weighted average of the cards above, converted to a 0–100 score. Duration and consistency matter most, so they carry the most weight: duration 30%, consistency 25%, sleep debt 20%, stage balance 15%, social jetlag 10%. If stage data is missing, its weight is redistributed proportionally across the others so you are never penalized for not owning a watch. A maps to 90+, B to 80+, C to 70+, D to 60+, and F below that.
How to read your report
Focus on your lowest card first — that is usually where the easiest wins are. If consistency is your worst grade, anchoring a fixed wake time (even on weekends) tends to help everything else. If duration is low, most people gain the fastest minutes by moving bedtime earlier rather than sleeping in. This report is a habit tracker, not a medical device; if you are worried about your sleep, talk to a clinician.
Frequently asked questions
Where does the sleep score come from?
The score is computed entirely in your browser from the HKCategoryTypeIdentifierSleepAnalysis records in your Apple Health export.xml. It combines average duration, bedtime/wake consistency, sleep debt versus your target, stage balance, and weekday-vs-weekend difference into a single letter grade. Nothing is uploaded.
Does this work with Apple Watch sleep analysis?
Yes. Apple Watch records Core, Deep, and REM stages that appear as AsleepCore, AsleepDeep, and AsleepREM. The tool reads those for the stage breakdown. iPhone-only tracking still gives you duration and consistency grades; the stage card is simply skipped.
How does it handle my iPhone and Apple Watch both logging sleep?
The tool merges overlapping asleep intervals across all sources before summing, so a night logged by two devices is never double-counted.
What counts as one night?
Sleep is grouped into a noon-to-noon window. Any asleep interval starting between noon on one day and noon the next is attributed to that night, which keeps post-midnight bedtimes on the correct night.
Is my health data uploaded anywhere?
No. The report is generated locally using streaming file parsing. Your export.xml never leaves your device, and there is no account or server.
Why is my score different from Apple's or my watch's?
This tool uses its own transparent formulas and looks at long-term patterns like consistency and social jetlag, not a single night. It is an at-a-glance report card of your habits, not a medical measurement.
More free tools
Want deeper analysis?
This report card is a snapshot. For private, AI-powered insights across sleep, HRV, heart rate, and workouts — day after day — grab the companion apps.