eFoil GPS track plotted on satellite imagery of a lake, with the scored fastest minute highlighted in orange

Sorting Garbage and Filtering Noise

Every ride logged on Verdant Ride arrives as a GPX file, and every GPX file is a small argument about what happened on the water. Some of them are beautifully behaved. Some of them claim a rider hit 304 mph. Our job is to tell the two apart without throwing away anyone’s honest session, and it turns out that is harder than it sounds.

This post is the inside view of that problem: why boards disagree with each other, why they sometimes disagree with themselves, and how we decide what counts on the community leaderboards.

Every Brand Speaks a Slightly Different Dialect

GPX is a standard the way “English” is a standard. Everybody technically speaks it. Nobody speaks it the same way.

The first split is sample rate. A lot of watches and handhelds log at 1 Hz โ€” one position per second. Fliteboard logs at 2 Hz โ€” one every half second. That sounds like a small difference and it is not. Speed is distance divided by time, and when you halve the time, you double the effect of every wobble in the position. A three-metre GPS wander over a full second reads as 6.7 mph. The same three metres over half a second reads as 13.4 mph. Same water, same rider, same wobble, double the number.

The second split is what else the file carries. Fliteboard writes its own measured speed onto every single track point, in a Garmin extension field. Most other devices do not โ€” they give you coordinates and a timestamp and leave the arithmetic to you. So for a Flite rider we have two independent opinions about how fast they were going, and for a Garmin or Suunto rider we have one. Treating those two situations identically is how you end up publishing nonsense.

The third split is smoothing. Some devices hand you raw fixes. Some quietly filter before they ever write the file. When two riders sit side by side on the same lake and post different numbers, this is usually why โ€” and it is nobody’s fault.

What Impossible Data Actually Looks Like

The dramatic failure is teleportation. A receiver loses its fix โ€” you rode behind a treeline, the antenna went under, the sky was bad, the firmware hiccuped โ€” and for anywhere from two seconds to two minutes it writes nothing. Then it comes back. And when it comes back it does not always come back where you are. It comes back at the last place it was confident about, or at a smeared average of several places, and then it walks itself to your true position over the next ten or twenty fixes.

To a naive algorithm, that walk is not an error. It is 500 metres of distance in 16 seconds, and 500 metres in 16 seconds is 70 mph. The math is flawless. The conclusion is garbage.

The quieter failure is jitter. Even with a perfect lock, consumer GPS positions rattle around the truth by a couple of metres. At 2 Hz that rattle becomes a sawtooth: the raw speed alternates high, low, high, low, every half second โ€” 19.7, 28.1, 19.7, 28.1 โ€” while the rider is holding a dead-steady 24. Nobody surges twice a second. That is the receiver breathing, not the board accelerating.

And Then There Are the Rides That End on the Highway

Occasionally a ride shows up holding 50-plus mph for a long, smooth, perfectly plausible-looking stretch. No jitter, no dropout, no sawtooth. Beautiful data. Then you put it on a map and the track is on the A-road heading out of town, doing a steady 55 in the right-hand lane.

I want to be clear about how I read those, because I think the uncharitable reading is almost always the wrong one. Somebody trying to steal clout on an eFoil website would not leave the drive home attached to the file. That is not a cheat, that is a person who was tired, happy, and forgot to hit stop before loading the board in the van. It is the single easiest mistake to make in this sport and I have made it myself.

It is also the single easiest thing to detect, which is why we now check every ride against real water. Land is not automatically disqualifying โ€” launches, beaches and docks are on land by definition โ€” but a sustained fast section that sits on a road is a very loud signal, and it gets pulled out of the scored window rather than counted.

A Worked Example, Start to Finish

One of our German riders looked at his Fastest Minute on Verdant Ride, compared it to what his own app was showing him, and told me our number was wrong. He was right, and I would rather show you the whole investigation than ask you to take my word for it.

The ride is a 23-minute session on the Xantener Nordsee. Our leaderboard scored his best sustained minute at 42.4 mph. That is not a real speed for any eFoil on the market. Here is exactly where it came from โ€” plotted on satellite imagery and OpenStreetMap so you can see land and water for yourself. Use the buttons at the top of the map to switch basemaps and toggle layers.

