I have a question on how the ETA is calculated. I was tempo riding doing the Epic KOM and was paying attention to my ETA. ( I wish there was a way of shutting it off, but that is another story). At about 1.3 km to go there is a downhill for about 300 m. So, I do what I do on a real climb and take a rest. I have a Neo so my coasting speed goes up to about 45 km/h but my ETA goes up about 10 min. When I hit the last 1 km (or so) the incline increases, I start grinding up the the hill at 16 km/h and my ETA drops back by about 10 min. Now from elementary physics, time = distance/velocity so this seems backwards. So, the question is how does Zwift calculate ETA and is it really realistic?
Thanks,
Harry
this drives me crazy, too.
iâm pretty sure the calculation is: how much distance left at what avg incline? if you were to hold your current KW/H, how much time to cover that distance with that avg incline?
i blow up a lot on that epic climb because the only way to keep the number âon trackâ is to pick up the pace on that downhill! i fall for it every time.
Itâs definitely a power-based estimate, not a purely velocity-driven thing.
At X W/kg, how long until you arrive at the summit? When youâre coasting and W fall to zero (or nearly so, if youâre soft-pedaling), Zwiftâs calc adjusts assuming youâll be at that low w/kg for the rest of the segment (even though your speed at that moment in time may be high) and your ETA goes way up.
Yes. Joeâs post is how it works. Not the best in my opinion.
Iâm not sure if my question/comment is the same issue, but I think itâs related, so Iâll pop it into this thread instead of creating a new one, for now. So I guess in the previous Zwift Tourâs I had done, i never noticed this happening, but in the recent âOff the MAAPâ tour, I started to see this âanomalyâ. Prior to each stage, Iâd go in and look at the stage description, including the mileage (sorry, no metric system for this Yank ) and elevation gain, just to get an idea of how long it was going to take my fat butt to complete each stage. So i was cognizant of the total distance reported for each stage going into things. Well then as I was riding and just kind of keeping an eye on my distance ridden and remaining distance, I started noticing that the two werenât adding up to the reported distance of the stage. And as i started paying more attention to those two numbers, I really started to see some odd things going on with the Zwift mileage and the way it was ticking off.
So one time, I watched as my mileage ridden ticked over to another 10th of a mile ridden and while I watched for that to tick over, I kept an eye on the mileage remaining counter. It didnât change at the same time the mileage ridden changed. Didnât get an exact count, but I think it was somewhere along the lines of 6 or 8 seconds before the mileage remaining ticked over to a 10th of a mile less remaining.
Just oddâŚwhy would those two not change at the same time and why, when you are on the route and riding the even, do those two numbers not add up to the final event mileage?
I meant to take a few screen grabs and videos, but didnât do so, but I was able to find a youtube video a guy did of stage 4 and sure enough, same thing was happening with him. Stage 4 was reported at 18.4 miles (Road to Ruins Course) and as youâll see as you either watch the video, or scroll through my screen caps of his video, the cumulative distance (Miles Ridden + Miles remaining) changes pretty significantly over the course of his ride/video. At 9:10 mark, the total is 16.5 miles; at 20:30 mark, itâs 16.9 miles; at 33:18 mark, itâs 17.6 miles and then finally at 47:38 mark, with less than a mile remaining, it adds up to the reported event distance of 18.4. Whatâs that all about?
Is this the same sort of issue with ETA and also the dynamic others have talked about with XP being greater with metric settings vs. imperial? I mean, it seems like Zwift is more metric biased/based, and thatâs fine, but why canât they seem to get the math right with some of these other features when it comes to the conversion over to imperial?
I canât explain the changing overall distance (which baffles me, also), but I believe that the traveled/remaining ticker âdisconnectâ is just due to the screen only showing tenths of a mile/km, but the background programming working in hundredths, or more, of a mile/km, and what youâre seeing is just the rounded value. So, if the total course is 18.43 miles your distance traveled could flip over to 17.0 at one point, but the remaining distance wonât change to 1.4 until youâve traveled 3/100ths of a mile farther.
There used to be a similar issue with the XP awards where the distance traveled would change to a new mile (say going from 17.9 to 18.0), but the XP would not be awarded for some seconds later. This was because the mileage was really just 17.95 when it ticked over to 18, so the rider still had to go 0.05 more miles before getting the XP. At some point this was changed, but Iâm not sure how to change the disconnect you are seeing without making each course total to even tenths of a mile.
Jeff, I get that there might be a little bit of error in the conversion or calculations of remaining distance but if you look at those screen cap images, we arenât talking about a tenth or a mile or so⌠My first screen cap the cumulative distance added up to 16.6 miles! Thatâs damn near two miles worth of distance âerrorâ at that point in his ride⌠Thatâs a lot more than a small rounding difference.
What it seemed like to me when I was riding and first noticed and started paying attention is that it seems like the distance ridden is correct but the distance remaining is actually only a fraction of the true distance remaining⌠Almost like a tenth of a mile remaining is actually . 15 or. 2 of a mile⌠Yiu actually have more distance remaining than is reflected but at some point, that fractional difference seems to decrease⌠Itâs like itâs proportional or something. Very odd.
Yup, I am totally on-board with that you are saying. I was specifically referring to why the âhave goneâ counter doesnât increment at the same time the âto goâ counter decrements.
Gotcha and you might be rightâŚit could be related to âprecision of displayâ but it seriously seemed like a good 6 to 8 seconds elapsed after the âhave goneâ ticked over a tenth, before the âto goâ counter also ticked over a tenth. That just seems like an inordinate amount of time for those two to sync up, unless thereâs some other sort of âscalingâ going on in the background.
One thing I may do is go look up videos for MAAP events and see if the same thing happens with a rider that is using metric. If the same thing isnât happening with folks setup for metric, then itâs GOT to be something to do with the way Zwift emulates the conversion from metric to imperial, with the bias set to metric initially and a conversion over to imperial.
At 20 mph it takes 9 seconds to travel .05 miles, so itâs certainly possible you could see that much of a disconnect, depending on your speed.
Itâs doing it in metric too.
Watched this guyâs video for MAAP stage 2, heâs setup metric. That stage was Out and Back Again course, which is 42.1 KM and sure enough, as I scrolled forward in thru his video, total went from 38.5 at one point to 39.1 later on, to 40.5 later still and then he finished with the ride registering 42.7 up at the top, but the event result splash screen that popped up showed 42.2. That in and of itself is weird to me, unless Zwift somehow converted part of his warm up in the pen area to distance traveled (his video didnât show any warmup so not sure if he went right into the pens, or when he logged in he started riding in the spawned world first and then joined event or what, but stillâŚI guess the point is, even with the metric setting, early in the event, the total of distance ridden + distance remaining is considerably off from the eventual event distance total and as you continue on, that amount of error does decrease.
OoopsâŚmeant to post the videoâŚ
https://www.youtube.com/watch?v=WKITiAq6n8g
it might be that there are variations depending on where your avatar is on the road, too. for example, if you are going around a turn, you travel less distance on the inside of the turn than the outside.
so, you might get more distance âdoneâ on the outside of a turn than you get shaved off âremainingâ â especially if âremainingâ is an average of riding in the middle of the road for the whole route.
On the ETA calculation: it appears to be based on a simple extrapolation of current power, although even with a surge in power at the end, I often underperform ETA estimates.
I think there are better approaches:
- extrapolate based on the average power so far in the segment. This would be less prone to the issue of ETA blowing out when power is reduced to accommodate reductions in grade: it is normal when climbing, especially when trainer difficulty is set relatively high, to reduce power on flatter portions or descents. This is also smart pacing since power has the greatest impact when the grade > 6%.
- extrapolate based on the results of prior riders. Zwift has access to massive data and it would be straightforward to produce a look-up table of typical results for time to the finish of riders who reach a certain point with a certain average power.
I prefer the first approach. But assuming the rider will sustain present power is generally a poor prediction. Of course, with all the data, the accuracy of the two algorithms (average versus present power) could be compared.
However, it is ETA not SAETA (super accurately estimated time of arrival).
Youâre right â as long as you know what it is, itâs fine. Itâs not actually estimated arrival time. Itâs âarrival time extrapolated from present powerâ, or whatever it is.
Iâve been wondering about this too. I do intervals when I use Zwift and so I ride at a very steady power value and then drop back to another very steady power value between efforts. What I notice constantly is that the ETA is always aspirational. For example, Iâm riding at 340W during a 5 min interval and an ETA appears as I approach a KOM or loop finish, letâs say my ETA is estimated at 2:40. Riding at 340W, I expect to get the finish at 2:40 or very close to it, but what happens in reality is that over those few minutes, the ETA slowly gets later, so after 1 minute, itâs 2:48. Then after 2 minutes, itâs 2:56 and so on and then when I get to the finish, itâs 3:04, despite the fact that Iâve been riding at 340W the whole time. It seems to me to slip about 6-8 seconds per minute. If the calculation was based on current power, which it would appear to be, then I canât understand why it slips so much unless the calculation includes a ârush to the finishâ allowance where Zwift is expecting you to gradually increase your power output in an effort to get a good time. It definitely reacts to your current power coz when I finish an effort and drop back to 220W for example, the ETA updates quickly to that change but the slip continues to happen.
Thatâs really interesting. Itâs possible it IS based on present power, but is buggy, for example the speed estimate is not based on the same physics as riding is, or else it fails to use the detailed profile. Or itâs based on current power, but they add a bit to the power, to motivate you. Iâve also noticed it tends to fade no matter how hard I try.
Iâve noticed ETA time also goes down as I approach and pass slower riders, and back up after passing. I assume this is adding/removing the draft benefit calculation. I find it annoying to see the time go back up after passing - I always seem to be on my own for the final sprint to the finish.