Home Blog Page 37

How the Race Was Lost: ZRL Powerup Roulette on Countryside Tour

8

How the Race Was Lost: ZRL Powerup Roulette on Countryside Tour

This week’s ZRL scratch race was the longest of Round 3, with A/B teams completing 3 laps of Makuri Islands’ Countryside Tour for a total of 47.8km with 556m of elevation.

There are two key features of this route – one I love, and one I hate:

  • I love the finish, because it’s downhill and fast.
  • I hate the Temple KOM. This dirty little 7-minute monster has been my nemesis in many races.

As it turned out, my real nemesis would be the Zwift gods and their capricious powerup assignments. Or the “powerup roulette,” as I’ve decided to label it today. Read on to see how my race unfolded…

Race Prep and Warmup

The days leading up to this race saw the usual team chat on Discord as we figured out who would be racing this week and how to attack the race most effectively as a team.

Our team would feature Captain Neil, Chris, Dylan, Andrew, Enrico, and me. Additionally, and perhaps most excitingly, this week we welcomed Sarah, Neil’s wife, to the virtual team car as our DS.

What was our strategy? Pretty simple, really:

  1. Don’t push the pace on the front during the Temple KOM, because the slower the pack moves on that climb, the better it is for us
  2. Push hard to hang onto the front group over the KOM

I made two slight modifications to my nutrition/supplement routine for this race. First, I chewed an extra piece of caffeine gum, which combined with my two lattes earlier in the day meant I had 300-400mg of go-go juice coursing through my veins. I wanted to see if I’d notice the difference.

Secondly, I stockpiled two SiS energy gels for the race, instead of the usual one, just to make sure I had plenty of carbs since it would be a longer effort.

After a short warmup, in which I observed my heart rate being nicely responsive to harder efforts (thanks, caffeine!), I joined my team at the start line. Let’s go!

Lap 1

We jumped out of the Yumezi start pen and quickly headed downhill. There were 70 riders in the pack, but that number would drop dramatically by the end of the long race, which we guessed would take over 75 minutes to complete.

Sarah did a lovely job of making sure we all knew the powerup situation as we rode through the flat farmlands at a fairly leisurely pace. Since we were getting feathers, draft boosts, or aero powerups at each arch (equal probability of each), it was smart to “burn” your powerup if you didn’t have a feather yet, so you could get a new powerup at the sprint arch and hopefully have a feather in your pocket heading into the key climb up the road.

So I did just that, using my draft boost so I could spin the roulette wheel of powerups at the green arch. And I got a feather! Excellent.

The pace picked up a bit after the sprint arch as we hit the slack climb up through Village Onsen and on to the fishing village. This ~4.5km lead-in to the Temple KOM wakes the legs up, but riders typically don’t push hard, because they know the big climb is just up the road.

Soon enough we were there, turning left off the tarmac and onto the dirt singletrack of the dreaded Temple KOM. The moment of truth.

I tried to stay positioned near the front of the group, in that magic spot where you get just a bit of draft without being so far back that gaps can open up and you get stranded in a chase group.

This climb breaks up into 4 sections for me:

  1. The first bit up through the Temple building
  2. The second bit up to where it flattens out at the first bridges
  3. The final climby stretch, with its steep, straight final pitch into the left hairpin
  4. The last bit, which is mostly flat and on wooden bridges

If I can survive to the end of the second section – to that first set of bridges – I find I can usually survive to the top.

To my surprise, I found myself able to hold position consistently as we climbed toward the mystical tree. I wasn’t even on the limit! (Not that it was easy, mind you. But we’ve all felt the difference between a hard push and a max effort. Sometimes it’s only a few watts… but that’s all it takes.)

Over the top of the Temple KOM, our group had shrunk from 70 to 42 riders. A long descent followed, during which I essentially soft-pedaled for 5 minutes, letting the legs recharge for the next go at the KOM.

The Countryside Tour loop breaks down into 4 distinct sections. Here are my times and power numbers on the first lap (pulled from Strava, so times and power have some margin for error, apart from the Temple KOM which is an actual segment):

  • Flat Start: 234W (~8 minutes)
  • Lead-In climb: 290W (~6.5 minutes)
  • Temple KOM: 330W (6:28)
  • Descent: 167W (~5 minutes)
  • Full Lap: 258W (25:16)

Laps 2 and 3 would be remarkably similar. I’ll put those times below.

Lap 2

The second lap was, unsurprisingly, the chillest of the three. The big selection had already happened; it was clear nobody was chasing back on, and everyone wanted to save their legs for the third KOM.

My team had three riders in the front group: Enrico, Andrew, and myself. Dylan, Chris, and Neil were in groups behind. (Because we were hurting for riders, this was Neil’s second ZRL race of the day. So I was just impressed that he was alive!)

