OpenStreetMap 标志 OpenStreetMap

Strava Workouts Make OpenStreetMap Stronger

UrbanRoaming 于 2025年六月19日 以 English 发布 最后一次更新于2025年六月20日。

This blog was originally posted on my personal site:

Prograham.net - Strava Workouts Make OpenStreetMap Stronger

I’m not much of an armchair mapper. Partly because ground surveying with Everydoor and StreetComplete is what got me started mapping in OSM. But I think it’s also because I hate having to decipher blurry aerial imagery. I still do it from time to time, but ever since I discovered how to use the Strava heatmap, I’m hooked.

To hopefully sell others on the dataset and walk you through some ways I’ve found it helpful, I’ve collected some examples below of ways you can use the Strava heatmap data.

Context

For those of you who don’t know, Strava is used around the world to record all kinds of workouts. Strava has moved to using OSM data in their apps and to give back they’ve allowed use of their GPS traces as a source when contributing to OSM!

Strava heatmap webpage

To get it set up you can reference the OSM wikipage for Strava.

Usecase 1: Misaligned Paths

One of the most common changes I’ve made using the Strava heatmap is updating existing paths to align with the heatmap. I’ve found many paths that were most likely drawn based on a single GPS trace or a best guess. Now with the hundreds of GPS traces from Strava we can create a more accurate path.

Below you can clearly make out a missing switch-back and spots where the paths could use some tweaking.

A trail (aerial image with Strava heatmap) with some paths slightly misaligned and one that is missing a curve

I’ve started working my way through various state parks or nature preserves looking for paths that need to be updated.

A dirtbiking course (aerial image with Strava heatmap) with many of the curves needing to be smoothed out and aligned and some paths missing

In the above example you can see several paths that need to be smoothed out and some paths in the Strava data which aren’t in OSM. That brings us to our next usecase: missing paths.

Usecase 2: Missing Paths

With the Strava heatmap it makes it easier to identify potential missing paths. For example, when scrolling along the coastline it can be hard to tell from aerial view where paths exist.

Aerial imagery of a beach

But with the Strava heatmap it sticks out.

Aerial imagery of a beach with the Strava heatmap clearly showing where a path is

In the above case, more consideration is required to determine if the path is official and how to mark it. Usually this involves checking the surrounding area and looking more closely at the available imagery (aerial and street-level).

Sometimes it’s more clear when the path is official. In the below example Strava highlights a missing neighborhood.

A residential area (aerial image with Strava heatmap and OSM data) that highlights a missing neighborhood

But there’s still some trickiness here. Since some of the tracks go through dense woods, the heatmap may include trails. So let’s filter it to show cycling data only.

Same neighborhood with cycling-only heatmap filter, showing less data

With this view you can make out which paths are most likely roads, and which may be trails.

Usecase 3: Obstructed Paths

While mapping streets in this neighborhood, some were difficult to follow due to tree cover. I can see there are houses that must have connecting roads, but the trees make it hard to trace the exact path.

A residential area (aerial image) that is hard to make out because of tree coverage

But with the heatmap added, the paths become clear and I can fill in the gaps.

Same residential area with Strava heatmap showing paths through tree cover

Gotcha 1: Informal Paths

Just because something shows up on Strava’s heatmap doesn’t mean it’s an official path. Sometimes people cut through areas without a proper path. Usually I can judge whether a path should be added based on aerial and street-level imagery, but when I can’t: I might leave a note for someone to investigate further, hopefully from the ground.

Looking at an example, the Strava heatmap shows a strong trace behind these houses, but I can’t see anything in the aerial imagery to indicate a road. Perhaps there’s a footpath that people are taking, but I wasn’t comfortable making that assumption.

Residential area with a heatmap path going behind buildings

Same area without heatmap, no visible path

As another example, here it seems like people are cutting through a property and going around buildings.

Remote area with a path through buildings and a field, shown via Strava heatmap

When I zoomed into the aerial imagery there were no clear paths, so I left it alone.

Gotcha 2: Private Paths

Another issue to keep in mind: sometimes routes might be private. I had a hard time with the below example. There are clearly paths in the aerial imagery throughout the area, but my gut was telling me that these weren’t public. There were no parks and the heatmap stayed within one area.

Remote area with paths visible in aerial imagery

Same area with strong heatmap trace, but unclear if public

Gotcha 3: Temporary Paths

The people using Strava are tracking their workouts, there’s no promise that the route they take is permanent. In the example below, I found a super strong GPS trace that was missing from the map.

Field with strong Strava trace

But when we disable the heatmap we see an empty field. My best guess is that this was used to host a race, something we shouldn’t be adding to OSM.

Same field with no visible path in aerial imagery

Gotcha 4: Forgetting to Check Aerial

Finally, when using Strava’s heatmap make sure to toggle it on and off frequently (keyboard shortcuts are your friends here). Sometimes I’ll start mapping a trail with heavy obstruction from trees, but forget to check whether the trail becomes visible later on. When the heatmap is strong, it can completely obscure the aerial imagery.

Wooded area with visible heatmap trail

In this case thankfully the heatmap and aerial imagery agree.

Same area, aerial-only, with visible trail path

Discuss and Get Mapping!

I hope you have found this useful and try it out for yourself! Here is the setup guide. I recommend searching for parks in your area for a good starting point!

Feel free to share feedback below as well.

电子邮件图标 Bluesky图标 Facebook图标 LinkedIn图标 Mastodon图标 Telegram图标 X图标

讨论

Marcos Dione2025年06月20日 11:35 的评论

In the case about the probable informal path (a path, I call them :), do you at least leave a note just in case someone wants to go and do a in place survey?

UrbanRoaming2025年06月20日 11:40 的评论

Frequently I generate notes! Although sometimes I skip depending on how likely I think a path is.

osm.org/user/UrbanRoaming/notes

It seems some people are more confident than me and just apply the update remotely. Although hopefully people will see them when using StreetComplete or similar programs.

chris_debian2025年06月20日 14:49 的评论

Nice write-up, Graham. I’ve been mapping for a long time, but not tried this approach; I’ll give it a go.

Cheers,

Chris

UrbanRoaming2025年06月21日 21:03 的评论

Thanks Chris! Let me know what your experience is!

Rostranimin2025年06月23日 08:42 的评论

Hello - I’m a regular user of Strava heatmap data for much the same purposes as you describe. At the moment I’m completely failing to get access to the heatmap on the JOSM editor. It’s clear that recent changes at Strava have upset some of what’s needed to see the heatmap on OSM editors, and that some of the instructions on the setup page you link to are no longer correct. What editor are you using, and how are you setting up the heatmap?

I’d like to get this working again and to update the instructions!

UrbanRoaming2025年06月23日 20:15 的评论

Hey Rostranimin!

I’ve been using iD editor with this extension.

https://addons.mozilla.org/en-US/firefox/addon/id-strava-heatmap/

It looks like they may have fixed the JOSM extension for firefox, but are still pending a fix for Chrome:

https://github.com/zekefarwell/josm-strava-heatmap/pull/20#issuecomment-2974883740

Rostranimin2025年06月23日 20:23 的评论

Thanks UrbanRoaming - I’m having a go with ID, but failing at the moment. And Strava seems to get grumpy and refuse to log in a second time. I’ll keep trying - this is irritating.

UrbanRoaming2025年06月23日 20:27 的评论

Although someone commented that they downloaded the latest firefox extension and it didn’t work.

Rostranimin2025年06月23日 20:45 的评论

Thanks - that’s certainly my current experience with Firefox. I have it working with ID on Chrome(ium) though, which is a big step forwards. I’d prefer to use JOSM, but this is better than nothing.

UrbanRoaming2025年06月23日 20:49 的评论

Oh, I did notice sometimes once logged in I still need to go to the heatmap page:

www.strava.com/maps/global-heatmap

dpschep2025年07月 7日 15:56 的评论

One big subset of the ‘temporary paths’ gotcha is cyclocross courses, as the riders overwhelmingly track and upload to strava, but they aren’t following anything permanent. Here’s a pretty good example from DCCX: https://www.strava.com/maps/global-heatmap?sport=All&style=satellite&terrain=false&labels=true&poi=true&cPhotos=true&gColor=blue&gOpacity=100#17.08/38.933247/-77.017565

登录以留下评论