Garmin Keeps Strength Tracking Broken on Purpose: Here’s Why
When Hevy, one of the most popular strength tracking apps, applied to join the Garmin Connect Developer Program, it expected a routine integration process. What it found instead was a structural barrier that has frustrated independent developers for years: Garmin’s API infrastructure was not built to support third-party strength apps, and the pattern of decisions around it suggests that is unlikely to change soon.
Hevy applied for access to the Garmin Connect API, the cloud-side data pipeline that allows external platforms to exchange fitness data with Garmin’s ecosystem. Garmin approved the application but offered only a restricted integration — one that could not push completed workout data — sets, reps, weight — back into Garmin Connect as a recognised strength session. For a strength tracking app, the offer was effectively worthless. Hevy declined and published a notice, live since at least early 2024, explaining why the integration was impossible.
That and other incidents prompted developers to ask a more pointed question: is this a gap Garmin intends to close, or a deliberate constraint? The evidence points strongly toward the latter.

The API Was Not Built for It
The Garmin Connect Developer Program provides three main data feeds. The Health API covers all-day metrics such as heart rate, steps, and sleep. The Activity API delivers recorded workout data across more than 30 activity types. The Women’s Health API handles menstrual and pregnancy tracking. These are primarily read-only pipelines. External platforms can receive data from Garmin Connect but cannot write structured workout data — the granular records of a strength session — back into it.
This is not a recent oversight. Developers have been raising the issue in Garmin’s ConnectIQ developer forums for at least four years. The problem is more fundamental than a missing feature. The FIT protocol — the file format Garmin uses to record all activity data — includes a native Set message type that defines sets, reps, weight, and exercise name as first-class data structures. Garmin’s own native strength app uses those Set messages when it records a workout, and they appear in Garmin Connect as proper strength sessions with full progressive overload data.
But ConnectIQ — the SDK available to third-party developers — has no mechanism to write Set messages into a FIT file at all. The critical function, addSet(), does not exist. It is not that a third-party developer like Hevy could write strength data in a degraded form as developer fields and have it appear as a lesser version of a native session. The data structure does not exist in the tools Garmin provides. A third-party app cannot produce a FIT file that Garmin Connect would recognise as a proper strength session, because the tools to create that file are withheld. That thread on the developer forums is four years old. The function still does not exist.
The Stryd running power meter illustrates exactly how this differs from Garmin’s normal approach to third-party data. Stryd writes running power data to Garmin watches, but it does so via developer fields — custom data that sits alongside native Garmin fields rather than integrating with them. Garmin has its own native running power field, and Stryd cannot write to it. Stryd’s power data therefore cannot feed into Garmin’s native power-based training features. Garmin’s own running power does. That restriction has been in place for years and has never been resolved in Stryd’s favour.
The pattern extends further. As DC Rainmaker documented in his ConnectIQ platform analysis, Training Load and Training Status were not available to third-party ConnectIQ apps — a restriction one developer described in the comments as “inexplicable.” Sleep Scores and Health Snapshot data were only opened to the Health API in 2021, implying they were restricted before that. Access to the Wellness API itself requires a formal business-case application and, in some cases, a licence fee — in stark contrast to platforms like Fitbit that offer open developer portals. Garmin’s own FAQ confirms that access to some metrics requires a licence fee payment or minimum device order quantity for commercial use.
Each restriction maps onto a category where Garmin either has a native product or is building one. That is either a remarkable coincidence or it is not a coincidence at all.