The second Temple KOM was the slowest of the three, which was fine with me, since I hadn’t managed to grab a feather despite my best efforts. I used my aero powerup on the first set of bridges, giving myself a bit of respite before the final push. And I survived the KOM a second time!

Sauce showed the second KOM had shrunk the peloton to 33 riders. As we chilled on the descent, I took the chance to survey the front group. We still had three riders, but unfortunately (and unsurprisingly) I saw our rivals, Team SEA, had 4 riders in the front pack. As far as I could tell, no other teams had 4 riders in front – but that’s also not easy to see with some jerseys looking like others in a churning group of 30+ riders.

The second lap’s numbers:

  • Flat start: 211W (~8 minutes)
  • Lead-In climb: 258W (~6.5 minutes)
  • Temple KOM: 327W (6:34)
  • Descent: 145W (~5 minutes)
  • Full Lap: 235W (26:27)

Lap 3

In the flat start of the final lap, I sucked down my second SiS gel and tried to seriously entertain the idea that I could survive the final climb and be in contention for the win. My pessimistic side was saying this race would be like last week, where I got dropped on the final climb. But I knew I needed to think positively, and the first two climbs hadn’t pushed me to my limit, which was a great sign.

I also had a feather from the lap arch, so I was holding onto that for the KOM, and hoping I would land either a draft or aero at the top of the KOM for use on the fast, downhill finish.

Apart from one slight attack on the flats from SZR, we stayed gruppo compatto. Everyone else seemed nervous about the final KOM as well.

Soon enough, we were there. The pace was definitely a bit higher than the previous lap, but I had plenty of virtual gears to use and kept my cadence high, where it felt like I could make good power with the least effort. Enrico put in a bit of a dig with his feather powerup on the final push, and I sat in the wheels behind, once again pushing hard but not quite on the limit.

I’d made it! Honestly, I could hardly believe it. And while I was silently jumping for joy, as we went through the KOM arch, the Zwift gods rained on my parade by handing me a feather powerup for the final sprint.

The front group had shrunk to 20 riders. Enrico was still with me, but Andrew had been dropped on the final KOM. As I spun lightly on the descent, I tried to figure out the best plan of attack for the finish. Should I use my feather at all? When should I go?

I decided not to use the feather. I figured it was a toss-up: the feather would take away weight on the downhill, which would slow me down, but it would also make me a bit smaller (in terms of CdA), so I would be a bit more aero. (Note to self: I really should test the effect of feathers on downhill sprints…)

The descent gave me plenty of recovery, and I was feeling good as I dropped the hammer with 400 meters to go, entering the right hairpin with its steep downward drop. I had my head down, hammering in a seated sprint. Glancing up, I saw there were still a few riders ahead, and the finishing arch was just peaking out in the distance.

Keep pushing!

The aero helmets and draft vans were everywhere. I hammered with everything I had, but crossed the line in 7th.

The final lap, by the numbers:

  • Flat start: 207W (~8 minutes)
  • Lead-In climb: 256W (~6.5 minutes)
  • Temple KOM: 335W (6:27)
  • Descent: 168W (~5 minutes)
  • Final Sprint: 813W for 20 seconds
  • Full Lap: 260W (26:20)

See my ride on Strava >

Watch the Video

Results and Takeaways

COALITION Delusion finished the race in 4th place, and I was surprised to see Team SEA finish second, behind ZU4R Peacock. Nice work, all!

That means we’re sitting in 2nd place overall midway through Round 3:

Personally, I was both stoked and disappointed with this race. Stoked that I was able to hang with the front group to the finish, which was unexpected. But disappointed in how the powerup roulette worked out this time around.

I analyzed my race video afterward, trying to find a mistake I could blame on myself instead of being annoyed at the universe. Should I have used my feather in the finish? Should I have held onto an aero and tried to survive the final KOM without a powerup?

(Hindsight is 20/20, of course. Knowing what I know now, I would have held onto my aero powerup for the finish, because I could have survived the final KOM without the feather.)

Powerups don’t always play a huge role in Zwift races. But this week, they certainly did. In fact, every rider who finished ahead of me triggered either an aero or draft boost in the final sprint. (The two riders who magically glided past me without powerups over their heads in the final seconds? They triggered their aero powerups at the perfect time, so they would run out with a few seconds to go…)

The final moments of the sprint, as recorded by Zwift…

That’s frustrating. While I’m typically a fan of powerups – I like the strategic element they add – I don’t like it when they’re assigned randomly on a course where they affect the outcome so dramatically. (This is why Zwift Insider’s Tiny Races have always given the same powerups to all.)

But that’s bike racing for you, isn’t it? You know the rules going in, and you try to play it as smart as you can. But you can’t eliminate all the randomness. You can’t control every factor. Sometimes the odds work in your favor. Sometimes they don’t.

