Page 1 of 1

I think that someone CHEATED on Strava using your tool.

Posted: Sat Aug 20, 2022 11:05 pm
by fulmar2
This is a topic that I have hesitated to deal with. I have received a handful of messages from people saying, "I think a friend cheated using your timestamp tool. How can I find out if they used your tool?"

I wanted to address this type of inquiry, so I finally spent quite a bit of time writing a detection tool that can reveal if the GOTOES timestamp tool was used to generate an activity that has been uploaded to Strava. My hope is that by providing this tool, illicit use of the timestamp tool will be discouraged.

When you use the timestamp tool , the speeds you travel on segments are mathematically generated and do not represent real life motion. This new detection tool can match up the speed traveled with the algorithm that I used to generate the original file to reveal if the speeds in the file were generated using my tool. It is all probabilistic, and it is possible that real-life activities happen to match my algorithm. Therefore, the detection tool breaks the activities into smaller "chunks" to analyze sections piece-by-piece for sections of high probability matches.


READING RESULTS:


Red chunks mean that there is a high probability that this section was created using my tool. Yellow means "possible" use of the timestamp tool... and Green means no use of the tool. **Note that I've seen small sections of false positives from activities generated using the "Strava Android App." I can only assume that the Strava Android Phone app is using some sort of algorithm to generate the speeds that are displayed as opposed to calculating them based on position alone. In writing the code, I realized that people might use my merge tool to splice together different chunks of honest and dishonest sections - so the fact that the detection tool parses the files by sections also helps to see if there are smaller sections of cheating. Here is an example of how that would look:

Example of an activity where part of the file was modified by the timestamp tool, and part was a real outdoor activity.
Example of an activity where part of the file was modified by the timestamp tool, and part was a real outdoor activity.


Example of a file that has not been modified by the GOTOES timestamp tool.  Keep in mind that just because the file has not been modified by GOTOES does not necessarily mean that it is "clean."  It only means that the GOTOES timestamp tool was probably not used.
Example of a file that has not been modified by the GOTOES timestamp tool. Keep in mind that just because the file has not been modified by GOTOES does not necessarily mean that it is "clean." It only means that the GOTOES timestamp tool was probably not used.



If you see ANY red color, it's quite likely that my tool was used to create that portion of the track... but it is not 100% certain. I have noticed that the Strava Android App also generates speeds that seem to be close enough to my algorithm that chunks can be detected as false positives. Here is an example of some false positive chunks:

This is an example of an honest activity recorded on the "Strava Android App"...  As you can see, there is a little bit of red / yellow indicating that the speed in the file looks as if it were modified by my tool.. but in reality, it's a false positive.
This is an example of an honest activity recorded on the "Strava Android App"... As you can see, there is a little bit of red / yellow indicating that the speed in the file looks as if it were modified by my tool.. but in reality, it's a false positive.

Here is an example of an activity that was certainly modified by the GOTOES tool. Notice how the entire activity produces a red color.
Here is an example of an activity that was certainly modified by the GOTOES tool. Notice how the entire activity produces a red color.


Please remember before you accuse someone of cheating: there could be a legitimate reason they used the tool (please see the section titled "legitimate use of the tool" below).


FIRST, A BIT OF PHILOSOPHICAL REFLECTION:


I do not want to get into the business of being the "Strava Police." Strava is platform where > 99% of the activities are honest. For the < 1% of activities that are dishonest, my tool is not the only way to cheat. People can use e-Bikes, they can use their cars, they can draft behind a semi, or they can throw their GPS at the end of a segment. See this video for humor on the topic, and why we shouldn't take Strava so seriously.

Having said that, I have tried to come up with a model so people can verify if someone else's activity was created with my tool. This would allow the person to flag the questionable activity. The problem I see is that the people who have been writing me seem to be more interested in testing to see what about the activity would cause it to be detected (so they can perhaps get around the detection). I'm not keen on giving people unlimited upload attempts to the verification tool - for fear that they might use it to repeatedly massage their files until we can no longer detect if the file has been modified. As such, I have limited tool usage to two tests every 15 minutes. Also, the tool is only directly available to donors to limit overuse further. If you cannot afford to donate, contact me with the Strava URL of the suspect activity and I can send you the generated report.


HOW TO USE THE DETECTION TOOL:


Starting August 20, 2022, I've begun a pilot project: Donors can use this new tool to determine if an activity on Strava was modified using the GOTOES timestamp tool. The file must have been uploaded on or after August 20, 2022. To test the file, you will need to install the bookmarklet into your browser. The bookmarklet is available on this page. Instructions can also be found on said page.

To add the bookmarklet to your browser, go to the GOTOES check tool page and drag the bookmarklet to your toolbar.
To add the bookmarklet to your browser, go to the GOTOES check tool page and drag the bookmarklet to your toolbar.

Here are some things to note about this tool:

  • This tool only works for Donors
  • Donors can only check two activities every 15 minutes.
  • Activities recorded on Android Phone app MIGHT give SMALL SECTIONS of false positive.
  • There are other ways that users might modify files apart from GOTOES tools. This tool only detects GOTOES modifications.
  • You cannot test your own activities for dishonesty - because why would you need to?





LEGITIMATE USE OF THE TIMESTAMP TOOL:

