Many serious runners and cyclists use dedicated devices such as Garmin or COROS, together with the maker's cloud. At the same time, a growing number of people collect their training data in a store provided by their smartphone's OS, such as HealthKit on Apple Watch and iPhone, or Health Connect on Android.
In this article, I call the former the dedicated-device camp and the latter the smartphone-OS camp. Both appear to handle the same "records," but their system designs differ: where the records are kept, and who can read them, including the user and the apps they connect. The two camps look connected, yet in places they are not. Garmin does not send detailed in-workout heart rate to Apple Health, and Apple HealthKit has no cloud API. I have decided to call this situation a "hidden cold war." The article is about the structure of system design, but I hope it also helps users choose a device or platform for recording workouts.
Note: Google first stores Fitbit and Pixel Watch records in its own cloud (Section 3), so it actually sits between the two camps. In this article, I treat it as part of the smartphone-OS camp because it owns Health Connect.
1. The landscape: where training data is born, and where it is stored
The left column is the dedicated-device camp. Files recorded by the device go through the smartphone app up to the maker's cloud, and from there to analysis services that combine multiple sources, such as Strava, TrainingPeaks and Intervals.icu. The right column is the smartphone-OS camp. Here, data recorded by wearables and smartphones goes into the OS store inside the phone, and apps the user has authorized read it on the device.
Garmin Connect and Strava advertise that they "work with Apple Health," but only part of the record is actually shared. Below, I look at the strengths and weaknesses of each camp, and how much data each exchanges with the other.
2. The dedicated-device camp: dedicated devices and the maker's cloud
2-1. Strengths of the dedicated-device camp
(1) Battery. It is common for dedicated devices to last several days with GPS and heart rate running. In my own test, an Apple Watch Series 12 still had 74% battery left after half a day that included about two hours of cycling and a 30-minute run (a Series 9 worn on the other wrist the same day had 50%, though its maximum capacity was 87%). That is within range of finishing a marathon (BGR finished one with a Series 10) [1], but it is far from the "charge once a week" of dedicated devices.
(2) Sensors and metrics. Connecting chest straps and power meters is standard, and makers provide derived metrics such as VO2max, recovery time, training load and HRV status. These are built on years of work and are a step ahead of the smartphone-OS camp.
(3) An ecosystem of integrations. Records flow from the maker's cloud to Strava, TrainingPeaks and Intervals.icu, where they can be shared with coaches and friends. They can be viewed on the web and on other devices. Since October 2026, Garmin has also let users download their own FIT files for free (limitations are covered in 2-2).
(4) AI integration. Because the records are on a server, cloud AI such as Claude or ChatGPT can read them directly through MCP (a way for AI to read data from external services) and similar mechanisms. COROS goes as far as writing AI-built training plans into the COROS calendar, and Strava is integrated with Claude and Gemini (5-2) [19–22].
2-2. Weaknesses of the dedicated-device camp
The dedicated-device design assumes that records are kept on the maker's servers. That makes it easy to connect to AI and other services, but it also brings the following four constraints.
(1) Derived metrics stay with the maker
In October 2026, Garmin reorganized its developer program into three tiers [4, 5].
| Tier | For whom | How data is obtained | Price |
|---|---|---|---|
| Personal | Individuals fetching data from their own account | pull (you fetch it yourself) | Free, no application |
| Starter | Apps with up to 1,000 users | push only (the developer's server receives it) | Free |
| Enterprise | Beyond that | push or ping/pull, with history | $1,000 joining fee (credited toward usage-based fees) |
Individuals can now get their own FIT files for free [4]. However, files passed to third-party apps have Garmin's derived metrics (VO2max, recovery time, performance condition, etc.) removed. Files exported manually still include them [6]. The same change was made once before, in March 2026, and then rolled back [7].
(2) App developers need a server
Garmin's Starter tier is push-only [5]. Suunto states that it "does not provide access for personal use," limiting it to companies and organizations offering services to the public [8]. Wahoo requires a review before moving to production [10], and Polar only returns workouts "recorded after registration" [9]. On Strava, a new app can only handle the developer's own records, and serving more than 10 users requires a review [11].
What they have in common is a design where data goes from the maker's server to the developer's server. In most cases, you have to pass the maker's review before you can start.
(3) Records are sent to servers of multiple companies
Records first go to the maker's servers. Each time you connect a data hub or an AI, they are also sent to another company's servers. How they are handled there depends on that company's terms (5-2). Many people won't mind for training records alone. But once body weight, sleep and detailed health data are included, more people will start to feel uneasy (5-1).
(4) Dependence on the account
As long as records are kept on a server, losing access to the account means losing access to the detailed records. Garmin reportedly has a practice of "deleting accounts unused for more than two years" (Section 6).
2-3. Integration with the smartphone-OS camp
Even when it says "works with Apple Health," only part of the record is shared.
| What is shared with Apple Health | Workouts | In-workout heart rate | GPS track |
|---|---|---|---|
| Garmin Connect | Yes | Max and min only (all-day heart rate is shared) | No [2] |
| Polar Flow | Yes | Average (unclear whether detailed samples are included) [3] | — |
| Strava app | Yes | No (author's test, Aug 2026) | — |
| Bike computer app (iGPSPORT) | Yes | Average only (author's test, Aug 2026) | — |
| Garmin Connect (when using only an Edge bike computer) | Cannot be connected (Connect does not appear as a source in the Health app) [2] | — | — |
Garmin's support article lists both "Heart Rate" and "Workouts" among the shared data, and then states clearly that "for recorded activities, only the maximum and minimum values are sent" and that "GPS tracks are not written" [2]. In the Health app it looks as if "the workout is there," but when you open it, only the heart rate chart shows "Chart Unavailable" [2]. Since the Garmin Connect app does show the heart rate chart, you only notice the difference when you open the Health app. Also, when you turn the integration on, the Health app imports at most two weeks of past records [2]. If you start the integration later, older records are not brought in.
This is not a technical limitation. HealthKit allows third-party apps to write detailed heart rate samples. In fact, the Google Health app writes Fitbit's in-workout heart rate into the Health app as a full time series (Section 3, author's test). It is a choice the maker has made not to share it.
3. The smartphone-OS camp: Apple HealthKit and Android Health Connect
In August 2026, Google Health added two-way sync with Apple HealthKit on iOS [29]. Previously, Google Health only read data from HealthKit; now it can write Fitbit (owned by Google) records into HealthKit. Workouts are shared together with the in-workout heart rate time series. The same is true in the other direction: Apple Watch in-workout heart rate is read into Google Health as a time series (both from the author's tests, Nov 2026). This is in sharp contrast to Garmin Connect, which shares only the max and min of in-workout heart rate (2-3).
It is an important shift that Apple and Google, the biggest rivals in the smartphone market, chose to deepen the compatibility of training and health data. While the dedicated-device camp keeps its design of "records live in our own cloud," the smartphone-OS camp is moving toward "data can be stored on either platform, and users choose where."
That said, Google takes both positions even within the smartphone-OS camp. Android's Health Connect is an on-device store with no cloud API. On the other hand, Fitbit and Pixel Watch records are first stored in the cloud of Google Health (renamed from the Fitbit app in May 2026). A Google account is required, and there is no option to avoid storing data in the cloud [32]. When I exported my data with Google's data export, in-workout heart rate was included as samples every few seconds (author's test, Nov 2026). Sharing to Health Connect and elsewhere is an option the user chooses [32]. Cloud records can be read through the Google Health API, the successor to the Fitbit Web API [27]. It is easy to use if you just want to pull your own records, but to run a service with more than 100 users, you need Google's review and an annual security assessment [30]. In this respect, Fitbit and Pixel Watch also have a mechanism close to the dedicated-device camp, gathering records in the maker's cloud just like Garmin. What this article calls the smartphone-OS camp is mainly the on-device stores: Apple HealthKit and Health Connect.
3-1. Strengths of the smartphone-OS camp
(1) Records are kept on the device (Apple). Records from Apple Watch and external sensors go into HealthKit on the iPhone and are kept encrypted on the device. HealthKit has no cloud API [12].
(2) Any app can read them with the user's permission. All an app needs to read the data is the user's permission. No contract with the maker and no developer server are required.
(3) The time series stays intact. In an Apple Watch workout, heart rate is recorded every few seconds, and each sample is stored as is, without being collapsed into an average (HKQuantitySample). Third-party apps can later read the rise and fall of heart rate exactly as recorded.
(4) Some derived metrics are also stored as records. The VO2max estimated by Apple Watch is stored in HealthKit as the vo2Max quantity [13], and sleep stages and HRV go into the same store. Third-party apps can read these too, with the user's permission. However, Readiness, the recovery indicator, is not in the store (3-2).
(5) Records from different makers line up in one timeline. Apple Watch records, Fitbit records (workouts with heart rate arrive via the Google Health app; author's test), and records made directly on the iPhone with an external heart rate monitor all line up in the same store in time order.
(6) They can be re-read years later. Apps developed in the future can read past records, heart rate included (Section 6, the Apple Watch example).
3-2. Weaknesses of the smartphone-OS camp
The following mainly applies to Apple. Fitbit and Pixel Watch records are first stored in Google's cloud, so the situation is different (see the start of Section 3).
(1) Battery (smartwatches). As seen in 2-1 (1), Apple Watch lasts through half a day of exercise but does not match the battery life of dedicated devices. Google's Pixel Watch 4 also lasts around 30–40 hours [33]. On the other hand, Fitbit's band-type tracker (Charge 6) lasts up to a week [34].
(2) Recovery metrics cannot be read by third-party apps. watchOS 27 added "Readiness," a recovery indicator, to Apple Watch Series 12 and Ultra 4 [28]. However, third-party apps can read HRV and exercise intensity from HealthKit, but not Readiness itself [25]. To handle load and recovery in a third-party app, the app has to calculate them on the device.
(3) No viewing on the web or on other devices. Because the records are kept inside the iPhone, there is no screen you can open from a browser. However, with a third-party app such as Health Auto Export (automatic export requires a paid plan), you can automatically send workouts and in-workout heart rate time series to a destination of your choice [14]. It is not the OS sending data out; it is an app the user chose. Once sent, the records also exist outside the device.
(4) Dependence on the iPhone. Apple Watch requires an iPhone. The records are also inside the iPhone, so only apps on that iPhone can work with them.
(5) With iCloud, the data is also on Apple's servers. If you enable iCloud sync for Health, the data is also stored on Apple's servers (end-to-end encrypted between devices). Strictly speaking, it is "not held by app companies," not "nowhere else."
3-3. Integration with the dedicated-device camp
The other direction, from the smartphone-OS camp to the dedicated-device camp, is also limited.
First, live heart rate. For a long time, Apple Watch could not broadcast heart rate to other devices. To show Apple Watch heart rate on a Garmin bike computer, you needed a third-party app relaying through the iPhone. Since watchOS 26, there are also third-party apps (such as HeartBLE) that broadcast directly from the Apple Watch over Bluetooth [15].
Meanwhile, workouts recorded on Apple Watch are not shared to makers' clouds such as Garmin Connect. Garmin's support article states clearly that it "does not pull data from Apple Watch or Apple Health" [2]. Apple has no cloud API either, so there is simply no path for a maker's cloud to fetch HealthKit records.
Taken together with 2-3 (integration with the smartphone-OS camp), both camps share only part of their records with the other. Each keeps the full record on its own side.
4. Switching devices and migrating training records
The difference shows most clearly when you switch to a device from the other camp and try to take your past records with you.
| Dedicated-device camp (Garmin as an example) | Smartphone-OS camp (Apple as an example) | |
|---|---|---|
| How users export | One at a time as FIT / TCX / GPX. For the whole account, you request it and download from a link sent by email [16] | "Export All Health Data" in the Health app. A full XML set [16] |
| What you can take | Files of recorded activities (FIT, etc.) | The full set of records stored in HealthKit [16] |
| What you can't take | Derived metrics such as recovery and sleep scores. They don't carry over to other services [16] | Nothing in particular. However, it is not in a form other apps can read directly; you need a service to convert and import it [16] |
The same difference seen in 2-2 (weaknesses of the dedicated-device camp) appears here too. In the dedicated-device camp, derived metrics are removed from files passed to third-party apps (2-2) and do not carry over to other services. The smartphone-OS camp stores many Apple-calculated metrics, such as VO2max, as HealthKit records, so they are treated the same as other records. This is because the stores are designed differently.
Google is different again. Google's data export included not only measurements such as heart rate but also Google-calculated metrics such as Readiness (recovery) and Cardio Load (author's test, Nov 2026).
In the smartphone-OS camp, users are increasingly able to choose how far back apps can read. On Android's Health Connect, a connected app can initially read the past 30 days plus new data from then on. Older records can be read if the app requests a separate permission and the user grants it [26]. The HealthKit permission screen in iOS 27 also added an option to choose between all time and "the past 30 days" (author's test, Oct 2026).
5. Three factors that are shifting the landscape
5-1. Privacy
The exercise records currently in smartphone OS stores are mostly distance, pace and heart rate. Many people publish their records on Strava to share with friends, and few would want to hide their training records themselves.
But HealthKit holds more than training records. Body weight and body fat percentage, sleep, medications, ECG and mood logs already go into the same store [17]. Body weight alone is not a number you want to show others the way you show distance run.
Exercise records reveal more when combined with these body and health records. Does heart rate fail to rise in weeks with short sleep? Is training volume keeping up with changes in body weight? Has in-workout heart rate changed since starting a medication? In HealthKit, these sit side by side in the same store, so an app running on the device can combine and analyze them as is, without sending anything out. Doing the same thing in the cloud means sending even weight and medication records to the servers of the maker or app company. Even people who are happy to share training records would not want to send that much.
Another approach is to pull only the exercise records from the cloud via MCP and combine them with health records you have locally. But if you leave the combining to a cloud AI such as Claude or ChatGPT, the health records are also sent to that company's servers. Health records stay inside only if the combining itself also happens on the device. The wider the range of records being combined, the more a design that keeps records on the device has the advantage.
Even when the store is on the device, though, wearable records may pass outside the device before reaching it. Android's Health Connect is an on-device store, but Fitbit and Pixel Watch records are first stored in Google's cloud and are shared to Health Connect only if the user chooses (Section 3). As far as I have checked, the only combination where records never leave the devices on their way from the wearable to the store is Apple Watch and iPhone. I have not investigated how other makers' Android wearables store their data. Note, however, that if you allow an app with its own cloud, such as Google Health, to read your Health data, Apple Watch records are sent to that cloud in full detail (author's test). You can check which apps have access, app by app, in the iPhone Health app under Profile → Apps.
This difference shows up even before you install an app. An app's App Store page shows whether it collects health data. A design that does not send records to a server can declare "Data Not Collected," but apps in the dedicated-device camp, which store records in the cloud, cannot make that declaration [18].
5-2. Connecting to AI
In May 2026, COROS released an official MCP server that lets Claude and ChatGPT read users' workouts, sleep, HRV and recovery status [19, 20]. In June it added access to .fit files including GPS and per-second data, and in September the ability for AI to write training plans into the COROS training calendar [19]. These are uses that did not exist before. However, COROS states that the records read are passed to the AI side, and their handling follows the policy of the AI being used [19].
Strava, a data hub, also released an MCP connector for Claude in June 2026, allowing per-second heart rate, pace, GPS and power to be read [21]. In October it also integrated with Gemini (starting with paid subscribers in the US) [22]. Both are read-only and can be disconnected at any time. However, Strava's announcements do not address how the data is handled once it has been passed on.
In May 2026, Google added a Gemini-powered coaching feature (Google Health Coach, paid plan) inside the Google Health app [31]. Rather than passing records to an external AI via MCP, the AI reads the records inside Google's own app. The published descriptions do not say whether processing happens on the device or in the cloud.
Apple provides a way to use AI without sending records out. iOS 26 introduced the Foundation Models framework, which lets third-party apps call the on-device Apple Intelligence model [23]. Starting with iOS 27, apps with Apple's permission (an entitlement) can also use the model on Apple's servers (Private Cloud Compute) [23]. In that case, the content being processed is sent to Apple's servers. As long as an app uses the on-device model, it can run inference without taking records out of HealthKit.
Both have advantages. Cloud AI can use large models, so you can hand it detailed analysis and even training plan design. But the records go to the AI company's servers. An on-device model keeps the records inside, but because the model is smaller, what it can do is still limited. Which design suits you depends on what you want AI to do, and which records you are willing to hand over.
5-3. Device evolution
(1) Wrist heart rate accuracy. In October 2026, Lifehacker (in a Japanese translation of a US Lifehacker article) wore an Apple Watch Series 12 and a Garmin Forerunner 570 on each wrist, compared them against a chest strap, and gave the Apple Watch "the same top rating as Garmin." The comparison covered running, rowing and strength training; cycling was not tested [24].
(2) Battery. As shown by my test in 2-1 (1), Apple Watch is now within range of lasting half a day of exercise and a full day of wear.
(3) Direct connection to external sensors. Since iOS 26, the iPhone Fitness app connects to Bluetooth heart rate monitors directly at the OS level, so you can record workouts with heart rate into HealthKit without an Apple Watch (author's test, Oct 2026). A cyclist who prefers a chest strap can now show heart rate on a bike computer while also keeping the same sensor's heart rate on the iPhone, using only standard OS features.
The gaps are narrowing, not closed. Still, the reasons the dedicated-device camp has been chosen (battery, accuracy and sensor connectivity) are fading, and that cannot be ignored when thinking about the landscape.
6. A personal experience: what remains when you lose access to your cloud account
I created a Garmin Connect account in 2016 and used a Garmin watch until around 2017. In October 2026, I tried to log in for the first time in years. The temporary password email never arrived, and my saved password did not work either. Garmin reportedly has a practice of "deleting accounts unused for more than two years." I found no sign of a warning email, but I have not been able to confirm whether the account still exists or has been deleted.
What remained in the iPhone Health app at that point was only workout summaries (duration, distance, etc.) with "Connect" as the data source. The in-workout heart rate time series was not there. This is exactly how Garmin Connect is designed: only the max and min of in-workout heart rate are shared with Apple Health [2].
Once you lose access to the cloud side, you can no longer get the detailed records out. That is what it means to keep records in the maker's cloud. Since October 2026, the Personal tier of the API lets users pull their own FIT files, but that too assumes you can log in to the account. Garmin has not yet said whether derived metrics are included [6].
In contrast, Apple Watch records kept on the same iPhone since 2021 could be read, heart rate time series and all, by an app that did not exist back then, and regrouped into time-in-zone using my current thresholds.
7. Structural comparison
| Dedicated-device camp (dedicated devices, maker's cloud, data hubs) | Smartphone-OS camp (mainly Apple) | |
|---|---|---|
| Where records are kept | Servers of the maker and data hubs | Inside the phone (also on Apple's servers if iCloud sync is on) |
| For other apps to read them | Review and contract with the maker or data hub, plus the developer's server (Garmin Starter is push-only) | Only the user's permission. On-device SDK |
| Records shared with the other camp | Summaries, plus max and min in-workout heart rate (Garmin) or none (Strava). No GPS | No automatic sync. Third-party apps read on the device |
| How users export (Garmin as an example) | One at a time as FIT / TCX / GPX. Full export on request | Bulk XML export |
| What you can take when switching (Garmin as an example) | Activity files. Derived metrics don't carry over | Records stored in HealthKit. But reading them in other apps requires a conversion and import step |
| Derived metrics (VO2max, recovery, load; Garmin as an example) | Provided by the maker. Removed from files passed to third-party apps | VO2max, HRV and exercise intensity are OS records. Readiness (recovery) is shown only in Apple's own screens; third-party apps cannot read it |
| Battery | Several days | Apple Watch lasts half a day to a full day of exercise (author's test). Fitbit's band-type tracker lasts up to a week |
| Viewing on the web / other devices | Yes | Not by default (possible if a third-party app sends data out) |
| When the account lapses | Records can no longer be retrieved | They remain on the device and in backups |
| Connecting to AI | Advanced analysis with cloud AI. Records go to AI companies' servers (COROS MCP, Strava's Claude and Gemini integrations) | With an on-device model (Foundation Models), records don't leave. What it can do is still limited |
| App Privacy label | "Collects data" | "Data Not Collected" if there is no server |
Closing thoughts
Among serious runners and cyclists, the dedicated-device camp is well established and a step ahead in battery, sensors and the richness of its metrics. The smartphone-OS camp is the challenger and currently has many constraints. However, three factors — privacy, the spread of AI connections, and device evolution — are changing this landscape.
Which one to choose depends on what you need. If you want to track metrics in detail toward a race, share records with a coach, or connect to cloud AI, the dedicated-device camp will be easier to use. If you want to keep your records together on your own device, or try various fitness apps on those records, the smartphone-OS camp's design suits you better. Note, however, that as far as I have checked, the only combination where records stay entirely on the devices, wearable included, is Apple Watch and iPhone (5-1).
Whichever you choose, it is worth knowing that "it works with X" means only a small part of the record is actually shared. And that this is not a technical limitation but a choice each camp has made. Look at what you can and cannot take with you when switching, and the difference is right there. As of November 2026, this landscape has not changed.
Information as of November 2026. Specifications in this article are based on each company's official documentation, which may change without notice. If anything here is out of date, treat the sources as authoritative.
Sources
- BGR: I Ran A Marathon With The Apple Watch Series 10
- Garmin Support: Sharing Your Garmin Connect Data With Apple Health
- Polar Support: Connecting Polar Flow with Apple Health
- DC Rainmaker: Garmin Connect API Revamps
- Garmin Developer Portal: Garmin Connect Developer Program – Overview
- the5krunner: Garmin personal API gives athletes their own data back
- Runalyze: Garmin API FIT File Issue – Missing VO₂max, Recovery Time and Other Metrics
- Suunto: API Zone
- Polar: AccessLink API v3
- Wahoo: Cloud API Documentation
- Strava Developers: Rate Limits
- The Momentum: Why Health Apps Need Native Access to Wearable Data
- Apple: HKQuantityTypeIdentifier.vo2Max (since iOS 11)
- App Store: Health Auto Export - JSON+CSV
- App Store: HeartBLE: Heart Rate Bluetooth (watchOS 26 or later; broadcasts directly from the watch)
- TechRadar: Switching a fitness tracker doesn't have to mean losing workout data — here's how to transfer health data between Apple, Garmin, Google Fitbit and Strava (2026-10-25)
- Apple Developer: HealthKit – Data types (body weight, body fat percentage, sleep, ECG) / Apple: Health (medications, mood)
- Apple Developer: App privacy details on the App Store
- COROS: COROS Official MCP
- the5krunner: New COROS MCP: what you now hand over to AI
- Strava Press: Strava Launches MCP Connector, Allowing Athletes to Sync Training History to Claude (2026-06-01)
- Strava Press: Strava Now Integrated As A Connected App in Google Gemini (2026-10-28)
- Apple: Foundation Models framework (since iOS 26.0) / Apple Developer: What's new in the Foundation Models framework - WWDC26 (Private Cloud Compute model)
- Lifehacker Japan: Has the Apple Watch Series 12's heart rate accuracy surpassed Garmin? Tested on both wrists (in Japanese; translation of a US Lifehacker article)
- Apple Developer: HKQuantityTypeIdentifier (there is no type corresponding to Readiness)
- Android Developers: Read raw data – Health Connect (by default, from 30 days before permission was granted; older data requires the
READ_HEALTH_DATA_HISTORYpermission) - Google for Developers: Google Health API – Overview (migration from the Fitbit Web API)
- Apple Support: What's new in watchOS 27 (Readiness on Series 12 and Ultra 4)
- 9to5Mac: Google Health adds two-way Apple Health syncing on iPhone (2026-08-03)
- Google for Developers: Google Health API – App verification (restricted data; unverified apps are limited to 100 users; annual security assessment)
- Google: Google Health (Google Health Coach, built with Gemini; requires Google Health Premium) / TechCrunch: Google's $9.99-per-month AI health coach launches May 19 (2026-05-07)
- Google: FAQs on privacy: Google Health (updated 2026-05-19; Google account required; sharing with other services is optional)
- Google Pixel Watch Help: Battery life (Pixel Watch 4: up to 30 hours for 41mm with always-on display, up to 40 hours for 45mm)
- Google: 6 things I learned after using the Fitbit Charge 6 for a week (up to a week on a full charge)
Author's own tests (August, October and November 2026): heart rate shared to the Health app by the Strava and iGPSPORT apps; the Fitbit (Google Health) integration; the iOS 26 Fitness app with a Bluetooth heart rate monitor; the iOS 27 HealthKit permission screen; Apple Watch Series 12 / 9 battery; the contents of a Google data export (Fitbit records); and Google Health reading Apple Watch heart rate.