Hopefully, my airing of frustration doesn’t sound like me trying to cheapen my competitors’ results, as that’s not my intent at all. They played the game well and beat me, fair and square. (Plus, for all I know, some of them may have held onto a draft or aero powerup up the final KOM, like I should have. Respect to anyone who made that brave, 200-IQ move.)

We finished with our customary team photo, featuring DS Sarah, who did a mighty fine job:

What about you?

How did your race 3 go? Did you win at powerup roulette? Share below!


Tiny Race Series – January 24 Routes – A Fresh Mix

0

Tiny Race Series – January 24 Routes – A Fresh Mix

See zwiftinsider.com/tiny for current Tiny Race details.


A Complete List of Zwift Lap Segments

A Complete List of Zwift Lap Segments

Looking for an orange jersey? Lap segments on Zwift are full circuits that, like sprints and KQOMs, include in-game leaderboards, leader’s jerseys, and HoloReplay functionality.

Below you’ll find a master list of every Lap segment on Zwift. Click a segment for details including routes using that segment, Veloviewer profiles, ZwiftPower leaderboards, and more.

Segment Map Length Elev. Gain
Bologna TT Bologna 8km (5.0 miles) 236m (774‘)
Central Park Loop New York 9.8km (6.1 miles) 126m (413‘)
Central Park Loop Reverse New York 9.8km (6.1 miles) 126m (413‘)
Champs-Élysées Paris 6.6km (4.1 miles) 39m (128‘)
Downtown Dolphin Crit City 2km (1.2 miles) 17m (56‘)
Flatland Loop Makuri Islands 12.9km (8.0 miles) 96m (315‘)
Flatland Loop Reverse Makuri Islands 12.9km (8.0 miles) 96m (315‘)
Hilly Loop Watopia 9.3km (5.8 miles) 109m (358‘)
Hilly Loop Reverse Watopia 9.3km (5.8 miles) 109m (358‘)
Jarvis Lap Watopia 4.7km (2.9 miles) 49m (161‘)
Jarvis Lap Reverse Watopia 4.7km (2.9 miles) 49m (161‘)
Jungle Loop Watopia 7.9km (4.9 miles) 82m (269‘)
Jungle Loop Reverse Watopia 7.9km (4.9 miles) 83m (272‘)
Loch Loop Scotland 8km (5.0 miles) 71m (233‘)
Loch Loop Reverse Scotland 8km (5.0 miles) 71m (233‘)
London Loop London 14.9km (9.3 miles) 231m (758‘)
London Loop Reverse London 14.8km (9.2 miles) 231m (758‘)
Lutece Express Paris 6.6km (4.1 miles) 39m (128‘)
Prospect Park Lap New York 5.4km (3.4 miles) 37m (121‘)
Prospect Park Lap Reverse New York 5.4km (3.4 miles) 37m (121‘)
The Bell Lap Crit City 2km (1.2 miles) 17m (56‘)
Times Square New York 3.5km (2.2 miles) 20m (66‘)
Times Square Reverse New York 3.5km (2.2 miles) 20m (66‘)
UCI Course Richmond 16.3km (10.1 miles) 127m (417‘)
UCI Course Reverse Richmond 16.3km (10.1 miles) 127m (417‘)
UCI Lap Innsbruck 23.6km (14.7 miles) 494m (1,621‘)
UCI Lap Reverse Innsbruck 23.6km (14.7 miles) 494m (1,621‘)
UCI Worlds Yorkshire 13.8km (8.6 miles) 245m (804‘)
UCI Worlds Reverse Yorkshire 13.7km (8.5 miles) 245m (804‘)
Volcano Circuit Watopia 4.1km (2.5 miles) 20m (66‘)
Volcano Circuit CCW Watopia 4.1km (2.5 miles) 20m (66‘)

A word about accuracy: as much as possible, we’ve used Zwift’s in-game numbers for segment length, gradient, etc. Occasionally, in-game data is incorrect; however, we will post accurate numbers whenever possible. (Strava data may differ slightly from what is shown in game as well.)

Questions or Comments?

Post below!


Nowhere Fast Episode 63 – The Random Guest Episode

1

Nowhere Fast Episode 63 – The Random Guest Episode

Episode 63 proudly embraces unpredictability with a guest who may or may not have wandered into the recording booth by accident — and honestly, that’s how the best podcasts happen. What starts as a chat devolves (evolves?) into some of the most delightful detours:

  • “Dear KBH”: A Q&A game where advice gets real … and questionable — but in the most entertaining way possible.  
  • Least Favorite People Draft: The gang takes turns unfairly ranking people who totally deserve it (and some who definitely don’t).  
  • Fantasy Draft — Best Day of Zwift Ever: Pick your dream Zwift day like it’s fantasy football — complete with picks, pawns, and plenty of exaggerated wattage bragging.  
  • KBH Storytime: A tangent that has nothing to do with bike racing — which, let’s be honest, is somehow also exactly what bike racers want.  

