Sleep & CPAP dashboard v3

Greg Pearson · Jun 15 – Aug 16, 2026 ·
Read me first. This is a data view of your own logs — Apple Watch sleep stages and OSCAR-parsed CPAP data — not medical advice. Reference ranges below are from public guidance (AASM, ResMed, National Sleep Foundation) for orientation only; changes to therapy should go through your provider.
New in v3: Flow Limit is now populated with your real per-night data (55 nights) — KPI tiles, a per-night bracket strip, a time series with reference bands, and the mechanism story. Headline finding: FL 95th-pct correlates with RERAs at r ≈ +0.39 — the strongest single correlation in your dataset, confirming that flow-limited breathing is the upstream cause of your residual arousals.

What the data is telling you, in one paragraph

A short read of the two months of nightly telemetry.

Your CPAP is doing its job — clinically. Median AHI is 1.7 events/hr and 95th-percentile is under 4, which is well inside the "well-controlled" band (<5). Mask leak sits near zero (95th percentile median 1.2 L/min, ceiling under 11 L/min — the "excessive" line is 24 L/min). Pressure runs a stable 7–10 cmH₂O — normal auto-titration territory. The residual respiratory events you still have show essentially zero correlation with how well you slept that night, which is what you'd expect once therapy is dialed in.

What is driving your "still tired" feeling shows up in the numbers on two fronts. Duration: you average 6.2 hours of sleep with a median bedtime of 11:14 PM. Only about 1 in 20 nights hits ≥7 hours, and bedtime is the single biggest correlate of total sleep time in this window (r = −0.29). Sleep efficiency (time asleep / time in bed) is excellent at 95.7% — meaning the ceiling isn't quality of sleep in bed, it's time budgeted for sleep. Architecture: now that the Flow Limit data is in, we can see that ~64% of your nights sit in the "watch" band for 95th-percentile Flow Limit (0.10–0.20), and those same nights are the ones with more RERAs (r = +0.39, the strongest correlation in your dataset). That's the "silent tax" story: AHI is fine, but the roughly 1-in-20 flow-limited breaths per night are still triggering micro-arousals that keep you out of deep sleep.

Median AHI
events/hr
Ref < 5 = "well-controlled"
Well controlled
Leak (95th pct, median)
L/min
Ref < 24 (ResMed excessive line)
Excellent seal
Pressure (95th, median)
cmH₂O
Auto-titrated within range
Stable
Nights of CPAP use
nights
Median therapy hours per night
Highly compliant
Average sleep time
hr
Ref 7–9 hr (NSF, adults)
Below target
Sleep efficiency
%
Ref ≥ 85% = good
Excellent
Deep sleep (median)
%
Ref ~13–23%
In range
REM sleep (median)
%
Ref ~20–25%
In range

How your numbers sit against the reference ranges

Bars show green = target, amber = watch, red = concern. Diamond marks where you sit — thick tick is your median, thin caps are 10th / 90th percentile nights.
Bands are general educational references (AASM/ResMed/NSF) — not personalized targets from a clinician.

CPAP telemetry over time

Nightly values with a 7-day moving average. Threshold lines mark the "well-controlled" cutoffs.
Nightly AHI 7-day avg AHI = 5
Leak 95th (L/min) 7-day avg Excessive = 24
95th pressure Avg pressure
Obstructive apnea Hypopnea Central RERA

What those event types actually are (plain-English glossary)

