Garmin, Oura, Whoop in Apple Health — 4 Sync Gaps to Fix
Garmin, Oura, and Whoop each push partial data to Apple Health — here's how to fix duplicate HRV, missing sleep, and inflated steps corrupting your dashboard.
Running three wearables without fixing the sync is like keeping three calendars and never merging them. I've been testing this exact setup — Oura Ring 4, Garmin Forerunner 265, and Whoop 4.0 — through May 2026, and the default configuration produces corrupted HRV trends, inflated step counts, and a Whoop black hole where sleep data simply vanishes. Apple Health supports over 150 data categories via HealthKit, but "supports" and "receives clean data" are not the same thing. This guide closes that gap: exact settings paths, what each device actually exports, and how to build one honest dashboard without paying three subscription fees for the privilege.
Why Apple Health Is the Right Hub — If You Configure It Right
Apple Health is not glamorous. The interface is essentially unchanged since iOS 16. It doesn't generate the readiness narratives or recovery scores that Whoop and Oura serve up each morning. But it has something none of those apps have: a universal read API that every serious third-party fitness, sleep, habit, and health app on iOS can access without you doing anything extra.
That universality matters more as your wearable stack grows. One app can read HRV, sleep stages, steps, workouts, weight, and heart rate from a single standardized source rather than integrating with each device manufacturer separately.
The problem is passive accumulation. Every time you grant a new app Health permissions, it starts writing to categories another app already owns. Steps from your iPhone, steps from Garmin, steps from Oura — three competing sources writing to the same field, with no automatic conflict resolution.
Apple does have a data-source priority system, but it's buried under Settings → Privacy & Security → Health → [Data Category] → Data Sources & Access and nobody configures it during initial setup. There's also a hard wall around proprietary composite scores. Whoop Recovery, Oura Readiness, Garmin Body Battery — these are algorithmic products each company guards carefully. They don't map to any Apple Health category. Knowing exactly where that wall sits, per device, is half the configuration work here.
Oura Ring → Apple Health: What Transfers and What Stays Siloed
Oura has the cleanest Apple Health integration of the three devices tested. Once connected, the Oura app (version 3.x on iOS 18.4) syncs these categories by default:
- Sleep stages: REM, Deep, Light, and individual Awake periods throughout the night
- Resting heart rate (overnight average)
- HRV (RMSSD, overnight average measured during sleep)
- Steps and active energy burned
- Respiratory rate during sleep
- SpO2 / blood oxygen saturation (nightly monitoring on Ring 4)
What stays inside Oura's ecosystem and does not write to Apple Health: Readiness Score, Sleep Score, body temperature deviation — a flagship Oura differentiator — cycle tracking insights, and the Cardiovascular Age metric introduced with the Ring 4 in October 2024. These are computed outputs built on top of raw sensor data. Apple Health has no standardized category to receive a "readiness score" regardless of the source.
For HRV specifically, Oura's data is worth trusting as your primary source. Independent validation research published in Frontiers in Physiology found Oura Gen 3's overnight RMSSD measurements within acceptable deviation of ECG reference values during sleep — which is exactly the context in which Apple Health receives the data anyway. The Ring 4 improved sensor hardware further. Daytime spot HRV measurements are a different story, but overnight autonomic recovery tracking is where Oura earns its position.
Configuring Oura Sync Step by Step
- Open the Oura app → tap your profile photo (top left corner)
- Navigate to App Settings → Connected Apps → Apple Health
- Toggle Health Sync on
- Tap Manage Permissions — work through the per-category toggles carefully
- Disable Steps if you also wear Garmin or use your iPhone for step counting
- Keep Sleep Analysis, Heart Rate, Heart Rate Variability, and Respiratory Rate enabled
Garmin Connect → Apple Health: Steps, VO2 Max, and the HRV Gap
Garmin is strong on activity data and frustratingly limited on overnight health metrics. From Garmin Connect (tested version 4.x, May 2026), these categories sync reliably to Apple Health:
- Steps and daily distance traveled
- Active energy and calorie estimates
- Workouts — GPS activities arrive as full workout sessions with route and heart rate data intact
- Resting heart rate
- VO2 Max estimate
- Basic sleep duration (total sleep time; detailed staging depends on the Garmin device model)
What doesn't transfer: HRV Status — Garmin's overnight HRV trend feature, rolled out via firmware updates to Forerunner and Fenix lines from late 2022 through mid-2023 — Body Battery, Training Status, Stress Score, and Training Readiness. None of these write to Apple Health. If you look at the connected app permissions screen and see Garmin is connected, it's easy to assume the health metrics are flowing. They're not. The data that makes Garmin genuinely useful for recovery monitoring stays inside Garmin Connect's own ecosystem.
This is the specific gap that frustrates multi-device users most. You've got a Forerunner 265 or Fenix 7 collecting overnight HRV data and building a five-week baseline trend — and none of it reaches Apple Health. There's currently no official workaround through Garmin's own tools.
Configuring Garmin → Apple Health
- Open Garmin Connect → tap the ≡ menu (bottom right) → Settings
- Select Connected Apps → Apple Health and enable the categories you want
- Open iPhone Settings → Privacy & Security → Health → Garmin Connect
- In the write-permissions list, toggle off Steps unless Garmin is your only wearable
- Leave Workouts, Active Energy, and VO2 Max enabled
One counter-intuitive finding from extended testing: for users who don't wear their Garmin 24 hours a day, the iPhone's native step count is often more accurate as a daily aggregate. Your phone is physically with you more consistently than a sports watch, and the motion coprocessors in iPhone 15 and 16 series are precise enough for step targets. The wearable adds real value for tracked workouts — which Apple Health receives as individual workout sessions regardless. Passive step accumulation is a weaker argument for device priority than most guides acknowledge.
Whoop: The Most Limited Apple Health Exporter of the Three
This needs to be said directly. Whoop is the weakest Apple Health integrator in this lineup, and at $239/year (as of June 2026), that gap matters more than it would from a free app.
As of Whoop app version 5.x on iOS 18.4, here's what actually syncs to Apple Health:
- Workouts (Strain activities logged in Whoop appear as workout sessions)
- Heart rate during tracked strain activities
- Active energy estimated during those sessions
That's the complete list. Whoop does not write sleep data to Apple Health — no sleep stages, no total sleep duration. No HRV. No resting heart rate. Recovery score, respiratory rate during sleep, skin temperature, and blood oxygen stay entirely within Whoop's platform. This is a deliberate product decision, not a technical gap. Whoop's subscription retention depends on users opening the Whoop app every morning for their recovery score — syncing sleep and HRV to Apple Health, where Athlytic or any other app could surface the same data, undermines that.
The Electronic Frontier Foundation has documented wearable health data portability concerns in detail. Whoop is a textbook case of the tension between what users generate and what they can actually access outside the vendor's ecosystem.
The CSV Export Workaround
Whoop does allow manual data export — it just doesn't automate it:
- Open Whoop app → tap Account (bottom right profile icon)
- Navigate to Data Export → select your date range → Export
- You receive separate CSV files for heart rate, sleep (including RMSSD and sleep stages), strain/workout sessions, and recovery scores
The problem: there's no native path to import this CSV into Apple Health. You'd need a manual XML import tool, a custom Shortcuts automation built around HealthKit writes, or a third-party bridge service — none of which update automatically, and none of which are beginner-friendly. If you depend on Apple Health as your aggregation layer and need Whoop's overnight HRV alongside Garmin workout data, the practical path is to designate Oura as your sleep and HRV source for Apple Health and use Whoop primarily for its coaching overlay and strain guidance rather than expecting it to contribute raw sensor data downstream.
If Whoop's data portability is a dealbreaker, there's a full breakdown of alternatives in 3 free apps that replace WHOOP's $239/yr plan — some of those options offer genuine Apple Health write access that Whoop withholds.
Fixing Duplicate HRV, Sleep, and Steps
Once all three apps have Apple Health permissions, the database contains overlapping data from multiple sources writing to the same categories. Most users don't notice because the native Health app surfaces only the priority-source value in the summary view. The silent damage happens in third-party apps, which often read all sources or compute an average across them — producing HRV readings that are statistical noise from combining incompatible measurement methodologies.
The HRV overlap is the worst of these. Apple Watch measures HRV during Breathe or Mindfulness sessions: short, voluntary, awake-state spot measurements that capture sympathetic arousal context very differently from overnight RMSSD. Oura and Garmin (if it synced HRV, which it doesn't) measure RMSSD across sleep stages. These are not the same metric. If Apple Watch and Oura are both writing to Heart Rate Variability in Apple Health, any app reading both values and averaging them is generating a number that means nothing physiologically.
Sleep conflicts are subtler. iPhone itself writes a basic "In Bed" estimate derived from motion and usage patterns. Oura writes detailed staging. If iPhone's estimate sits at priority position 1, every third-party app reading Apple Health sleep data gets the phone's motion-derived window instead of Oura's sensor-based staging. This silently affects Athlytic recovery scores, Gentler Streak suggestions, and any habit tracker that reads sleep from Health.
Steps are the most visible. Pick one source. Disable the others.
Priority Configuration Cheat Sheet
| Data Category | Recommended Primary Source | Rationale |
|---|---|---|
| Sleep Analysis | Oura | Most granular staging; consistent nightly measurement during sleep |
| Heart Rate Variability | Oura | Overnight RMSSD; Garmin doesn't sync HRV; Watch measures awake context |
| Steps | Garmin OR iPhone — pick one | Phone wins if Garmin not worn daily; consistency beats precision here |
| Active Energy | Garmin (or Apple Watch) | GPS and sensor accuracy for tracked activities |
| Resting Heart Rate | Oura | More overnight data points than Garmin's periodic measurements |
| Workouts | Garmin | Full GPS, power meter, cadence metadata preserved in workout sessions |
| Respiratory Rate | Oura | Sleep-context measurement; Garmin captures waking breathing rate |
| Blood Oxygen (SpO2) | Oura Ring 4 | Continuous nightly monitoring vs Garmin's on-demand spot reading |
The specific complication when Apple Watch is also in the mix — three devices writing HRV with three different methodologies — has a dedicated walkthrough in 3 Wearables, 1 Apple Health View — Fix the HRV Duplicates, which covers the edge cases this guide doesn't have room for.
Building a Unified View: Apps That Actually Surface Apple Health Data
Clean data flowing into Apple Health still needs a better interface than the native app's browse-by-category structure. Apple Health is a database. It is not a dashboard. For an at-a-glance recovery and readiness view, you need something that reads from it.
Athlytic (free tier + $29.99/year premium) is the most practical option for this specific device combination. It generates a Whoop-style recovery score and readiness gauge built from whatever Apple Health contains — HRV, resting heart rate, sleep duration and quality, recent training load. With Oura's overnight RMSSD properly piped into Health and Garmin's workouts syncing cleanly, Athlytic surfaces a daily recovery picture that's functionally similar to what Whoop provides — without the $239/year subscription wall. In my testing, this is the single biggest value move in the entire setup.
Health Auto Export (free + $4.99/month Pro) takes everything Apple Health has and routes it to Google Sheets, Airtable, or InfluxDB on a configurable schedule via a Background App Refresh trigger. Not real-time, but reliable for daily summaries. Useful for longitudinal analysis: correlating HRV baseline shifts with training blocks over months, tracking sleep debt against recovery scores, building Notion dashboards that aggregate across the entire stack. The free tier covers manual exports; Pro enables automatic scheduled pushes.
Gentler Streak ($29.99/year) reads activity and sleep from Apple Health and nudges you toward sustainable training consistency rather than daily effort maximization. Less analytical than Athlytic, more behavioral. It pairs naturally with habit tracking apps — if you're building Apple Health into a habit system alongside sleep and HRV data, the 5 iPhone Habit Trackers Ranked — Only 2 Sync Oura and Whoop breakdown covers which apps have genuine Apple Health read access versus superficial connections.
Exist.io (~$8/month) bypasses Apple Health entirely and pulls directly from Oura, Garmin, and Withings APIs, then correlates health metrics with mood and productivity logs. The advantage: your Apple Health sync quality doesn't matter. The tradeoff: another third-party service with direct access to your raw health data from all sources simultaneously.
For most users, Athlytic plus properly prioritized Apple Health data replaces the daily function of all three separate apps at a fraction of the cost.
Quick Checklist: 10 Steps to a Clean Apple Health Dashboard
- Update all three apps on iOS 18.4 before starting: Oura 3.x+, Garmin Connect 4.x+, Whoop 5.x+
- Oura app → Profile → App Settings → Connected Apps → Apple Health: enable Sleep Analysis, HRV, Resting HR, Respiratory Rate; disable Steps
- Garmin Connect → Settings → Connected Apps → Apple Health: enable Workouts, Active Energy, VO2 Max; disable Steps if not your sole activity tracker
- iPhone Settings → Privacy & Security → Health → Garmin Connect: verify Steps write is off; confirm Workouts write is on
- iPhone Settings → Privacy & Security → Health → Oura: verify Sleep Analysis, HRV, and Heart Rate writes are all enabled
- Apple Health → Browse → Sleep → Data Sources & Access: drag Oura to position 1; move iPhone's estimate below it
- Apple Health → Browse → Heart Rate Variability → Data Sources & Access: drag Oura to position 1; if Apple Watch appears, move it to the bottom or disable its HRV writes via Settings → Privacy & Security → Health → Health app
- Apple Health → Browse → Steps → Data Sources & Access: confirm exactly one source is writing (Garmin or iPhone — not both)
- Whoop app → Account → Data Export: export a CSV covering the past 12 months as a baseline; this preserves your historical HRV and sleep data independent of any future subscription changes
- Install Athlytic → connect to Apple Health → open the Recovery tab and verify that HRV and sleep data appear from Oura; this confirms the full pipeline is working end to end
If you're also tracking habits alongside health data and want apps that genuinely read from Apple Health rather than just claiming to, the 5 iPhone Habit Apps Ranked — Only 2 Stick Past 60 Days review covers exactly which integrations hold up in practice.
Sources & Further Reading
- Apple HealthKit Developer Documentation — Official reference for all 150+ supported data categories, data type specifications, unit definitions, and third-party integration guidelines. Available at Apple Developer.
- Frontiers in Physiology — Wearable Validation Research — Peer-reviewed journal publishing independent accuracy studies on consumer wearable HRV, SpO2, and sleep staging; includes multiple Oura and Garmin validation studies from 2022–2024.
- Garmin Support — Health Snapshot & Apple Health Integration — Official documentation covering which Garmin metrics sync to Apple Health, known limitations by device model, and configuration steps. Available at support.garmin.com.
- Oura Support — Connected Apps Documentation — Official guidance on Apple Health sync categories, per-category permission management, and known data-export limitations. Available at support.ouraring.com.
- Electronic Frontier Foundation — Health Data and Privacy — Analysis of wearable health data portability, app data-sharing practices, and consumer rights around biometric data generated by subscription wearables.