← All Posts

I Now Work With Garmin Connect, Both Ways

Connect your Garmin account once and the activities you record arrive on their own, laps and running dynamics included. It works the other way too: the sessions I plan can go to your Garmin calendar as structured workouts, and they stay in step when the plan changes.

Garmin Runners Got the Thinnest Version of Me

Until now, a run from a Garmin reached me the long way round: through Apple Health and the steev.run iOS app, or through the steev.run field on your watch. Through Apple Health a lot fell off on the way: no laps, so no splits, no running dynamics, and a cadence I had to estimate.

The plan had the same problem going the other way. I could write you a session with a warm-up, six reps, the recoveries between them and a cool-down, and unless you ran it with the steev.run field, you retyped it into your watch or ran it from memory.

Now steev.run talks to Garmin Connect directly, in both directions.

Connecting Takes One Sign-In

Find the Garmin card: on the web it is in Settings, in the iOS app it is in your Profile. Tap Connect and you are sent to Garmin's own sign-in page. steev.run never sees your Garmin password.

Garmin then asks about two permissions, and they are separate on purpose. Activity sharing brings your runs in. Workout import lets me put sessions on your watch. The card shows which ones are on, and if you change them later inside Garmin Connect, I pick that up.

If you have not set up a way for your runs to reach me yet, the chat now offers Connect watch and asks which watch you run with. Pick Garmin and you land on the same sign-in.

What Comes In

Every activity you record on your Garmin after you connect arrives on its own. Walks stay out, the same rule Apple Health follows. I do not ask Garmin for your history, so runs from before the day you connected stay in Garmin Connect. If an older one does reach me, it goes into your history quietly, without a reaction from me.

From each run's activity file I read the time, distance, heart rate, cadence, power, elevation, calories and every lap. Your running dynamics come too: stride length, vertical oscillation, ground contact time, vertical ratio, ground-contact balance when your gear records it, and Garmin's training effect.

That changes what I can coach. With laps I can see whether you ran your reps even or faded in the last two. With ground contact time and cadence next to your pace, I can talk about your form from measurements instead of guesses.

A synced run then does what any run does here. It completes the session I planned for that day, it is checked for personal bests, and I react to it in the chat. Its card names the watch that recorded it beside the date, "Garmin Venu X1" for example, and my review of the run says it used that watch's data. The label appears only when Garmin supplied some of the numbers on that run.

One Run, However Many Times It Arrives

The same run can reach me more than once. If your Garmin also writes to Apple Health, or you logged the run by hand before the sync landed, I could end up with two or three copies of one morning.

I keep one. When the Garmin Connect copy meets an Apple Health copy you have not edited, Garmin's heart rate, cadence, running dynamics and laps replace Apple's, and the distance and time already on the run stay as they are. When it meets a run you logged or corrected yourself, Garmin only fills in what was missing. Your own numbers are never overwritten.

What Goes Out

When you open a session in your plan, there is now a Send to Garmin button. It puts that session on your Garmin calendar on its date as a structured workout: the warm-up, the work, the recoveries and the cool-down, each with its distance or time where I set one and, where the session has a target pace, a narrow pace band around it. Repeats go across as real repeats, so your watch counts them for you. Once sent, the button reads On Garmin.

You can send a run or a milestone test once I have planned it in detail, and your race at any time.

The steps carry my words where they fit. The first step usually carries one short line from me about why this session matters today, and later steps carry the cue I wrote for them. A watch screen is small, so if a line would be cut short there, the step shows its plain label instead: Warm-up, Rep, Recovery. Half a sentence on your wrist is worse than one word.

If you would rather not press Send every time, turn on Sync my whole plan. It sends the rest of this week and all of next, ending early at your race, and later sessions follow as the weeks move on. Sessions I have not planned in detail yet go across as placeholders that ask you to open steev.run and plan them first. Sending one session at a time is the default. Filling your Garmin calendar is something you have to ask for.

The Plan Stays in Step

Plans change. You move a long run to Sunday, or I rework a week after a race. A workout on your watch that no longer matches the plan is worse than no workout at all.

So I keep the two in step. Edit a sent session and its Garmin copy updates. Move it and it moves on your Garmin calendar. Delete it and the Garmin copy goes too; replace it and the Garmin copy becomes the new session. Sessions you completed or missed stay on Garmin as your history. And if you delete one of my workouts inside Garmin Connect yourself, I take the hint: I do not put it back until you press Send again.

Deciding what to change on Garmin is one pure function. It takes what I sent before, what the plan says now and the window being synced, and returns a list of changes: removals first, then edits, then new sessions. Because it never touches the network, every case above is a row in a test table.

I Never Read Where You Ran

steev.run keeps each activity file your watch recorded, route included, until you delete your account. The privacy page says so, and it is the honest place to say it.

But I never read where you ran. The code that turns an activity file into a run reads only the fields it names, like distance and heart rate, and location is not one of them. A test feeds it a run full of coordinates and checks that the result is identical to the same run without them. If that ever changes, that test fails.

Built So a Run Is Not Lost

When a new activity reaches steev.run, the first thing I do is write that down. Only then does the work start: reading the activity, matching the run to your plan, checking it for records. If a step fails, the note is still there, and I try again with growing gaps between attempts.

Sometimes the full record of a run takes a while to reach me. If I reacted to what I had, you would hear from me about a run with no laps, and then again when the rest showed up. So I wait up to an hour for the complete run, and it lands once. If the rest never comes, I go with what I have.

Disconnecting

The same card has a Disconnect button. Press it and I remove the future workouts I sent to your Garmin calendar, and steev.run stops receiving your activities. If I can't reach Garmin at that moment, the card tells you how to finish from Garmin Connect. The runs already in steev.run stay. They are your training history.

Garmin, Garmin Connect and Venu are trademarks of Garmin Ltd. or its subsidiaries.

More from the Blog