Every "AHI = 1.7" hides five different things the machine is counting. Here's what each one means, what usually causes it, and where a "normal on CPAP" range typically sits.
Obstructive Apnea (OA)
Your median per night: · Normal on CPAP: mostly < 10
Your throat physically closes off for ≥10 seconds. This is what CPAP was built to prevent — the pressurized air acts as an internal splint. If OA count creeps up, it usually means pressure is undersetting the collapse, position (back-sleeping), congestion, or weight change.
Hypopnea (H)
Your median per night: · Normal on CPAP: mostly < 5–10
A partial airway collapse — airflow drops ≥30% for ≥10 seconds, often with an O₂ dip or arousal. Softer cousin of OA, same causes. Machines count these separately because they respond to slightly different pressure adjustments.
Central Apnea (CA)
Your median per night: · Normal on CPAP: 0–5
Your brain briefly forgets to ask for a breath — no effort at all, no obstruction. A few per night is normal (especially around sleep-onset transitions). Persistently high CA on CPAP can be a sign of "treatment-emergent central apnea" and warrants a clinician conversation.
RERA
Your median per night: · Normal on CPAP: 0–5
Respiratory Effort Related Arousal — you didn't stop breathing, but airflow got restricted enough that your brain briefly woke you up to fix it. Doesn't move AHI, but adds to RDI (Respiratory Disturbance Index). RERAs are the "silent tax" that can fragment deep sleep without triggering the AHI alarm.
Unclassified Apnea (UA)
Your median per night: near-zero · Normal on CPAP: essentially 0
The machine detected an apnea but couldn't cleanly tag it as obstructive or central (usually because the flow-limit signal was ambiguous). Yours are essentially always zero, which is a healthy sign.

Flow Limit — your data, now that you've exported it

Flow Limit measures how "squashed" the shape of each breath is (0 = perfect sine wave, 1 = flat-topped, straining). It's the earliest sign of upper-airway resistance — it shows up before a hypopnea or RERA gets counted.
Weighted-avg FL (median night)
Reference: 0.00 – 0.02 = "quiet"
Quiet
95th-percentile FL (median night)
Reference: < 0.10 normal · 0.10–0.20 watch · > 0.20 meaningful
Watch band
Nights with 95th FL in "watch" band
out of nights logged
FL ↔ RERA correlation
Higher FL nights = more arousals — mechanistically consistent
Where each night's 95th-percentile Flow Limit falls
Each block is one night. Colored by which reference bracket the night's 95th-percentile FL sat in.
< 0.10 — normal, occasional squashed breaths 0.10 – 0.20 — watch, machine likely already responding > 0.20 — meaningful residual airway resistance
Flow Limit over time
Nightly 95th-percentile (blue) and weighted average (aqua). Coloured background bands are the reference brackets.
95th-pct FL Weighted-avg FL 0.20 line
How to read your Flow Limit numbers

Your median weighted-average FL is 0.02 — meaning most of your breaths are round and unrestricted. That's the "quiet airway on average" story. But your median 95th-percentile FL is 0.11, which puts % of your nights in the "worth watching" band (0.10–0.20), and one night crossed the 0.20 line. Read together: the tail of your breathing distribution — the roughly 1-in-20 breaths that are flow-limited — is what's driving your RERA count.

The mechanism, in one sentence: Flow Limit is the upstream metric, RERAs are the downstream event. In your data, nights with higher FL 95th-percentile are the same nights with more RERAs (r) — the strongest single correlation in your whole dataset. Which means: the levers listed in the RERA section (side-sleeping, EPR / pressure support, raising the pressure floor, controlling evening alcohol and congestion) all work by lowering FL first, and RERAs follow.

Sleep duration and bedtime — the largest lever in this dataset

Total sleep time (TST) is well below the 7-hour target on most nights. Bedtime is the strongest correlate.
Total sleep (hr) 7-day avg 7-hr target
Bedtime Wake time

Sleep architecture — stages by night

Minutes of deep, REM, and core sleep (per Apple Watch). Awake time in bed shown at top.
Awake Core Deep REM

What actually moves the needle on sleep quality

Pearson correlation (r) between each candidate driver and the outcome, across 58 nights with both CPAP and Watch data. Sign matters: negative bars = "more of this ⇒ less of the outcome". |r| < 0.2 is weak, 0.2–0.4 moderate, >0.4 strong.
Drivers of total sleep time (TST)
Drivers of deep-sleep minutes
Drivers of sleep efficiency
Drivers of REM minutes

Reading the tea leaves

CPAP therapy is well-controlled AHI, leak, and pressure sit inside the healthy bands on nearly every night. Continued therapy is doing the work you'd expect.
Sleep time is the ceiling 6.2 hr average vs. a 7–9 hr recommendation. Only ~5% of nights clear 7 hr. This alone is enough to explain daytime tiredness.
Efficiency is fine when you're in bed 95.7% efficiency and low wake time say the mask + pressure aren't fragmenting your sleep. The problem is bed duration, not bed quality.

A closer look at your RERAs

You're averaging RERAs per night (max ). Well within a normal range — but they're worth understanding because they don't show up in AHI.
What a RERA actually is
Airflow narrows enough that your breathing muscles have to work harder for ≥ 10 seconds, and your brain briefly wakes you up to open the airway. It's not counted as an apnea (you never fully stopped breathing) and it's not a hypopnea (airflow didn't drop far enough). That's the whole reason clinicians report RDI = AHI + RERAs — RERAs are the events AHI misses.
Why they matter for deep sleep
Every arousal — even ones so brief you don't remember them — bumps you toward lighter stages. Deep (N3) sleep is fragile: a handful of arousals per hour is enough to keep the brain from staying long enough to consolidate a deep-sleep bout. This is why people can have "clinically great" AHI but still wake feeling unrefreshed — the RERAs (and their upstream cousin, flow limitation) are quietly nibbling at architecture.
Levers that typically reduce them
  • Side-sleeping — most RERAs happen supine; a positional trainer or wedge pillow often halves them.
  • EPR / pressure support — a small increase in exhale relief widens the airway on the "vulnerable" phase of the breath.
  • Raising the pressure floor — auto-CPAP that's allowed to drop to 4 often finds itself chasing flow limits back up; a floor of ~7–8 is common.
  • Congestion control — allergies, alcohol, and evening dairy raise upper-airway resistance measurably.
  • Late-evening alcohol — even one drink relaxes airway muscles for hours and reliably raises RERA counts.

In your data, RERAs correlate weakly and negatively with deep-sleep minutes (r ≈ −0.19) — small effect, but in the direction the theory predicts. More striking: RERAs correlate strongly with Flow Limit 95th-percentile (r ≈ +0.39) — the strongest single correlation in your whole dataset. That's the mechanism confirmed in your own numbers: flow-limited breathing → arousals. See the Flow Limit section above for what to do with that.

Places to look that this data suggests

Framed as experiments to run, not prescriptions — each one you can prove or disprove with more of the same data.
1
Test the "earlier bedtime" hypothesis explicitly
Bedtime → TST is the strongest correlation in your data (r = −0.29). Your 90th-percentile bedtime is 00:06. Force a two-week block of "in bed, lights out, phone across the room by 22:15" and measure the delta in TST and next-day rating. Even if your body naturally wakes at 6:00, you'd gain a full hour of sleep opportunity.
2
Log a subjective 1–10 "feel" score every morning
The data can't tell you which nights felt best — so it can't rank drivers by that feeling. Add a one-tap morning score for 30 days and this same analysis becomes far more powerful: it will show whether feeling refreshed tracks with TST, deep sleep, REM, bedtime, or something outside CPAP (alcohol, meals, workouts).
3
Watch the deep-sleep vs. average-pressure relationship
Nights with higher average pressure show slightly less deep sleep (r ≈ −0.21). The effect is small and the ranges are still normal, but if a clinician has room to tighten your auto pressure range (e.g., lower the max a touch, or use EPR), it's the one setting-side lever the data hints at. Don't self-adjust — bring the chart and let them decide.
4
Add the things CPAP can't see
Alcohol timing, last meal, caffeine cutoff, exercise time-of-day, room temperature, evening screen brightness — all are known to affect deep sleep and REM independently of CPAP. Log two or three of these for 30 days and you'll have new columns for this same driver chart to rank.
5
Don't over-index on residual AHI events
Your residual events show essentially no correlation with sleep quality in this window (|r| < 0.05 for TST, efficiency, deep, and REM). Squeezing AHI from 1.7 → 1.0 is unlikely to move how you feel. The signal to chase is length and consistency, not "even lower AHI".