A Market Worth Protecting
The constraints are increasingly difficult to explain as an oversight alone, because the market Garmin is guarding is growing quickly. The global fitness app sector was valued at roughly $13 billion in 2025 and is projected to grow at double-digit rates through the next decade, with strength and exercise tracking among the fastest-growing categories. Gym memberships are rising in the UK and United States. Hybrid fitness formats — combining lifting with cardio — are expanding beyond niche crossover athletes into the mainstream. Hyrox, the indoor hybrid race combining running and functional strength stations, now attracts over 100,000 registered athletes in the UK alone.
The apps that serve this market are, for the most part, poor. Garmin’s own native strength mode is widely criticised. The automatic rep counter regularly miscounts, and correcting it requires navigating button presses mid-set. There is no pre-populated exercise weight from the previous session. When the activity ends, the summary records time and approximate reps but nothing that a serious lifter would call useful data.
Third parties have moved in to fill the gap, but even the best are operating within tight constraints. Roxfit, the purpose-built app for Hyrox athletes, has 50,000 ConnectIQ downloads and genuine Garmin integration — but that integration works by syncing structured workouts to Garmin Connect before training and reading activity data back afterwards. It does not push set-level strength data into Garmin Connect in real time. The experience works well for the station-based format of a Hyrox event, but it relies on the same read-pull architecture that all developers are confined to.
Garmin Building from the Inside
While third-party developers face structural limits at the API, Garmin has been investing steadily in its own strength infrastructure. In March 2025 it launched Garmin Connect+, a paid subscription at $7 per month that introduced Live Activity for indoor workouts. A subscriber who starts a strength session on a compatible watch can view real-time heart rate data, exercise animations, and rep counts on their phone during the workout itself. As DC Rainmaker noted in his Connect+ walkthrough, the feature moves the interaction to the phone screen, which is more practical for gym use than a small watch display between heavy sets.
In February 2026, the Q1 software update added expanded personal records for strength training and brought Garmin Fitness Coach to a wide range of current devices, including the Fenix 8, Forerunner 970, Vivoactive 6, and Venu X1. The coach generates adaptive training plans that include optional strength sessions, draws on Garmin’s own exercise library, and adjusts recommendations based on Body Battery and HRV data.
The trajectory is unmistakable. Garmin is building a vertically integrated strength coaching product: watch sensors, a proprietary exercise library, adaptive planning, live phone-side display, and subscription revenue layered on top. Whether by design or not, the effect is the same: full write access for a competitor like Hevy would place a third-party app directly in front of that product, using Garmin’s own data infrastructure to do so.
There is one gap in Garmin’s current offering that independent analysts have speculated it may be moving to close. The input problem — the difficulty of correcting rep counts and logging weights without interrupting a set — remains unsolved. On this site as the5krunner we argued in a detailed 2025 analysis that voice control is the logical solution: a free-form strength mode where an athlete could verbally name the exercise, correct Garmin’s rep estimate, and add weight between sets. Garmin introduced a microphone and speaker to the Fenix 8 series and already supports basic voice commands. Whether those capabilities will be extended to strength logging has not been confirmed.
The Workaround
One developer has found a path around the problem. Rack Strength, an iOS strength training app, bypasses the Garmin Connect API entirely. Rather than routing data through Garmin’s cloud, the app uses ConnectIQ’s Bluetooth Low Energy capability to communicate directly between a paired Garmin watch and an iPhone. The connection operates in real time and runs in both directions. Sets, reps, weight, heart rate zones, and rest times all transfer between devices during the workout, with no dependence on Garmin’s servers.
“We bypassed the API entirely. The data never touches Garmin’s cloud, so we never needed their permission.” — Rack Strength
Because Rack operates at the device layer rather than the cloud layer, it avoids both the access restrictions of the Connect Developer Program and the recording limitations of the ActivityRecording API. ConnectIQ’s BLE functionality is available to any developer who builds a native watch app; Garmin does not restrict its use for direct data transmission. Community developers have also produced FIT file conversion scripts that allow apps like Hevy to upload historical workout data to Garmin Connect manually, though this falls well short of seamless real-time integration. As Rack Strength documented on their own blog, the BLE approach delivers the full-data experience that working through official channels cannot.
The result is the kind of full-data, real-time integration that Hevy, working through official channels, was unable to obtain.
Let’s see how long Rack Strength will stay on the CIQ store.
What Garmin Is Actually Planning
The most charitable reading of Garmin’s position is architectural inertia: strength features evolved later than running and cycling, the FIT file specification for set-level data came after the ConnectIQ SDK was established, and the gap has simply never been prioritised. That reading becomes harder to sustain with each passing product cycle.
The less charitable reading — and the one the evidence supports more comfortably — is that Garmin is executing a deliberate platform strategy. The addSet() function has been absent from the ConnectIQ SDK for at least four years despite repeated public requests from developers. That is not an engineering backlog. That is a decision. Hevy was not simply turned away. It was offered a specific set of alternatives — build a ConnectIQ app, sync routines to Garmin’s native training mode, receive data from Garmin Connect — that would have made Hevy a feeder for Garmin’s own ecosystem rather than a competitor to it. i.e. a strategic offer dressed as a technical limitation.
The Firstbeat acquisition is the clearest precedent for how Garmin behaves when a capability becomes strategically important. It did not open an API to Firstbeat’s physiological analytics platform. It bought the company. The same logic applied to Tacx, which Garmin acquired rather than partnering with. Strength tracking appears to follow the same pattern: own the capability, control the data, monetise through subscriptions. If a standalone third-party strength app ever achieved the scale and loyalty of Hevy, acquisition is a more likely Garmin response than API openness.
The near-term trajectory is predictable. Garmin will extend Connect+ with structured strength-coaching features — progressive overload tracking, set-level history, and muscle-group recovery — that make the native experience genuinely competitive with Hevy and Strong. Voice control for rep correction, already technically feasible on the Fenix 8, is a plausible next addition that would remove the last significant UX objection to the native mode. A strength-focused device or dedicated gym mode, positioned between the Venu lifestyle line and the Fenix performance line, would be a plausible medium-term move as the hybrid-athlete market continues to grow.
At that point, the API question becomes moot. Not because Garmin opened it, but because it no longer needs to. The developers who tried to build what Garmin’s customers were asking for will have spent years working around a platform that was never going to let them in — while Garmin used that time to build the same product itself, behind a paywall, on its own terms.
Update: After this article was published, it emerged that Garmin is actively researching the final stage implementation of a 3-tier strength ecosystem, likely partly behind the Connect+ paywall.
Sources: Hevy integration update · Garmin Connect Developer Program · ConnectIQ developer forum · Garmin Q1 2026 press release · Garmin Connect+ launch · the5krunner voice control analysis · Rack Strength blog · DC Rainmaker Connect+ walkthrough · DC Rainmaker ConnectIQ platform analysis
Last Updated on 4 April 2026 by the5krunner

