The Zero Second Not a Number Strava Mystery

Reading Time: 3 minutes
Yesterday I noticed that I had an unusual workout that was getting likes. It had zero minutes of exercise, zero distance travelled, and NaN speed in km/h. In other words I had a track that should not have been counted by Strava as a workout.

Everyone is familiar. If you go for a ten minute walk, or a fifteen minute walk Apple will ask “track walk/cycle” and you’ll say yes. When you go to Sports Tracker and other apps, you will notice that there is no map, just duration, and a high speed.

When you wear the apple watch it wakes up after ten to fifteen minutes and asks “track workout?” and you’ll say yes. If you’re lucky your phone will have the GPS track. If you’re unlucky it won’t.

Yesterday I suspect that the Apple watch created two files. The first file was the workout with a static GPS point, fabricated when I accepted the workout. The second file, just 3 minutes, was counted as a 3min cycle at 56 km/h. I noticed the same thing last week within the same scenario.

I usually think “A three kilometre bike ride is not worth tracking, so I don’t bother starting the GPS. In yesterday’s scenario we had three complications.

The first is that because Suunto and Sports tracker are logged in to the same account I can track with either the Apple Watch or the Suunto watch, but if I track with both then I get duplicate data. That’s why I wore the Apple watch but tracked with the Suunto run.

I tracked the ride to the ride, and the ride itself with the Suunto device, and then I stopped it at the end of the group ride. It didn’t ask me whether to count the group ride, on the Apple Watch.

When I rode home I tracked with the Garmin Explore 2 but didn’t keep the data. With the Garmin Explore 2 I want the map/climb duration features, but track recording is as a backup. Since the ride home was untracked by the Suunto device when the Apple Watch asked “Track workout” I said “yes” so it did.

That’s when I thought “oups, that was a mistake”. Rationally it makes perfect sense that it kept just the 12 minute ride, rather than the entire ride in three parts. At the same time when I saw the zero minute, zero distance, zero speed error file I was curious.

What is curious is that the file seems to have been spliced. One file has the HR data, and the other has the GPS data. I suspect that with clear breaks between part 1, the ride from home to the start of the ride, part 2, the ride, and part 3, the ride home Apple theoretically has three signals for workouts, but it only kept the most recent. It didn’t restore parts 1 and 2. That is normal and expected behaviour.

TDLR

An Apple Watch automatically detects that you might be walking, running or cycling, and it will ask “Do you want to record this”. If your bike ride is twelve minutes, then by the time you say yes the activity is over. It (the apple watch) then backtracks to find the HR data but may not have access to location data. That’s why the activity duration is logged, but not the GPS co-ordinates.

Strava saw one file, and showed the route correctly, but got the corrupted data and displayed that data as a workout. I noticed when I was AFK (Away from keyboard) so I saw people liking it, but I couldn’t delete it. I was curious to see which app created this mess, and I strongly suspect that it’s from data the Apple Watch gave to Sports tracker, which was then read by the Suunto app, before passing it to Strava. The activity that is correct is the one that Apple sent directly to Strava, If I remember correctly.

In conclusion, it’s not the Apple watch, by itself, but rather Apple, Sportstracer, suunto and strava going through generations of a gpx file before returning NaN.

And Finally

It is better to intentionally track workouts from the start, rather than 10 or more minutes into an activity, as an afterthought. As we have seen the files tend to be improperly formed. Neither Sports tracker, Suunto nor Strava know what to do with the data. It’s a case for leaving the Apple Watch at home, or turning off Suunto to Strava synching.

The one caveat is that when you turn off sync, you get a backlog the next time you enable it. It’s easier to delete activities after the fact.