Expect laughs, randomness, and maybe a story that leads you to question everything you thought you knew about indoor bike racing.

About the Podcast

Nowhere Fast is a member of the Wide Angle Podium network. To support this podcast and help pay for Kevin’s gold-plated ankle weights, head to wideanglepodium.com and contribute to our advanced virtual racing research.

To keep up to date on all our real coverage of fake bike racing, subscribe via Apple Podcasts or Spotify. 


Zwift Racing League Week 4 Guide: Roule Ma Poule (TTT)

8

The fourth race of Zwift Racing League 2025/26 Round 3 happens Tuesday, January 27, and it’s a TTT on France’s Roule Ma Poule route. With a sizeable climb bookending the race, this route presents particular pacing predicaments for team time trialists!

Let’s dig into crucial segments, bike choice tips, and more…

Looking at the Route

We last raced Roule Ma Poule as a ZRL TTT back in September of 2023, but even if you didn’t race it back then, these roads are probably familiar to you.

The route totals 26.1km including the lead-in, and all categories will race the same distance. It is largely flat, apart from the climb up the backside of the Petit KOM, which will be done twice (once on the lead-in and once at the end of the race).

Here’s the route profile of Roule Ma Poule:

This profile doesn’t tell the whole story, though, because it doesn’t include the lead-in! The lead-in is almost entirely uphill, and in fact, we made a Strava segment for it:

The lead-in is 3.11km long, averaging 3.4%. It takes you from the start pens up the backside of the Petit KOM (or the foot of Ventoux, if you want to think of it that way) and dumps you off at the Petit KOM banner, which is the official start and finish line for Roule Ma Poule.

After finishing the climb for the first time, you get a bit of recovery on the Petit KOM descent before settling into your TTTrain for the flat portion of the event. Yes, you’ve got the Aqueduc KOM (0.42 km, 0.9%) to tackle, but it’s more of a sprint than a climb, with only a ~200-meter length of uphill road.

Following 17.4 flat kilometers, you will pass the start pens and arrive at the foot of the final climb. This is where teams may wisely choose to drop slower climbers as the four fastest go all-out for the line. But don’t drop your riders too soon – this is a very draftable climb, so it may make sense for them to do one last “suicide pull” before falling off.

Read more about the Roule Ma Poule route >

Bike Frame + Wheel Choice

Bike choice here is simple: go aero. (Looking at our TT performance charts, a climbing frame like the Felt IA 2.0 will save you less than 1 second on the climb vs the top aero frames, while a more aero frame like the CADEX Tri will save you ~3 seconds on the flats of this race.)

The best setup by far is the CADEX Tri frame paired with the DT Swiss Disc wheels, but you’ll need to be at level 40+ to access this sweet rig:

CADEX Tri + DT Swiss Disc wheels

If you don’t have access to this setup, check out “Fastest TT Bike Frames and Wheels at Each Zwift Level” and use the fastest TT frame and wheelset available at your level.

One more note on bike choice: upgrading your frame makes a big difference. A fully upgraded frame saves around 13 watts, or ~48 seconds per hour of riding. Read all about the performance improvements you receive from upgrades here.

More Route Recons

Many recon rides are planned each week on the upcoming ZRL route. If you’re unfamiliar with this course, jump into an event and familiarize yourself with the route! Find a list of upcoming ZRL recon rides at zwift.com/events/tag/zrlrecon.

Additionally, riders in the Zwift community do a great job every week creating recon videos that preview the courses and offer tips to help you perform your best on the day. Here are the recons I’ve found (comment if you find another!):

J Dirom

John Rice

Nathan Krake

TTTips

Successful team time trialing on Zwift requires a challenging combination of physical fitness, proper pacing, and Zwift minutiae like picking a fast bike, understanding drafting in a TTT context, and getting your frame fully upgraded.

Most ZRL TTTs are on flatter routes than this week’s, allowing teams with big pure-power riders keep speeds high straight onto the podium. While it’s still vital to ride efficiently on all the fast flat roads in this race, properly pacing the climb, especially on the lead-in, is of utmost importance. You want to push as hard as you can while still retaining all of your team members over the top!

On a course like this week’s, consider having all team members set their Trainer Difficulty to the same value so you’re all feeling the gradient changes similarly. (When one rider has it set to 100% and another 25%, the first rider may ramp up power much more than the second when a climb hits, which can make a mess of your team formation.)

Your goal in a ZRL TTT is to get four riders across the line in the shortest time possible. That means every team’s pace plan will differ based on each rider’s abilities. I highly recommend having an experienced DS on Discord directing your team, especially if your team contains some inexperienced TTT riders.

Lastly, if you want to go further down the TTT rabbit hole and plan your race more precisely, check out Dave Edmond’s popular Zwift TTT Calculator tool.

Questions or Comments?

Share below!

Nowhere Fast Episode 62 – #podgoals

1

