The Chevron Marathon is this weekend, bringing 27,000 runners from around the world to Houston. Each runner carries with them unique reasons that keep them moving through busy weeks and bad weather. Some common motivators are improving cardiovascular health, getting to know your city, socializing with a running community, and the satisfaction of setting and accomplishing goals.
But my favorite has to be the kudos on Strava.
The so-called “runner’s high” usually eludes me, but there is a major burst of dopamine for each kudo I receive after a run.
Strava is a social media platform for endurance athletes to record and share their fitness activities. Strava users award each other “kudos” for each activity, similar to “likes” on Facebook or Instagram.
I’m excited to participate in the marathon this Sunday. The chance for a PR (personal record) finish time is certainly motivating me, but I’m really striving to maximize the number of kudos. I think I can do it, if I figure out the right kudo formula.
Luckily, I have the data to approach this goal empirically.
Why do some runs get more kudos than others?
I’ve been a Strava user for almost 5 years, and in this time have logged over 2,300 running and cycling activities. Using Strava’s API, I can access data for each of these activities.
For my purposes here, I’ll focus only on my running activities- that’s 721 runs to analyze. The Strava API gives a lot of data for each activity. I selected a handful of factors I suspect might be related to the number of kudos I earn. These all come from the Strava API, though some required some basic data transformations:
- Distance of the run
- Medal count – Strava gives you medals if you run a segment faster than other users and your past self
- Suffer score – Strava’s own metric for effort, based on heart rate
- Did I run solo or with others?
- How many photos did I upload with the activity?
- Was this a race or a normal training run?
- Did the title of the run contain an emoji 😜?
I built and fine-tuned a linear model to see how these factors contribute to my kudo count. On average, I get 7.7 kudos per run. But I have a lot of ability to increase that count.
- Go the distance: As expected, longer runs earn more kudos. Each mile is worth 0.96 kudos.
- It takes time: I’ve gotten more kudos over time, presumably as I’ve gained followers on Strava. In 2021, I earned on average 2.9 more kudos per run than I did in 2017.
- Race: I also get more kudos on races compared to normal training runs. A race earns a whopping 12 extra kudos!
- Get a running buddy: Running with others also gives me more kudos, probably because common decency says you have to kudo the people you run with. But this was a relatively weak effect (maybe because the people I run with already regularly give me kudos). Having at least one running buddy is worth 0.4 kudos.
- It doesn’t pay to suffer: Surprisingly, suffer score, medal count, and pace had hardly any impact on my kudo count. Running 30s/mi faster (a pretty massive difference in effort!) is worth less than half a kudo. This is good news for social lifestyle runners like myself: Strava users seem happy to celebrate any run, not just the speedy ones.
- Photos: A painless and fun way to get kudos is to upload photos with your run. Strava is a social media site after all, and people want to see the cool places you run. Each photo is worth 1.4 kudos. Aside from distance, number of photos was the best predictor of number of kudos.
- One simple trick for kudos 🤯: The easiest way to get kudos is to add emojis to the title of the run. Activities with at least one emoji in the title earn 1.5 more kudos on average. That’s the same boost you’d expect to receive after two years of building a Strava following!
The model explains 53% of kudos for my runs
I tested the quality of the model by seeing how well it predicts the actual number of kudos I received on each run, and it does a pretty good job! Kudo count for 97% of my runs could be predicted within a margin of error. Put another way, 53% of the variation in kudos is explained by factors I modeled.
This high predictive power is expected, because we built the model based on the data, then tested the model with the same data… it’s a bit circular, but still gives some confidence that the model is doing a good job of explaining the data. The real challenge will be to test the model on someone else’s data.
Do other runners get kudos for the same reasons?
So, does this same formula predict kudo counts for other Strava athletes? My friend Gisele (also running the marathon Sunday!) gave me access to her Strava data to put my formula to the test.
Unfortunately, Gisele has some missing data. She doesn’t have a suffer score because she doesn’t run with a heart rate device. She also doesn’t classify her runs, so we don’t know whether each run was a race or training run (this factor played a big role in my own kudo count).
Because we’re missing two important predictors and because Gisele’s data wasn’t used to develop the model, we’d expect my formula to be less predictive of Gisele’s kudo count. Indeed it is, but it’s still pretty good! She tends to get more kudos than the model predicts, but her kudo count is still within the margin of error 79% of the time.
If I were to give Gisele some advice, it would be to use emojis more liberally. She only uses emojis in 11% of her run titles (compared with my rate of 38%). That’s a lot of free kudos she’s leaving on the table.
Race day predictions
So, what does this all mean for our kudo aspirations this weekend?
Given this weekend is a race of great distance, we stand to earn a lot of kudos. Add some emojis and photos, and we’ll both be in kudo PR territory. My model predicts I will earn 39 kudos and Gisele will earn 44 kudos. Indeed, this would be a PR for each of us! But I wouldn’t mind if my model is underestimating, and we actually get even more.
Is anyone else running the marathon or half this weekend? What motivates you? Are you an overanalyzer like me, or just run for the thrill of running?