How the Race Was “Won”: Questionable Officials at Green to Screen

On November 3, I did my first-ever race on New York’s Green to Screen route. Having ridden several laps of this route in previous Thursday Pizza Burner rides, I knew it was flat and fast, with a good portion of the “climbing” being the escalators up from the subways that aren’t really climbing at all.

I also knew roughly where I stood against my competitors, having raced with them several times in this round of the ZRL. I knew there were strong riders in the group, but I was one of them. With a real chance at the podium this week, I was prepared to go all in for the possibility of a rare win.

So you could say I went into this race with high hopes. And while I ended with a good result, it was sort of… tainted? But I’m getting ahead of myself…

A Messy Round 1

The first round of Zwift Racing League’s 2026/27 was, I think, the messiest in ZRL history.

It began with race 1, the first-ever “Race of Truth”, which quickly devolved into more of a “Race of Confusion”. TT bikes were supposed to be disabled in this draftless event, but they weren’t. If even one rider had a TT bike in the event, it basically made all the results useless. So this race got annulled for everyone. (Happily, I wasn’t able to do this race.)

Races 2 and 3 were great. Race 4, a TTT on Watopia Figure 8 Reverse, was mostly fine, apart from people’s powerups being taken as they rode through the downtown Watopia arch. (This is a bug related to assigning 250 XP bonuses to lap arches.) A bummer for sure, when you were planning on getting a little help from that draft boost, but it’s not a race-ending/breaking issue.

Then race 5 on Green to Screen imploded as something in Zwift’s event join flow broke for a couple of hours at peak race time. This wasn’t a WTRL issue – it affected all events on Zwift. But it meant some riders (including myself) weren’t able to join the start pens, leading to races with a reduced number of riders, with some just ending the race because they knew it was a waste of time.

Race 6 to Spiral Summit seemed to go off without a hitch. But then WTRL had to figure out how to re-run race 5 (which they were now confusingly calling race 4). They put it to a vote of team managers, and my division decided they wanted to race it again.

What a mess. Here’s hoping for a smoother round 2.

The Warmup

I got on the bike with plenty of time before the 11:15am PST race, giving me a full half hour to wake up the ol’ ticker and spin up the legs. I was already one dirty chai and a few pieces of Neuro caffeine gum into my warmup by the time I got on the bike, so I was nicely caffeinated. I had also rubbed PR Lotion into my legs to keep the burning at bay.

My Warmup “Stack”

I rode my Factor Hanzō TT bike during the warmup, since I’m working on upgrading this weapon and need to log as much time on it as possible. (Currently working on stage 4, which requires 480 minutes!)

The Start

We jumped out of the Prospect Park start pens, and the race was on. But this was one of the most chill race starts I’ve ever experienced. Nobody wanted to push the pace or attack, as the start was slightly downhill and there was no need to contest the sprint segment we rolled through around 2.5km in. I averaged just 230 watts (2.8 W/kg) for the first 6 minutes.

The Hill KOM would be the first test of just how spicy this group was going to be. It didn’t take long to see that the group wasn’t interested in watt-maxxing the hills, even though I did get a PR on the segment (54 seconds at 414 watts). With only 21 riders in the pack, and two big animators (Mahot and Miller from TBR) not in the mix, it was looking like I’d be able to sit in until the final minutes of this race without expending too much energy.

Which was exactly what I wanted.

A group of cyclists riding in a virtual cycling game, with data overlays displaying speed, power, heart rate, and a leaderboard on the screen.

The Middle

With the early race jitters out of the way, I settled into riding efficiently, knowing we had another ~15km before the biggest obstacle of the day: the Brooklyn Bridge KOM. While I could have attacked during this middle section to “make it interesting,” I’m not one for long-range attacks, as I don’t have the pure steady power to stay away from a group. For me, attacking in the middle would mean:

  • Tiring my legs needlessly before the biggest climb of the day
  • Making others work to catch me – but nobody would have to work as hard to catch as I’d have to work to attack solo
  • Maybe dropping a few of the weakest riders in the group, but not those I’d actually be competing with at the pointy end of the race finish

So I stayed in the draft, usually just a bike length or two from the front. The pack would stretch out when we hit any sort of a rise – including the Manhattan Sprint climb and the Times Square loop at the halfway point – but I wouldn’t panic. I tried to stay in the draft, trusting the group would pull back the one or two riders who might be just off the front.

I got an aero powerup at the Manhattan Sprint, which is the powerup I wanted for the finish. So I decided I’d hold onto it for the finish, unless the Brooklyn Bridge KOM section unexpectedly blew up and I needed to use it to grab back onto the group.

Perhaps the most interesting moment of the race (apart from the finish) came at 18.8km, when Engledow (INC) attacked as we entered a subway. Van Gestel (Velosity) followed. I considered jumping as well, but felt it was too early, with almost 10km to go. So I messaged:

A digital cycling race taking place on a virtual Times Square course, showing a group of riders from behind with race statistics, a leaderboard, and a mini-map displayed on the screen.

In my mind, it was up to the teams who were both 1) competing for the overall league win and 2) had numbers in the group to do the work to pull back attacks. A dangerous assumption, perhaps? But it worked – one rider (S.T. from LeVeL) put in a good dig on the front, and I followed his wheel to close down the attack. Everything came back together just a minute or two from the Brooklyn Bridge KOM.

With 20 of the original 21 riders still in the front group, the race had clearly been an “easier” effort. But as we hit the slopes of the Brooklyn Bridge, it was time to work. I buckled down and kept the power up, wanting to hold onto that aero powerup. While the effort was hard, I wasn’t quite on my limit. It was the perfect effort, really: fast enough that no riders could jump off the front, but also a segment PR for me (3:16, averaging 337 watts). We dropped 4 riders over the top.

The Finish

As we all caught our breath after the climb, everyone was mulling over their options for the finish. Personally, I didn’t want to leave it to a bunch sprint. But I didn’t want to instigate a long attack, either. So I decided to follow any riders who chose to go long, hoping to benefit from their draft then counterattack over the top.

And that’s exactly what happened – S.T. (LeVeL) came up from the back of the pack, feather powerup flying high as he jumped hard just after the final escalator with 1.5km to go. I hesitated a moment more than I should have, then jumped. S.T.’s numbers immediately went orange, and so did mine! We quickly gapped the rest of the group, but S.T. was flying, and I was so far behind that I was barely receiving any draft benefit.

I kept pushing, knowing I couldn’t survive in the wind all the way to the line. With 700 meters to go, I finally got in S.T.’s draft. He was still pushing hard, so I took a moment on his wheel to survey the situation. With 400 meters to go, two riders had nearly chased us down, while the rest of the group was strung out 4-5 seconds back.

I no sooner thought, “I’ll need to grab onto any riders who come through,” when Adam Riley (TBR) absolutely blasted past me! I went all in (again, a bit too slow on the draw) as the second chaser (Mine from LeVeL) came around. I activated my aero powerup. 200 meters to go.

Mine (LeVeL) and I were neck and neck for a few seconds, then he dropped off. I could see I was closing the gap to Riley, but had I left it too late? Head down, I just put everything I had into the pedals, glancing up as I crossed the line to see Riley finishing around a bike length ahead:

A split-screen view showing a cyclist riding on an indoor trainer in a small room on the left, and a first-person perspective of a cycling simulation game displaying ride metrics and race rankings on the right.

But when the results popped up, this is what I saw:

Cycling race results screen showing a finish time of 42:57, power data, and a leaderboard of the top five finishers.

I’m not sure how that works. How Zwift’s servers decided that Riley finished second, with a time gap to me of 0.00, is above my pay grade. But I celebrated the win, even though it didn’t quite feel like one!

See my ride on Strava >

Watch the Video

Takeaways

That finishing effort took everything I had, regardless of the final result. I barely beat my all-time 2-minute power PR (450 watts), and I know some other riders did the same.

Riley, I, and others commented on our Strava activities after the race, with everyone basically in agreement that Adam was robbed. But there’s nothing you can do to “appeal” this sort of result, as far as I know. What Zwift’s server sees is what it sees, and that doesn’t always match what our clients show.

This is, of course, something we’d all love to see Zwift fix. It’s an issue that has been around since official events came to Zwift over a decade ago, and while, thanks to changes Zwift made a few years ago, what we see on screen more closely matches what the server sees, it’s still far from perfect. This race is probably the most egregious example I’ve seen in a while, with seemingly everyone in the race seeing Riley cross first.

Props to you, Adam. I would give you the win if I could, as you had me by a bike length. I figure the next-best thing I can do is write this post, tell the story of what happened, and push Zwift to improve their systems so this can’t happen.

This was the last race of the round for us, and while my team’s overall result wasn’t great, I think it’s the best set of ZRL results I’ve ever had individually. So I’ll look on the bright side! I finished as the overall points leader on WTRL’s cool new “League Stats” tab:

Rider leaderboard displaying statistics for 7 teams and 47 riders, including rank, rider name, team, number of races, total points, and average points per race.

Your Comments

How was your Green to Screen race? Ever lost (or won) due to an official who clearly needed their eyes checked? Share your thoughts below…

Eric Schlange
Eric Schlangehttps://zwiftinsider.com
Eric runs Zwift Insider in the spare time he finds between riding his bike and managing various business interests. He lives in Northern California with his beautiful wife Monica. Follow on Strava
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted

Get Started on Zwift

Newest Featured Posts

Support This Site

Write a post, shop through us, donate or advertise. Learn more

NEWSLETTER SIGNUP

Zwift tips and news every 2 weeks! Click to subscribe.

More Posts