Nowhere Fast Episode 62 – #podgoals

This one launches into 2026 ambitions with all the discipline of a rider who thinks “rest day” means “snack day.” The hosts lay out their official — yet unofficial — #podgoals for the year. Think more creative segments, more storytelling, and maybe even achieving things like “organizing the garage” or “perfecting bike hair on out-of-oven sweat.” Here’s a peek at the prime distractions they tackled:

  • Zach’s Latest Zwift Trick: Less efficiency, more spectacle — because if you’re not confusing other riders, are you really racing?  
  • Mike’s Record Attempt Fiasco: An impressively unimpressive “world record” story that somehow spirals into deeper discussions about why records should definitely involve snacks.  
  • Kevin’s McFlurry Math: A deep, scientific, completely unscientific dive into how many McFlurries equal the effort of a typical Zwift race. (Hint: still better than doing a cool-down ride.)  

This episode also features a soft launch of the Minute of Power exhibition, the spiritual heir to every idea that’s ever sounded brilliant over pizza. 

About the Podcast

Nowhere Fast is a member of the Wide Angle Podium network. To support this podcast and help pay for Kevin’s gold-plated ankle weights, head to wideanglepodium.com and contribute to our advanced virtual racing research.

To keep up to date on all our real coverage of fake bike racing, subscribe via Apple Podcasts or Spotify. 


Top 5 Zwift Videos: Alpe du Zwift, Rapha 500, and Philips Hue

As Zwift’s most iconic climb, Alpe du Zwift serves as a virtual recreation of the real-life Alpe d’Huez. In this week’s top video, one Zwifter rides the real-life climb to determine how realistic the Zwift version really is.

Also featured: videos about the Rapha 500, syncing Philips Hue lighting to indoor cycling stats, Zwift’s “FTP Builder” plan, and thoughts on the Zwift Ride after 10,000 kilometers.

Tom Bowers Cycling gives viewers a side-by-side of the virtual and real Alpe du Zwift climbs.
Can Jessica Strange finish the Rapha 500? Watch as she documents her journey on this cycling challenge.
For the longest time, Zwifters with Philips Hue lighting have wanted the ability to sync their lights to their cycling metrics. Ray, aka DCRainmaker, shares how the “LightMyWatts” app solves this issue.
Cranks and Sprints tries Zwift’s widely-popular FTP Builder training plan. Is it worth your time?
After logging over 10,000km on his Zwift Ride, Chad Rides shares an update on the setup. Has it lived up to his expectations?

Got a Great Zwift Video?

Share the link below and we may feature it in an upcoming post!

Rolling Resistance on Zwift: Crr and Power Savings of Various Wheels

Rolling Resistance on Zwift: Crr and Power Savings of Various Wheels

Zwift’s physics model includes varied rolling resistance of virtual wheels across different surfaces, so racers should think strategically when choosing frames and wheels for unpaved or mixed-surface routes like Road to Ruins and Two Village Loop.

Here’s a complete rundown of all the rolling resistance numbers and resulting wattage effects for Zwift wheelsets.

(Note: we update this page as new wheelsets are released and surface rolling resistances are changed. See the changelog at the bottom for a running list of changes.)

Zwift’s Road Surfaces

Zwift worlds use several different road surfaces. Here’s the complete list from fastest to slowest:

  • Pavement
  • Sand (introduced in the Urukazi expansion of Makuri Islands)
  • Brick (example: part of downtown Innsbruck just before the Leg Snapper)
  • Cobbles (example: Italian Villas)
  • Wood (examples: Watopia fishing village piers and bridges)
  • Ice/Snow (found only on the Radio Tower climb, as far as we know)
  • Gravel (found only on the Sgurr Summit North in Scotland)
  • Dirt (examples: Mayan Jungle, Makuri’s Temple KOM)
  • Grass (found only on Repack Ridge, as far as we know)

Zwift has built the game so each wheelset can have its own Crr (rolling resistance) value for each road surface type. So a set of road wheels may roll quite fast on pavement, but not be optimal on dirt. Just like you’d expect outside.

When Crr increases, two things happen in game: your speed drops, and resistance increases on your smart trainer.

Zwift Wheel Categories

There are three categories of wheelsets in Zwift, in terms of Crr:

  • Gravel: includes the “Zwift Gravel” wheelset plus some name-brand wheels.
  • Mountain: includes only the “Zwift Mountain” wheelset
  • Road: includes all other wheelsets (48 at the time of this posting)

See the full list of Zwift wheelsets >

Each category above has its own Crr value for each surface in Zwift, so each category of wheel performs differently across different surfaces. All wheels within a given category have the same Crr values.

Example: On pavement, Road wheels have a Crr of .004 while Gravel wheels have a Crr of .008 and Mountain wheels have a Crr of .009. This means that, on pavement, Mountain wheels will roll slower than Gravel wheels which roll slower than Road wheels.