tfk is the founder and author of the5krunner, an independent endurance sports technology publication. With 20 years of hands-on testing of GPS watches and wearables, and competing in triathlons at an international age-group level, tfk provides in-depth expert analysis of fitness technology for serious athletes and endurance sport competitors. ID

There are very few things (are there any) where Garmin lets CIQ apps/fields overwrite native data in the .fit files. Further, there are tons of new features Garmin has added over the past 10+ years with zero support to CIQ apps/fields. To be fair, it would be a ton of development work, design work, as well as ongoing testing, to try to give CIQ apps full access to the new features. For example, a CIQ data field has no ability to know that a lap was canceled, so native fields will properly display data as if the lap never existed while CIQ fields will be clueless that it was canceled. To deal with this would require new api’s.
As for creating a .fit file that could be imported into GC with workout data, that is definitely possible. It’s just ones and zeros and most messages are documented or can be easily figured out. Garmin might frown on this if you add non-public messages but I don’t know what they would do about it.
I would suspect some of this is Garmin being protective, but I’m sure there is also a lot of stuff here where Garmin simply isn’t going to do the work to help their potential competitors unless there is more in it for Garmin than the others.
Great points @ekutter, and you’re right on all of them. CIQ apps can’t overwrite native .fit data, and the SDK gaps are real (lap cancellation is a good example).
In my specific case, Rack doesn’t try to fight any of that. The CIQ companion app is deliberately thin, it’s a display and input surface, not a data recorder. All workout state (exercises, sets, weights, rest timers, progression history) lives on the phone. The watch receives display metadata over BLE and sends back set confirmations. When the phone is out of range, the watch buffers set data locally in Monkey C and syncs when it reconnects, but even then, the phone functions as the SSOT.
So Rack doesn’t write to .fit files, doesn’t use non-public messages, and doesn’t try to replace or overwrite anything in Garmin’s native activity system. It runs alongside it. The Garmin activity still records as normal. Rack just adds the exercise awareness, rep tracking, and mid-workout flexibility that the native strength mode doesn’t have.
On the “Garmin being protective” point, I think you’re right that it’s both. The BLE communication channel Rack uses is part of the public CIQ SDK and has been stable for years though, and many apps rely on it.
Hi to everyone reading it,
I’m the developer behind Rack. Appreciate the coverage in both this piece and the March 20 feature!
A few points on the CIQ survival question: the BLE communication channel Rack uses is part of Garmin’s public Connect IQ SDK and has been stable
across device generations since its introduction. Garmin has historically maintained these developer APIs even while expanding their own services, and the entire CIQ ecosystem depends on it.
Fyi, The iOS app just entered App Store review (after a getting some good feedback from early testers) this morning and should be live within days. The Garmin CIQ companion is already live in the Connect IQ store, so for anyone reading this who wants to try it: the free tier is fully functional: unlimited logging, Garmin sync, Pre-Workout Brief, 30-day history.
Happy to answer technical questions about the BLE architecture or how Hot-Swap works under the hood.
Noah