If someone's GPS died on them, and they want to re-construct the rest of the activity, this tool allows them to do that. My tool urges them to use an especially slow "Desired Average Speed." The point is to get the distance and the map on Strava - but to NOT influence the leaderboards. If I have to rebuild one of my own files, I put a ridiculously slow average speed to ensure that I'm way down on the leaderboards - slower than if I had ridden it at my slowest pace. If someone uses my tool, and they get a KOM/QOM or higher than they would ever be on a leaderboard, it is their responsibility to lower the speed and try again. As long as people keep the speed slow enough (i.e. BELOW their realistic abilities), the tool is being used legitimately. No user should EVER use the tool to obtain a KOM/QOM, and if they inadvertently get one of these crowns, they should lower the average speed. Also, if you use the tool, please write an explanation in your description as to why you used it. For example: "I lost part of my ride, but was able to restore the missing fragment using the GOTOES tool." Verbiage like this (and the absence of KOMs/QOMs in your activity) will go a long way to protecting you from accusations if your activity comes under scrutiny later.

I used this tool myself to "re-create" some of my old (pre-GPS) activities. This allowed me to have a Strava heatmap for activities that I did before GPS existed. I had a hand-written journal of my activities, so I referenced that while using the line that I had drawn in pen on a paper map. I scribed the routes on Strava's route builder, and then timestamped them with my tool so the rides appeared to occur on the day/time that I actually did them. Upon doing this, though, I put my average speed at an obscenely low 5mph. Of course, I rode quite a bit faster than this, but I wanted my activities to be at the bottom of the leaderboard instead of the top. I wanted the map, but not the segments.

Other Types of Cheating

I want to emphasize that there are many ways that people might cheat on Strava. My tool is definitely one of the least-likely methods being used! For additional clarification: This new detection tool only detects modifications made with the Timestamp Tool. There are other ways that a user can "cheat" with my Merge Tool, however none of these "cheats" will affect segment leaderboards. With the Merge Tool, a user could do any of the following:

  • Increase Distance Traveled
  • Increase Total Ascent
  • Increase Power

Distance Cheating:
Changing any of these 3 values mentioned above will NOT affect segment leaderboards, however it could still be construed as cheating. For example, Strava offers monthly distance challenges, and a user could theoretically increase the distance traveled.

For activities with maps, modified distance is quite easy to detect: simply download the user's activity as a GPX file, and then upload it to any GPS software (including uploading to a test Strava account) and look at the distance. The reason this works is because GPX does not store total distance, and Strava is forced to re-calculate the distance based on the GPS points. If there is a big discrepancy between the re-calculated distance and the distance on the suspect user's Strava, you may be looking at a modified activity.

The reason that my tool has this feature is to help people who did activities where the GPS dropped out in the middle. Either they reconstructed their activity, or they simply added in the lost distance. I'll often see something like this in a run title: "Strava shows 10 miles, but run was actually 12 miles..." My tool aims to solve this honest problem.

Climbing Cheating:
Historically, GPS devices have been notorious for inaccurate ascent values. The data has improved greatly, but you probably know that if you ride with your buddies, you can all have different total climbing readings at the end of the day. This does not bother me; if you think about what the GPS is actually doing and how it is measuring all of these parameters, it's practically a miracle that they are even close. With this in mind, a virtual competition where people upload files from around the world using different types of measurements (barometric vs Strava's DEM) is kind of a pointless endeavor. Having said that, I want to acknowledge that my tool allows people to modify their total ascent, and could theoretically be used to cheat. Strava offers "climbing challenges," which have historically been fraught with arguments about dishonest behavior - long before my tool ever existed.

For activities with maps, modified ascent is quite easy to detect: simply download the user's activity as a GPX file, and then upload it to any GPS software (including uploading to a test Strava account) and look at the total ascent. The reason this works is because GPX does not store total ascent, and Strava is forced to re-calculate the total ascent based on the GPS points. If there is a big discrepancy between the re-calculated climbing and the climbing on the suspect user's Strava, you may be looking at a modified activity.

The reason that my tool has this feature is to help people who did activities where there was a GPS error. In fact, some people have approached me asking how to REDUCE their total climbing with my tool (in cases where there was a spurious GPS waypoint). In the right hands, this tool can be quite valuable.

Power Cheating:
Luckily, changing power values doesn't technically affect any challenges. There are some "groups" which have their own power challenges, but power is a tricky value. A professional rider can have an FTP of 320W, and another professional rider could have an FTP of 450W. The difference is that the first athlete weighs 55 kilos, and the second athlete weighs 77 kilos. **I might need to update these numbers after the 2023 TDF :lol: Therefore, the fact that a user can modify their power numbers can't really be construed as cheating other athletes. The saying, "cheaters only cheat themselves" really applies to power cheating. Strava provides advanced tools such as a power curve and a fitness-freshness curve which helps users monitor their improvements. If a user were to boost their power using my tool, they'd only be ruining their power curves and performance metrics. It would make Strava a lot less useful for training.

Trying to detect power cheating isn't very easy. You could make assumptions about an athlete's "best performance ever," but really you'd just be guessing.

The reason that my tool has this feature is to help people who have known issues with power meters. For example, let's say you are using Garmin Pedals, and your head unit was programmed to match the 170mm crank length of your road bike... but then you switched the pedals to the 175mm cranks on your mountain bike. Using my tool, you could adjust the power after-the-fact so it was accurate on your mountain bike. Another use of the tool is for people who bought left-only pedal power meters. My tool can double the power so that you get accurate numbers. I've used the tool myself for tandem rides where I give my wife the right pedal and myself the left pedal, and then I connect the channels independently using bluetooth - and then correct them after the ride using my tool. This way, we can both get power data without having to buy two pairs of pedals.