Wheelset Crr Values

Here are the current Crr values for each wheelset category on each surface type in Zwift. I’ve included green and red text to indicate how these values shifted when Zwift modified bike performance in mid-2025.

SurfaceRoad CrrGravel CrrMTB Crr
Brick.0055.008.009
Cobbles.0065.008.009
Dirt.016.009.01
Grass.025.016.014
Gravel.012.009.009
Ice/Snow.0055.006.014
Pavement.004.008.009
Sand.004.008.009
Wood.0065.008.009

You can see why pavement feels tougher on a gravel bike than on a road bike. Because it is! The rolling resistance is doubled!

It’s also worth noting that the Crr value for road tires on pavement (.004) is quite low. We’re virtually rolling quality tires on fresh tarmac. Living the dream!

Wheelset Power Costs

If you know the Crr value of a particular tire/wheel, you can extrapolate the wattage required to overcome the rolling resistance at a particular speed. This is commonly done outdoors, and in our tests, it seems to work with Zwift’s physics as well (nice work, Zwift programmers).

Doing this shows how much of our power goes toward overcoming rolling resistance. In turn, this tells us how many watts we can save just by moving to a wheelset with lower rolling resistance.

Here are those values, assuming a 75kg rider on a 7kg bike traveling at 40kmh (24.9mph).

SurfaceRoadGravelMTB
Brick497280
Cobbles587280
Dirt1438089
Grass223153125
Gravel1078080
Ice/Snow4954125
Pavement36
7280
Sand367280
Wood587280

Now things are getting interesting. So if you’re in a race on Watopia tarmac traveling at 40kmh, and you’re on a road bike while the guy next to you is on a gravel bike, he has to put out 72-36=36 watts more than you just to overcome rolling resistance.

But if we move to the Jungle Circuit, suddenly that gravel rider has the advantage, able to keep up with you while doing 143-80=63 fewer watts!

Note: the power numbers in these examples don’t take into account additional differences that could occur based on varying rider weights, heights, drafting status, bike frame used, wheelset weight or aero capabilities, etc.

Fighting the Resistance

Of course, rolling resistance isn’t the only thing you’re feeling on your smart trainer, nor the only force slowing your avatar in game. In fact, it’s typically the least of the three factors that determine overall trainer resistance. Just like outdoors, we know that wind resistance and/or gravitational force are usually the biggest things slowing us down.


Changelog

  • Jan 13, 2026: updated Crr and Wattage table to reflect Zwift’s tweaked numbers from their sweeping March 2025 Drop Shop performance update.
  • Nov 9, 2023: updated dirt (and a few other) surface numbers based on Zwift’s v1.52 update. Also updated to mention that all gravel wheels now perform the same on Zwift.
  • Oct 26, 2023: updated gravel surface numbers based on Zwift’s v1.51 update
  • Jan 31, 2023: added data for Scotland’s new gravel surface
  • Nov 10, 2022: added sand surface data, and explained how newer namebrand gravel wheels have a different Crr than Zwift’s original gravel wheels
  • Dec 8, 2019: added gravel wheelset numbers to the tables

Training Camps for Indoor Cyclists

Training Camps for Indoor Cyclists

At the end of 2024, I was invited to join Zwift in Mallorca in April of 2025.  My first reaction was incredulity: Could Zwifters ride outside in a group without crashing? After my husband told me he would divorce me if I didn’t go, I reluctantly agreed to sign up. I knew at least that I would meet people whom I respected and counted as friends in the organizers’ community. And if need be, I would give everyone a very wide gap.

To make the trip from California worth it, I also went before the start of ZCL to ride with my COALITION teammates on a different part of the island. Riding with the women that I had known for years was fun, and when I transferred to ZCL, I thought it couldn’t get better than that.

Turns out it could. The beauty of such a large group of bikers getting together to ride without their families in tow was as unexpected as it was awesome. Each day I chose whether I wanted to ride slow, medium, or fast and whether I wanted to go for a short ride, a medium ride, or a long ride. Those crazier-than-normal bikers got to choose a long, fast ride with an after-party thrown in. Each day I got to talk to another rider from a different part of the world who also loved Zwift. The group leaders were amazing, had different backgrounds and expertise, and made the rides enjoyable for all. And everyone got just what they wanted, whether that was a soul-crushing, hours-long climb or a sampling of pastries bookended with a flat, short ride. And after the rides? No one had anything else to do, so everyone hung out.

I saw so much potential in that gathering, which was big enough to support everyone’s perfect day.  While in a small group setting, everyone has to sacrifice a little bit so everyone can get mostly what they wanted from the training camp. But in a bigger group, everyone got just what they wanted from the rides. As an extremely mediocre rider who values cookies and cocktails over a bump in FTP, I may have been an outlier in many of the groups. But I found former chef Karla to be similarly impassioned and the head of TBR (James) to be as curious about the island as me.

