Racing - Categories - Weight - algorithm

This should be for zwift developers. Something is wrong in zwift’s algorithm. I’ve zwift for less than a year and not a lof of outdoor racing experience, I acknowledge that. Nonethess, I find it weird that heavier people seem to have an advantage in flat course races but also on more hilly course races (with the exception possibly being alpe d’zwift).

I’ve participated in KCL and now on TCS league and the pattern is the same. Heavier people always seem to have the edge. Even on what can be considered hilly routes. Sorry but I don’t see that outside. Maybe is the way Categories are defined. I really don’t know. What I know is that the pattern in zwift winners is not seen on real worlds so the logical conclusion is that something is wrong in zwift (if the goal is to be realistic as possible of course)

Initially I was okay with this but as I gain more experience in zwift I find it strange and due to this I’m loosing some motivation with zwift racing.

Any thoughts? Developers, any plan?

I have analyzed this a few times before, see the chart below from Zwift power.

I have even tested this on Flat roads.
But you have to do this with events that does not have categories .
The issue we have is the w/kg categories, it skew the results slightly, people sandbag and stay in the same category. so heavier riders can put out more power while still staying in the same w/kg , therefore they perform relatively better on the flat sections.

it is not the zwift algorithm that need to be fixed (maybe a bit) but it is the way race categories is defined.
things that will make racing better:

  1. Zwift auto assign categories based on FTP and weight = no more sandbagging
  2. we get a ranking system so that if Bob B is constantly winning D cat he gets upgraded to C.

Once there is a ranking system things will be fun again.

another Plot for KCL


I’m a “heavier” rider and find the opposite. Lighter riders have an advantage on any hilly or mountainous course (as they should). But any advantage heaver/larger riders have on a flat course is minimal.


no matter our weight we all find a way to blame the software :rofl:

Gerrie - I was thinking similar that rankings should be used for determining their category. Someone who rides conservatively can easily ride under the W/kg limit and then sprint at the end for a win. As others have said, someones W/kg is not necessarily a good indicator of someone’s ability to win.


Look at the weight of the first 5 (team #1) vs the next 5 (team#2)

Also look at the amount of power the 112kg guy had to average to stay with the guy in front of him.

this was a team TT. Perfectly flat route.

I’m not saying it’s linear. Hey, I don’t know the algorithm.

But looking at the TCS there has been different route profiles but people above 80kg always seem to be the winners.

Just wanted to raise the issue so zwift looks at the data from the different races and try to see if there is a pattern regarding weight. Mixing different profiles there should be no pattern regarding weight only watts and wkg.

Or maybe the way cats are defined. They are defined based on ftp and maybe this is not a good representation of groups for the typical zwift race (below 1h).

Pedro Miguel Prego

Categories aren’t defined by FTP but watts per kg.

There are racers with really low FTP, but w/kg above 4w/kg for a B cat racers. But they fit in the Bs.

Regarding flats and hilly races… i’m 80 kg and I have to work my ass off in the hilly races to keep up with other Bs who are lighter than me.
Flats I do better, sprints are my thing, outside is the same for me.

I said FTP but was referring to an hour effort and zwift races are shorter.

It’s something for people inside zwift to analyse.

The TCS series is all on almost perfectly flat roads, I would assume 80kg of pure muscle will win an 60kg rider. Remember if it is flat weight play a small role on zwift and in real life (IRL). Look at track cyclist they are much bigger than tour de france riders.

zwiftPower use 95% of your peak 20min power to determine you category.

I know how the categories are calculated. The whole purpose of creating categories is to create groups of homogeneous people (especially in categories with lower and upper bound - C & B). It might be the case that using 95% of peak 20min power might not be a good representation or a good way to create homogeneous groups.

I’ve just discovered strava’s flybys and I went to confirm the theory that heavier people struggle with the climbing part and then recover in the downhill and on the flat. The problem is that according to the flyby that was not the case. The heavier guys who finished at the front did not lose time on the climb. They were even able to drop people with almost half their weight. Sorry to say, but this makes no sense.

When I’m a lightweight guy with a “fitness measure” (FTP is a fitness measure) that is right next to the upper bound, I should not be dropped on a climb by people 15 and 20kg heavier than me. Hey, a guy that is also on the upper bound with 30/35kg less was dropped. This is laughable. Strava’s Flyby just confirmed my theory. Either the way groups are assigned (based on FTP) or the algorithm needs to be re-worked.

I will continue to race because it’s a good workout for me. But it just lost some of the appeal.

Ride on,

I’m 113kg and always get dropped on climbs by strong riders. But in the real world I can use my additional power to drop riders with far less power on both flats and climbs. It’s all about the w/kg uphill, not FTP.

I just now saw these graphs. You say that it’s better to test in vents with no categories. I would say is the opposite. With categories you are supposedly controlling for fitness level. I would even look at quartiles within the category. Again, I would not even run a regression on this as I’d have to control for rider fixed effect and so on.

Just by looking at the top range within category and for leagues where there should be different course profiles, there should be no statistical pattern emerging in terms of who stays in top5. But again, a league that covers all the different course profiles is essential otherwise the results will immediately be biased. Looking at leagues is also importante because it’s in these that you can most likely find the same riders riding them and the effort level to be consistent across the different races.

But Gerrie, I totally agree with you that method for assigning people into categories should be different. A ranking system would make much more sense. If you win a lot in your category, you’re bumped. Simple.

O yes that is what we need and want, but I think it is still a long time before we will get it.

I assumed you were talking about the Zwift Algorithm for calculating speed based on power.
But now it seem to me you were referingin in how racing groupes is defined by w/kg groups. is this true?

What event did you use I would also like to take a look. It can be that that guy is just sandbagging.

I was generally speaking regarding either the zwift algorithm for speed based on power/etc/etc or the way groups are defined. Generally speaking, I think something needs to be re-worked. But maybe the first and easier way would be the way riders are grouped.

The event I looked up at fly-bys was last week team celebration series race, a wednesday event at 17.55 (18.55pm) in europe (depending where you live). This had a 7min hard climb I would expect that on such a climb a heavy guy on B cat (even strong B cat) would not be able to hold to a strong B lighter guy. I’d expect that later on the descend and flat to caught up but not on the climb.

Ok I looked at their power profile and let’s assume the all the races did there hardest effort on the 7 min climb, then their power profile will reflect that. You can see the first 3 riders in B had significantly higher w/kg for the 7 min section.

This is from Zwift power.

Also they are not that heavy between 13kg and 19kg more than you. They can save some energy on the flat and hammer on the climb. and that is not a hard climb.

Those guys won’t be B’s if there was a ranking system.

Yes. Good analysis!

As the way cat’s are nw defined, a strong rider in shorter-efforts (let’s say up to 10min) but “weaker” (weaker when compared to the short-distance) on 1h efforts (FTP) will be benefited in these races as they request more short-term power and are flatter than hillier.

It’s very dependent on course profile and category assignment.

Good discussion though :slight_smile: