Race Category Enforcement Needs Work

Any updates on CE progress @James_Zwift ?

I submit this race from today as an example of a failed system.

I entered B grade. A young professional cyclist also entered B grade. They then, unsurprisingly, ruined what was a fair race. They were DQd on Zwift Power, but only after they’d ruined the race.

If the rider had no current data, why were they allowed to enter B grade?

An effective system has to restrict people without current authentic data from ruining otherwise fair racing. Anything less will only result in this sort of poor experience continuing to happen. It’s 2022, we’re going to Mars soon. This is not that complicated.

If a rider has no current data, only allow them to race in dedicated qualifying races. Once they have qualified, allow them to enter community racing. This seems a logical solution.

Additionally, if the system fails a back up system of in race protection should immediately ghost a rider if they significantly break category boundaries. The rider simply becomes invisible to other riders, they can continue to race, they just no longer affect the race. This also seems like a logical solution.


Can you explain how he ruined the race? He beat you, and was well clear of the pack. No doubt the race was different due to his presence, but how was it ruined? What should have happened, that didn’t, and vice-versa?

1 Like

if i had to guess i assume p1 probably held the track rider’s wheel long enough to hold the OP off and nicked his trophy

OP, the rider would have had current data from training or z1 rides but had not ridden at an intensity high enough to put him in A until that specific race. if the CE system is working as intended he would only have been able to enter A if there was no recent data at all. it’s bad luck that you ran into him in that specific race but it is what it is, he will be restricted to A in his next race

Unless his next race is more than 2 months from now.

1 Like

I will just leave this here as well. :crazy_face:

Sam, no data or is his profile now private? If ce IS working possibly he has done a warm up ride to give him B category but doesn’t show on ZP or his activity history - because it’s private.
That to me is one of the many problems with ce ( better than before but still not as good as it could be ).
This chap knows he is a good A but has shown up a limitation of the system. ( he has raced 4 times in 18 months - this is a bit of fun training for him)
Any system will find it difficult to differentiate between somebody not really putting in an effort ( over whatever period of time the system chooses) and somebody who is struggling to find their previous form.

agreed on all counts but at the very least there is now a 60 day enforcement period instead of none at all. an A rider could ride D races every day and get disqualified from them all with no real limitations if they really wanted before CE


James… I’m not sure what your intent is with that comment.

I don’t care about the win etc. It’s a Zwift race, one of hundreds a day. I care about the fairness. I obviously enjoy a race more when it ‘feels’ like we’re all racing relatively equally. As I imagine does nearly every other human on Zwift…

There was a race, it was marked B grade. An actual professional cyclist entered it. HE WAS NOT B GRADE. He proceeded to smash everyone, a rider managed to draft him for a while. Said rider won easily. Meaning the rest of us were all a little frustrated that the currently designed system didn’t stop the uber kid from massively sandbagging.

It simply removes some of the fun when a race win is decided two minutes into a race. This seems obvious.

I’m merely pointing out an definitive flaw in the current system. I hope that something can be done to prevent such issues in the future.

1 Like

I wonder though if the top finishers in the B race, as a result of the ‘infraction’, ended up with times and average speeds higher than they would have otherwise had?

CE is using all Zwift data, public and private.

While I have no idea what criteria ZwiftHQ are using to decide what qualifies as a decent 2min+ effort to allocate a rider to their first provisional CE pen after a lack of data over the past 60 days, I would hope they are comparing the power and heart rate data for that duration against historic efforts by the rider, to give the new effort some validity where possible.

I quite enjoyed my first multi lap race at Rooftop Rendezvous crit on Friday lunch, we set a fairly brutal B pace and I forgot the descents aren’t quite consistently steep enough to get much respite wih some super tuck drafting. Had no idea I was on for my best ever 20mins effort, if I’d been able to carry on for ~60secs after the finish line.

1 Like

i don’t wear a HRM unless i’m obligated to for a race and i’m probably not the only person on earth who trains without a HRM whenever possible. seeing my HR makes me anxious as sh*t so I prefer to test my fatigue with a vertical jump or a quick peak power 3s sprint during a warmup

I just wanted to know how the race was ruined (and also perhaps further, to explore the argument that a single poor race means that the system has fundamentally failed in some way).

If your view is that any race that isn’t a group ride ending in a bunch sprint is automatically ruined and furthermore proves that the system has failed, then (a) I disagree but more importantly (b) you will view all systems as failing, because there will inevitably be some races where the strongest rider is significantly stronger than the rest.

I’ve tried to provoke this discussion a few times before but people seem remarkably unwilling to discuss what attributes they think a successful racing environment needs to have. They won’t usually say they want every race to be a no-drop group ride ending in a bunch sprint, but just about every criticism they make points pretty strongly towards that conclusion. It’s not only an unachievable goal, but (in my opinion) a fundamentally misguided one. We can debate the opinion part of that of course, but it would require someone else to post an opinion that wasn’t so vague as to be meaningless (eg “I want fair racing”).


The CE system looks at the last 60 days of data and it has no way to know the person’s true potential (no system can do that without data).

But that cyclist wasn’t forced into B. He chose B, and he could have chosen A.

With CE you can’t pick a lower category that what the system determines.
So what you want is for people to do the right thing when choosing a category, if that was the case we would not need all these checks and balances .

Just look at any WTRL race and you will see how people game the system.

1 Like

It would be a good enhancement to just put anyone granted WorldTour pro kit in game into the A category. Their contract is all we need to know about their power. No data required.


I wasn’t intending to debate how CE works. I absolutely understand how it works. I’ve been vocal about introducing it, or something like it, on these very forums for years.

The point I’m making is the current system is flawed. Not in how it categorizes racers etc, but that it allows a rider with no power data to enter a race, they hypothetically shouldn’t be in. Be that an A in a B, or a A in a D.

With thousands of users, thousands of new users, this will continually be a problem. It simply needs addressing.

It is such a simple solution. I’m stunned there’s even a debate on it. Just do not allow any new racer to enter community racing until they are categorized. It’s dead easy. They can only enter say a Q grade race. A qualifying race. Once they have done that. Let em rip.

I generally agree with you James, on most points. I am merely commenting on my experience of the current system. Given the rules of the current system, in that we have categories, then without strictly enforcing them, what’s the point of having them?

In terms of racing, I don’t care if a stronger rider wins, that’s obviously going to happen regularly. The category boundaries being fixed is a terrible idea in general. They need to be somewhat flexible. So, sometimes your top of the cat, sometimes your pack fodder.

The race ending in sprints etc, well that ain’t cat boundaries, that’s a game physics problem. I’ve repeatedly post that in my opinion, that is the single biggest issue with Zwift racing after sandbagging. Fix the game physics and races will be more dynamic.

Zwift have post their future racing outlook and it generally looks very positive. However, I strongly suggest that they address the game physics, particularly for racing. I feel that will have the greatest influence on improving race dynamics.

Until that’s done. All I’m saying is. Enforce your current rules.

If you have no data on a rider, how on Earth can you let them self select their category. As this rider clearly demonstrated. A portion, likely greater than you’d think, will either get it wrong or intentionally sandbag.

I understand that they then get the 60 day enforcement. Some help that is…

DQing people after they ruined a race worked well previously did it?

In my opinion, having a vastly stronger rider in a race does essentially ruin the race. If that racer is so much stronger that they simply ride off into the sunset, why even bother racing? That’s not the experience I believe many of us are after.

Hence, categories.

Until we have a global ranking system, categories are what we have. Even after we have rankings, I suspect many will enjoy racing riders who are at least ‘similar’ in levels.

Whether that is fair, is an entirely different discussion.

1 Like

he did have power data from solo rides, because as zwift have stated if there is no data from the previous 60 days you are restricted to A by default (i’ll take their word for it because i don’t feel like taking 2 months off to test it myself). his data would probably have been z1/2 data from solo rides but the zwift app isn’t gonna know any better.

I don’t see how you could stop anyone from riding at any intensity they wanted to in these theoretical races so adding this extra barrier to community racing wouldn’t change anything if anyone was actually intending to cheat by sandbagging exactly 1 race every two months


The current CE is looking into all activities in past 60days and that is a problem…riders returning from riding summer outside will do a few group or pace partner rides and then they will enter a race in the lowest category opened. This will a big problem in late september and October.

The CE Needs Work as in the title. Now that Zwift is shorthanded on staff this will probably not be on the top of the list as they are looking at the results based CE.