Even though I self-describe myself as mediocre, I also saw the potential for these days to teach me something about riding in groups. At home, I use my personal draft van, which is my husband, but I rarely follow a stranger’s wheel. I’ve always thought myself to be too old and too bad a biker to react to an unexpected brake or blind descent, but in that one week I learned that I was stronger than I thought. And I want more of it! I want to be in that position again, and this time, I want to bring some of my friends with me—friends that I am willing to brave Fox Hill three times for, for instance.

Benefits of Attending a Cycling Training Camp

Cycling camps can be awesome for so many reasons, both the stuff you can measure and the good vibes you can’t.

Increased Fitness and Endurance

Putting in sustained effort over multiple days typically results in a significant boost to cardiovascular fitness and muscular endurance. Getting intense, focused training is a massive plus. When you dedicate several days just to cycling, you can really dial in structured, high-volume workouts—something that’s tough to manage with all the usual daily commitments. Plus, pushing hard for multiple days usually gives your cardio and musclular endurance a serious upgrade.

Cycling camps are also perfect for honing your skills. You get the chance to practice things like riding in a group, descending, cornering, and pacelining in a supportive setting. And finally, you get vital exposure to different terrain, letting you take on challenging routes (think long climbs, technical descents, and varied roads) that you might not have back home.

Socializing and Community

Camps are fantastic for meeting people and making friends. You bring together like-minded cyclists from all walks of life, and that really builds a strong community feel. Going through the shared “suffering” and triumph on the road creates truly unforgettable memories. You also get insider tips and encouragement by talking directly with group leaders, former pros, or coaches who can give you personalized advice.

Making It Easy (Practical & Logistical)

Cycling camps take the headache out of everything. The organizers typically sort out all the meals, routes, support cars, and places to stay, so all you have to do is pedal. This is backed up by supported rides, which usually include a mechanic, sag wagons, and medical help. That takes a massive weight off your shoulders regarding potential mechanicals or emergencies. Finally, camps are usually set up in places with perfect cycling weather, which means reliable conditions for consistent, quality training.

Cycling camps are honestly a win-win-win situation, delivering major benefits: you get physically fitter and more skilled, you feel awesome thanks to the shared effort and achievements, and you make amazing social connections both during the rides and afterward. For the indoor crew, especially the Zwift folks, taking those technical smarts and building real-life community at camp creates stronger relationships out of the real bonds forged in game. When this motivated and organized group transitions from the screen to the open road, they’re perfectly positioned to bring a huge wave of new energy and camaraderie to the wider cycling community.

What About You?

Have you ever done an IRL training camp with Zwift friends? Share below!


How The Race Was Lost: Losing My Place in Yorkshire

5

How The Race Was Lost: Losing My Place in Yorkshire

Zwift Racing League teams headed to Yorkshire this week for a points race held on the 2019 UCI Worlds Harrogate Circuit. Over the years, this route’s sawtooth profile has struck fear into the heart of many a Zwifter, including myself. And our race was three laps long, meaning it would take us over an hour to finish.

My team (Coalition Delusion, racing in the Open Development B1 Lime Division) knew this wouldn’t be easy, and it wouldn’t be short. But you’re not a true cyclist unless you regularly run pell-mell toward the prospect of personal suffering. Let’s race!

Lap 1

73 riders left the Yorkshire start pens, quickly turning right to begin climbing Otley Road. (You’ll want to be nicely warmed up before racing in Yorkshire, as the work begins right away!) Otley Road is 1.6km long at 3.4%, a draggy climb that always seems to take longer than you’d think.

But this was a points race, and Otley Road isn’t a timed segment. With plenty of miles ahead, riders were clearly wanting to keep their powder dry. I sat in the wheels, doing the minimal work to stay in the group. I finished the climb in 3:22, averaging 3.96 W/kg.

What follows on the route is a bit of down, a bit of up, some false flat, then the lovely Pot Bank descent followed by another short climb and a descent to Oak Beck, where the Yorkshire KOM begins. Interesting things can happen on these in-between bits, but in a points race, that action is muted.

We hit the bottom of the KOM as a pack of 64, and I bumped up my power and used my feather powerup to stay near (but not on) the front if possible. New teammate Enrico was riding off the front (impressive!), so I eased even more, not wanting to give anyone a draft to chase him back (insert timely Team Jayco-AlUla reference 😜).

At the flatter section mid-climb I was positioned well, but when the second half began, lots of feathers popped, and I found myself sliding backward. By the time I rode beneath the KOM arch I had averaged 4.64 W/kg for 2:32 (tying my PR time), the pack was strung out, and I was in… well, I really don’t know what place I was in.

Rider Placement Bug

The rider list on my screen (see above) wasn’t showing my current place in the race, and I must say, I didn’t realize how much I looked at that HUD element until it was missing!

