cancel
Showing results for 
Search instead for 
Did you mean: 
mgoyanes
Shkhara
Status: Existing

Hello.

I frequently come across segments that have at-the-top placings activities with bad GPS data.
In this category, we have two types of users:

  1. People who unintended end up being placed on the top placings;
  2. People who deliberately try to cheat.

Regarding 1, I've seen this frequently if a person ends up starting/ending a segment after/before the start/end of the segment. Example: https://www.strava.com/segments/27533634 

mgoyanes_0-1662041847910.png

mgoyanes_1-1662041895616.png

The first image is from the CR and the second image is for the second placing. This could be easily detected by Strava. Their “threshold” for detecting if the people started/ended the segment is too high.

In regard to the cheaters, I found the following situations too frequently:

  • Change their devices recording GPS points to be higher than 1 second, thus making straight lines (the shortest distance between two points is a straight line);
  • They know the start and end positions of the segment, so they pause their device's recording before the start and after already entering the segment is when they start again the recording. They do the same for the ending, that is, pause the recording before the segment end and resume it some meters after the segment end.

My suggestions would be:

  • Only allow a segment to be valid if all the points from start to end of the segment happen at an interval of 1 second;
  • Don't allow segments with wobbling GPS data;
  • Only allow to count for segment if the device is collecting GPS data before and after the start and end points, that is, the recording should incorporate all the segment and not parts of the segment as now it is possible.
5 Comments
THENEWMEXICAN
Pico de Orizaba

That third suggestion is the bees knees. Though it took me down a rabbit hole of whether the fault is in the app and the potential allowance for wobbling GPS data or the potential of the device capturing the data actually capturing an imaginary chicane; which took me back to suggestion 2. 

https://www.strava.com/athletes/4059673
Status changed to: Gathering Kudos
Soren
Denali
 
Silentvoyager
Kilimanjaro

In most cases it isn't cheating - it is Strava segment matching algorithm being too imprecise when matching segments. I see this problem most often on some short uphill running segments. Often a person who takes the first place just turns around too early. Strava matching radius is the same for all sports and it is clearly in excess of 50 meters, which is a lot when running uphill. That can easily save someone 20-30 seconds.

The radius is so great is because Strava wants segment matching still work for cyclists going at high speed while they use Garmin smart recording, which ends up producing trackpoints every few seconds. I think at the minimum the radius should be dependent on sport. And ideally interpolation / extrapolation should be used to narrow down the segment match. For example, let's say the current algorithm is used to find the best segment start or finish point (using the current large match radius and all other current parameters). Let's call that the point N. Strava could then look at the two points (N-1 and N+1) recorded just before and just after the matched point. Then Strava could interpolate on the [N-1, N] and [N, N+1] intervals to see if that brings the match any closer to the segment start (or finish), now using a tighter match radius. That would produce a much more accurate match and it would also detect the cases when someone didn't go entire segment distance, for example by entering a segment from a side or by turning around too early. This shouldn't be too hard to implement, and should be too costly to run because the interpolation would apply only on the two initially matched points for every segment.

I think this would cover at least 90% of so called cheaters, who are not really cheaters in the first place. They are just ignorant users who unknowingly take advantage of the poor segment matching algorithm.

zecanard
Kilimanjaro

I’ve seen this on a segment that I run every week. The segment connects a street to a lake, but ≈150’ before the lake, a junction branches off into a parking lot. Many people turn into that parking lot to end their run, yet score a CR that is 20s faster than people who run all the way to the lake. Then Strava grants them a crazy CR pace that is a minute faster than everyone else, because the full segment length is used in that calculation, rather than the actual distance run.

What’s funny is that if you inspect the CR/Top-10 activities, Strava’s “matched” section even includes the athlete running towards the parking lot, AWAY from the actual end of the segment.

It’s ironic when you consider Strava’s insistence on rounding all distances down as “the digital version of "running all the way to the line".” I guess that philosophical stance doesn’t apply to actual competition, only to our personal stats.

Status changed to: Existing
Jane
Moderator Moderator
Moderator

Hello @mgoyanes 

I wanted to follow up with you on your idea submission.  In June of 2023, we rolled out some improvements to how we detect invalid efforts on segment leaderboards.

Find out more details here

Although we do not catch all invalid efforts, we do detect and prevent many from ever reaching leaderboards.  We continue to iterate on our detection mechanisms and algorithms and hope to continue to improve this going forward.

In the meantime, if you do see what appears to be invalid efforts on segment leaderboards, you can use our activity flag tool, or for repeated violations, report cheating.  Details here

Thanks again for your feedback and suggestions.


Jane (she/her)
STRAVA | Community Hub Team