Open the full report in a new tab →  Scroll inside the frame, or open it full screen for the interactive map.

The short version: his board lost GPS for 63 seconds, came back 350 metres away on the dike path along the northeast shore, and then straight-lined its way home across the lake. Our Fastest Minute window opened right in the middle of that recovery. Thirty-seven percent of the distance we credited to that minute came from fifteen individual half-second steps that each imply more than 60 mph โ€” and for every one of those steps, the board’s own speed sensor was reporting 0.0 mph, because it knew it did not have a fix.

Strip those fifteen steps out and what is left is an ordinary, excellent lap at roughly 32 mph. The rider did nothing wrong. His board did nothing unusual โ€” every GPS device on earth does this. Our algorithm was the thing that was broken, and he was right to call it out.

Where We Draw the Line, and Why

We need a sanity ceiling, so here is ours, and here is the reasoning behind it.

The fastest eFoil Flite has ever built is the Fliteboard RACE, developed with Mercury Racing and campaigned by riders like Justin Chait. Flite’s own published top speed for that board is 34 mph (55 km/h, 30 knots). That is a purpose-built race platform, in the hands of a professional, quoted by the manufacturer as a peak โ€” not a sustained average. For its consumer boards, Flite’s own CEO puts the ceiling nearer 30 mph, and adds the caveat that it takes ideal conditions and an expert rider.

So when a Fliteboard ULTRA or a Lift4 Pro produces a sixty-second sustained average above 34 mph, we are being asked to believe that a production board beat the factory peak of a dedicated race board, and held it for a full minute. Around 33 we start looking hard. Above 34 we treat it as an instrument problem until shown otherwise, because in every case we have investigated so far, that is exactly what it was.

If you genuinely are faster than that, fantastic โ€” I want to publish it, and I want the whole community to see it. The homework is yours to bring: the raw GPX, a second independent source, video, a witness, something. Bring it and we will look at it seriously and publicly. Until then we filter highly unlikely data, and I would rather occasionally under-credit a real ride than permanently publish a number that nobody in the sport believes.

What We’re Actually Changing

Three things, in order of how much difference they make.

1. Trust the board before the math. If a file carries the manufacturer’s own measured speed, we use it. Fliteboard riders are effectively carrying a second opinion in their pocket and we were ignoring it. On the ride above, the sensor and the position data agree to within a fraction of a mile per hour everywhere the receiver is healthy โ€” and disagree by 270 mph exactly where it is not. That is a free, reliable lie detector and we are switching it on.

2. Reject samples, not rides. This is the part I care most about. A single second of dropout should not delete your session. It is infuriating, it is unfair, and it punishes people for owning normal hardware. The new approach throws out individual impossible steps and keeps everything around them. On the Xanten ride, 15 of 121 fixes in the scored minute were garbage and 106 were perfectly good. The right answer is to bin 15 samples, not 23 minutes of somebody’s afternoon.

3. Flag, don’t judge. Rides with a lot of rejected samples, long signal gaps, or fast sections sitting on land get marked for a human to look at. They do not get silently deleted and they do not get silently published. If your ride gets flagged, that is not an accusation โ€” it means your receiver had a bad day and I want to look at the file with you.

If You Think Your Number Is Wrong

Tell me. Seriously. Every real improvement to this system so far has come from a rider looking at their own stats, going “that’s not right,” and saying so out loud. The report above exists because somebody did exactly that.

Two things make it much easier to help you. First, upload the GPX rather than typing your numbers in by hand โ€” the file is the evidence, and we can only investigate what we can read. Second, if your board or watch offers a higher logging rate or a “raw” export, use it. More data is always easier to clean than less.

The leaderboards are only worth reading if the numbers on them are worth believing. Sorting the garbage out is the whole job. Log a ride, check where you land, and if something looks off, come and argue with me about it.


159395


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

Verdant Ride RadioON AIR
88.3FM
RIDE FOREVER
Tune in
Press play
0:000:00
 
VOL
VR RADIO88.3Tune in