I had Sauce for Zwift up, which showed me in a group of 29… but that was a very strung-out group that was quickly breaking up.

(After reporting the bug via an internal Zwift channel, it appears that this happened to anyone running the latest Zwift version, v105, that released the morning of the race. The new version interacts with ZRL’s funky event config in an unexpected way.)

I figured the groups would come back together once we were through the sprint segment, and that is indeed what happened. By the time we finished the first lap, I was back in the front group of 28. With a 31-second gap to the closest chasing group of 5 riders, it seemed pretty clear that nobody behind would be bridging up.

Lap 2

The next Otley Road ascent was a bit more chill, taking 3:35 and averaging 3.57 W/kg. Nothing remarkable here, except for one Team Ukraine Mariupol guy, Klish, who attacked off the front. He would continue to do this on and off for the rest of the race, going off the front, getting caught, then doing it again. I’m not sure what the strategy was, but without a lot of TUM guys in the front group, I don’t think anyone was worried enough to chase him down in earnest.

As we neared the Pot Bank descent this time, I decided to put in a few hard pedal revs to go off the front and attempt a supertuck on the crazy steep descent. And it worked!

That gave me almost 20 seconds of no pedaling, which was quite nice.

Soon enough, we were at the start of our second Yorkshire KOM. This time, I had determined to save my feather powerup for the second half of the climb, where the road is just as steep as the start of the climb, but you’re more fatigued! Clearly others had learned the same lesson, as I saw zero feathers at the start, but a pile on the second bit:

This time up the KOM was definitely easier than the first. We were 8 seconds slower, and it took me 0.16 W/kg less, and I finished the climb in a much better position than the first time around, as well.

This is where my glycogen-depleted brain began to dream that I might be able to hang with the front pack to the finish. But those hopes were soon to come up against the hard wall of reality…

I would love to say that I was able to contest the sprint segment each lap, but since it was at the top of a climb, I was always gassed by the time I got there, and was only able to put in half-hearted attempts. I just hoped that my being in the whittled-down front pack would earn sufficient points.

We finished lap 2 with a front group of 18 riders.

Lap 3

As we climbed Otley Road for the final time, I was surveying the front group. How many riders were here from each team? I was happy to see that most teams only had 1-2 riders in the front, while my team and one other (SZR) had 3. That was a good sign.

We finished Otley Road in 4:01 this time, much slower than the previous laps. Fatigue was setting in, and everyone knew the final KOM would be a hard one!

I grabbed another cheeky supertuck on the Pot Bank descent, and soon enough, we found ourselves crossing Oak Beck and beginning the final KOM. It felt like the group was pushing hard up the first half, and I found myself sliding backward in the group. By the time we started the second half I was blowing up. It wasn’t that the pace was higher than previous laps. It was that my legs didn’t have any punch left. Even my feather powerup couldn’t save me.

I was dropped. 17 riders were up ahead, and I was all by myself, with the closest riders over a minute behind.

Doing whatever I could to keep pushing over the top and down the other side, I used my aero powerup on the descent in hopes that the pack would ease and I could catch back on. One rider had fallen off the group, and I caught and passed him on the climb to the sprint. (He would serve as a sort of “reverse carrot”, forcing me to keep my effort high to stay away to the finish.)

Alas, the pack never eased in those final kilometers. Teammate Andrew finished in 2nd, the best finish for our team (chapeau!), new teammate Enrico finished 5th, and I finished in 17th place, just over a minute behind the leaders.

On the plus side, I didn’t even need to sprint, because nobody was nearby.

My legs were happy about that.

See my ride on Strava >

Watch the Video

Results and Takeaways

It took several hours for the results to be finalized (not sure why it takes longer sometimes), but eventually we saw we’d finished 4th overall:

Our rivals from last season, Team SEA, took first. They’re sitting in 1st overall after two races, and we’re in 2nd.

But here’s the thing: we only had 5 riders. So we’re pretty happy with 4th this week, knowing that having one more rider finishing mid-pack might have won it for us overall. That’s not bad at all, on such a hilly route.

Personally, I’m both happy and disappointed in my performance. On one hand, I didn’t think I’d survive in the front as long as I did. But on the other hand, getting dropped so close to the finish really stings! I can’t help but wonder if using my feather earlier, or gutting it out just a bit more, or being able to see my rider placing might have helped me stay with the front to the finish.

The truth is, I probably just wasn’t strong enough on the day. But I reported the bug to Zwift via a Slack channel anyway, asking, “Can I use this to excuse my getting dropped like a hot rock on the last KOM? Please?” Happily, Zwift’s VP of Product Mark Cote said I could, and admitted that Zwift was clearly at fault for my loss:

So that helps lessen the sting just a bit. 😉

We finished with our customary Discord team portrait, featuring “shadow-Captain Neil” (at bottom) who honorably did this event twice in one day:

What about you?

How did your race in Yorkshire go? Share below!