Here I thought yesterday was going to be a peaceful random July Thursday morning. Nothing but Italian chirping birds at the Giro Rosa, and catching the Tour de France later in the afternoon on TV. Turns out, Strava had different plans for it.
You see, yesterday morning Strava sent out an e-mail to users of Relive (aka Relive.cc). You may have seen this app here or there, but essentially it allowed you to connect your Strava account (or other platform, including Garmin) to Relive and they’d generate a small movie of your workout including photos and such. It was nifty and there were plenty of users (as so evidenced by my packed inbox with upset users this morning). The company says they have millions of non-Strava users, plus the now non-existent Strava users.
For those not familiar, here’s basically what it created – using my ride two days ago in the Italian Alps:
Cool stuff, huh?
Yup – and Strava thought so too, as in fact over the years Strava hosted the company for events, and Strava employees used Relive too. As did other platforms and companies too of course, since it was nifty. Visuals and data go together well, and usually resonate widely on social media. Win-win. Or not, as Relive found out the hard way yesterday.
After discussing the situation with both sides yesterday and again today, I’ve got a pretty clear picture of what’s going on. Hang on, it’s a wild ride.
The Tides Turn:
It all started with an early morning (European time) e-mail from Strava to Relive users. While the first few words started off nice, it quickly took a turn for darker sides. It was phrased in such a way that implied Relive had done something horrible, dirty even:
“Many of us at Strava have enjoyed using Relive over the last few years, but because of Relive’s recent updates, unfortunately, we have decided to end this integration. The current version of Relive violates several of the terms that we ask of API partners. These terms are in place to safeguard your personal information, to ensure a level playing field for all our partners, and to protect what makes Strava unique. We’ve worked hard with Relive to try to fix this, but they have ultimately chosen not to make the changes needed to honor their agreement. So as of today, Strava will no longer send your activities to Relive for playback.
Rest assured, nothing’s changed about how your information is stored or the control you have over how it’s accessed by API partners. And we remain deeply committed to helping our many API partners build experiences that make your workouts and races even better.
As always, thanks for being a part of the Strava community,
The Strava Team
Of course, Relive then publicly posted a response– complete with SpongeBob meme. Ultimately a variant of ‘Strava got drunk, and is now ghosting us, help?’.
About this point you’re thinking to yourself: OK, so what, Strava and a 3rd party app are having a disagreement. Why do I (or you) care?
Well, the nuance of what they’re disagreeing about is actually super fascinating. Strava says that Relive violated their API terms of service. Their API being the development hooks that thousands of developers leverage, including companies likes Garmin, Suunto, Zwift, Trailforks, Polar and many others. There are numerous legal conditions/rules in there – some of them obvious (variants of ‘do no harm’), but some of them less well-meaning and more anti-competitive.
To begin, the first condition that Strava states Relive has violated is the following:
“2b Strava reserves the right to revoke your API Token or terminate or limit any uses of the Strava API Materials if you violate this Agreement or we otherwise object to your use of the Strava API Materials, including but not limited to, uses that enable virtual races or competitions and uses that replicate Strava sites, services or products”
The bold part is the bit Strava’s upset about, and translated to simple human English: Don’t do anything that we already have as a feature.
(I’ll point out the fact that almost every fitness/developer site/app already does that, for things like distance/speed/elevation/etc… all technically Strava features that are being duplicated.)
So what Strava feature is that which Strava disagrees with and believes violates their ToS? The ability to have a social feed.
Yup, for real.
But wait – Strava says that Relive actually broke two term items here, with the second one being:
“2.k.iv You may not process Strava Data, including in an aggregated or de-identified manner, for the purposes of, including but not limited to, analytics, analyses, customer insights generation, and products or services improvements. Strava Data may not be combined with other customer data, for these or any other purposes.”
Now this is where things get whacky. Basically Strava actually says in their terms of services that you can’t do analytics on their data (side note: It’s not ‘their data’, it’s your data…but we’ll come back to that in a second). That’s a funny distinction since those are – I kid you not – literally some of the same category names (e.g. Analysis) they use for their 3rd party app showcase/landing page:
But apparently that’s not actually what got Relive in trouble on this particular bullet point. Rather, it was the last portion of that sentence:
“Strava Data may not be combined with other customer data, for these or any other purposes.”
What Strava is saying here is that you can’t take data via the Strava API and then show it (or combine it) with other 3rd party data. In the case of Relive, that means that Strava doesn’t want them also supporting uploads from Garmin, Polar, Suunto, etc, because then that combines the data from other sources.
Which is somewhat funny – because ironically enough, that’s actually exactly what platform giant Trailforks does (oh, and you can do analytics too):
The Trailforks Strava API integration allows you to pull in your Strava activities, add them to your profile whereby other users can follow you and your activities, browse them, – even get badges as seen below.
And what about the requirement for combining with other customer data? Oh, no problem – Trailforks does that too. You can upload routes outside of Strava, as well as activities. And heck, Trailforks even goes a step further violating the API than Relive by making that available for usage stats and analytics (harkening back to the previous item). All while doing so in an astoundingly clear flow chart on their own site (see above).
Realistically, I could keep finding these examples. After all, I’ve only spent about 45 minutes on this post at this point, and I’ve got a pile of big and small 3rd party apps alike that theoretically broke these same rules.
The real reason I suspect is that Strava somehow sees Relive as a threat. Perhaps they are, but in reality I suspect they aren’t. They’re just a small 3rd party app that wanted to add some common social features that Strava definitely didn’t pioneer. After all, it’s those specific social features that pushed Strava over the line, once Relive rolled them out last week. All of the rest of the customer data combining and analytic bits have been around for years on Relive without any Strava problem.
In fact, Strava even hosted Relive at Strava HQ two summers ago for a 3-day event. And their VP of marketing has also called Relive ‘the best use of Strava’s API to date’. At the time of the HQ visit, Relive already had other 3rd party data connections including Garmin, Endomondo, and Polar.
As for the back and forth in communications that both sides claim? Well, both are correct, just saying it differently. Strava gave some warnings last week, and Relive offered to rollback functionality. But apparently that wasn’t quite good enough, with Strava requiring additional terms that Relive couldn’t agree too. It’s unclear why Strava required additional terms if Relive rolled back the social functionality for Strava users.
No Strava, it’s not your data:
But I want to circle back to something you see over and over again in the Strava API terms of service, which are these two words: “Strava Data”
This term ostensibly refers to may things. It can and does include Strava Segments, Leaderboards, shoe types, device types, and of course – activity uploads. In the case of Relive, they weren’t using any of those things except the last, which is ‘Activity Uploads’.
But the problem is those workout files are actually your data. It’s the data you generate when you upload a workout file to Strava’s platform. In the case of Garmin devices that’s a .FIT file, from Polar a .TCX file, and so on. Ultimately, it’s your data. GDPR enforces that as well, and Strava’s same ToS even notes that too.
But Strava as a group seems to forget that.
In the case of Relive, that was my workout upload. I did that on a Garmin device and then would have uploaded it to the Strava platform. Then, using Strava’s API, Relive would have accessed my track data and generated a pretty little video based on my data. See what I did there: It’s not ‘Strava data’, it’s ‘my data’. They didn’t use segments or leaderboards or my shoe type. Just my track, and only my track.
I say that – because it seems like Strava’s forgetting that. It seems like they’re forgetting that this is ultimately data you create and you authorize these apps to use in ways that you’ve approved. That’s the entire point of the API, and by and large 3rd party apps do fantastic things. Thousands of app developers have created incredible apps – highlighted in their 3rd party app directory. But again – when I sign on to authorize an app (using the standard authorization page you’ve seen countless times), I’m saying that ‘Yes, I want the app to do that’.
And that’s where it appears Strava seems to misunderstand the definition of ‘Strava data’. At that point I’m saying ‘Yes, I want you to use my data that happens to be on Strava’s platform to create a nifty movie’. Again – it’s my data, and according to GDPR I’m in control of my data. Strava is merely a temporary holder of it, not unlike a bank.
The challenge here for Strava and their apps is really twofold. For app developers, it’s the reality that Strava re-interpret their terms the moment they feel threatened. At least if you’re small. It’s the exact same story that played out last summer with Strava Live Segments, where now smaller GPS device manufacturers (e.g. not Garmin or Wahoo) have to pay Strava a licensing fee for usage of the Strava Live Segments functionality in their devices. It’s why you’ve seen that feature dry up over the past 12 months in newer devices on the market. Because Strava relies on companies like Garmin to convert paid Strava Summit subscriptions using their devices, Strava can’t actually pressure Garmin. Garmin would laugh in their faces.
But for Strava itself it’s that they keep tripping on stuff they needn’t trip on. One only need to look at social media yesterday to see how badly Strava lost in the social media game. They may have thrown the first legal punch, but they got badly beaten by meme’s and the reality of frustrated users calling Strava a bully.
And while Strava’s changes a year ago around renaming Premium to Summit were probably good for the company, they were ridiculed in the comments section for the name, with most users saying a variant of ‘How about developing features instead?’. Which they did back in January.
For the first time in years they developed a new Strava finger-dragging route creation feature, only to have reality strike a few days day later when it was learned they actually painstakingly duplicated a 3rd party app (complete with IP logs showing Strava HQ, Bourne Identity style). And now here we are a year after Strava announced Summit – with yet still no new features. Instead, we’ve just got lawyers from Strava protecting turf that isn’t actually theirs to protect.
It’s thus somewhat ironic that Strava’s own breakup letter to Relive users actually sums it all up the best: “Rest assured, nothing’s changed about how your information is stored or the control you have over how it’s accessed by API partners.”
However, it’s missing the next line to complete it and make it more accurate. So I’ll finish it for them: “Ultimately, what’s changed is that we sat down and decided that instead of creating new features for you as Strava users, we’d spend that time on removing functionality from the greater Strava ecosystem.”
Seems about right.