Are you experiencing the virtual ups and downs in Zwift as you would in real life (IRL)? Does a 6% climb in Zwift feel like a 6% climb outside? Does an 8% descent feel like an 8% descent? Chances are, they don’t. In fact, Zwift’s default Trainer Difficulty setting flattens the climbs by 50% and the descents by 75%. While this is totally fine, if you want to best simulate your IRL rides read on to find out where you should set your Trainer Difficulty.
But first, a quick primer…
Trainer Difficulty, Gears, and Gear Ratios
Trainer Difficulty is a Zwift menu setting, from 0-100% (MAX), which affects how your smart trainer treats climbs and descents. At 100% an 8% climb will feel like an 8% climb…at 50% it will feel like a 4% climb…and at 0% it will feel like a flat road.
Interestingly, Zwift automatically halves downhill gradients so it’s harder to “spin out”. At 100%, an 8% descent will feel like a 4% descent… at 50% it will feel like a 2% descent… and at 0% it will feel like a flat road.
While the Trainer Difficulty affects how your ride “feels”, it does not affect your speed in game. Speed is based mostly on power, weight, height, and gradient.
Learn more about Trainer Difficulty here >
Gears allow cyclists to maintain a comfortable cadence when climbing and to feel resistance on descents. Most modern road bikes have two gears in the front (chainring) and 10, 11, or 12 gears in the back (cassette/cog).
For climbing, the “easiest” gear combination is the smallest chainring in the front and the biggest cog in the back. For descending, the “hardest” gear combination is the largest chainring in the front and smallest cog in the back.
The gear ratio is the number of wheel revolutions for each rotation of the crank. It is calculated by dividing the number of teeth on the front chainring by the number of teeth on the rear cassette.
For example, if the front chainring is on the small ring with 34 teeth and the rear cassette is on the biggest cog with 28 teeth, the gear ratio is 34/28 or 1.21. The lower the gear ratio, the “easier” it is to spin up a hill.
Effect of Trainer Difficulty Changes
So, what does this all mean? Well, if you take a lap around the Watopia Hilly route with the trainer difficulty set at the two extremes, 0% and 100%, you will notice the differences.
At 100%, if you’re on a Zwift route with similar gradients as your outdoor rides, your Zwift ride will “feel” more like your outdoor rides. You will likely be shifting quite a bit, using more force (legs) and less cadence (heart) on steep climbs, and feeling less resistance on steep descents.
Although the Trainer Difficulty setting doesn’t affect speed, at 100% the ride may “feel” harder and your legs may be more fatigued.
Dialing It In
The beauty of the Trainer Difficulty setting, however, comes in-between 0% and 100%. By adjusting the setting, your Zwift rides can simulate the “feel” of your IRL rides by virtually changing the gears on your indoor bike. If your indoor bike has different gearing than your outdoor bike, the Trainer Difficulty setting can offset that difference. If you’re riding a mountainous Zwift route and you need “easier” climbing gears, the Trainer Difficulty setting can do that as well.
The chart below shows you where to set the Trainer Difficulty if you want your Zwift rides to simulate the uphill gradients of your IRL rides.

Here are a few examples taken from the chart:
- Indoor bike’s easiest gears: 34 teeth in the front, 28 teeth in the rear
Outdoor bike’s easiest gears: 34 teeth in the front, 28 teeth in the rear
Are Zwift Roads similar to your IRL roads? Yes
Set Trainer Difficulty to 100% - Indoor bike’s easiest gears: 36 teeth in the front, 25 teeth in the rear
Outdoor bike’s easiest gears: 34 teeth in the front, 28 teeth in the rear
Are Zwift Roads similar to your IRL roads? Yes
Set Trainer Difficulty to 84% - Indoor bike’s easiest gears: 39 teeth in the front, 23 teeth in the rear
Are Zwift Roads similar to your IRL roads? No. Climbing Alpe Du Zwift
Desired mountain climbing gears: 34 teeth in the front, 34 teeth in the rear
Set Trainer Difficulty to 59%
In conclusion, while the Trainer Difficulty setting doesn’t make you faster, it does affect how your ride feels. Experiment with the settings to see what works best for you. But if you want your Zwift rides to best simulate your IRL rides, refer to the chart above and you’ll be good to go.
This is perfect and all that we really should be caring about TD. Thanks so much!
I’m sure most avid readers realize by now, but in order to get such a precise trainer difficulty setting, you’ll have to modify the tag in the prefs.xml file in 0.x format. So 72% would look like 0.72.
interesting how that post stripped out the tagging in the prefs.xml data. The tag you need to modify is TRAINER_EFFECT.
do have a link? i am googling and getting everything but the readout.
I’m confused. I have a Trek Domane AL5 Disc.It has a Shimano 11 cog rear cassette
but when I count the teeth the largest rear cog has way more than 28 teeth..Can someone
help me out here…
That is because of your larger cassette. I’m riding a Gravel bike with 46/30 front and 11/34 rear.
There are various constellations of gear combinations.
Mmm I’ve thought about this quite a lot and whilst what you say is correct it’s not the full story. Changing the trainer difficulty changes the whole cassette ratio so whilst at the top end (lowest gear) is as you say so are all of the other gears in the cassette. This means that using for example a 23/11 cassette at 59% means you get a 34/18 i.e a close ratio 34/18.same with all the other combinations. In conclusion the only rl simulation is 100%.
I don’t know why you have been downvoted, but you are absolutely correct. It is impossible to map Trainer Difficulty changes to gear combination changes. You have to view it simply – changing trainer difficulty reduces the gradient (but has no impact on the power to speed calculation).
Yes, it isn’t precisely a cassette swap, because it affects every cog based on adjustments to only one cog.
However:
Hypothesis:
So, think of it like a Turing Test.
I just leave mine at 100 % all the time less for the Ven Top route when I push it down to 75%.
I find it hard just like in real life riding when doing big hills.
It’s what I prefer. I know knocking it down will give me granny gearing, but I’m happy. 😁
does 100% TD on all trainers rly feel the same tho..?
and if it doesn’t affect speed, then why do I post way faster times when riding at 0-25% vs 25-100% TD? 😀 having to change gear less is a BIG advantage imo.
It may affect the power you put out. For me it’s the other way round: I’m using 80-ish % TD (paired with the Kickr Climb it would not make sense to ride at low or 0% as it would not move up and down then – I wonder if it would make sense to be able to adjust the “geometric” gradient simulation of the trainer setup separately from TD?) and I’m doing better because I push more watts in the climbing position. Lowering the TD takes away from that effect, plus the changes in load which may also affect my performance (e. g. accelerating in switchbacks…). I do not use 100% TD though to promote using a higher cadence and go easy on my knees… I realize the effect when switching back to IRL cycling where I have to shift down one or two gears in comparison.
Interesting article.
Using a small workaround, you can actually do that (adjust the gradient for the climb separately.) When lowering the TD, just change the wheelbase setting in the Wahoo app accordingly. For example, if your wheelbase is 1000 mm and you want to set TD to 50%, change the wheelbase to 2000 mm.) 😉
Fully agree. I can put out more average power with lower TD than with 100% TD or IRL. I think it’s due to power gaps while shifting and lots of micro accelerations that tires your legs.
A question about this, though. How does it affect riding workouts in ERG mode? In ERG mode and at the top of Zone 3, I’m still spinning at 50:11 on AdZ. Essentially, I’m at 50:11 whenever I am above about 90% of FTP, regardless of grade.
Erg mode ignores the gradient and focuses on the target power output. So if you drop your cadence, the resistance increases. Conversely, if you spin faster, the trainer will drop the resistance. As far as your speed up ADZ is concerned, if you are doing say 250 watts in erg mode up an 8% grade, your speed in the game will stay the same regardless of cadence/gearing.
First, if you have a workout turned on, the TD is effectively set to 0 % by Zwift. ERG mode goes further then that. While in ERG mode the trainer is adjusting the resistance so that you put out the target power at your current cadence -> it doesn’t matter what gear you are in, the trainer will always adjust the resistance accordingly to the current cadence and target power. There are some limitations to the resistance adjustments the trainer can do though and you are best to ride in the small ring and around middle of the cassette when in ERG mode. Generally, lighter gear means faster adjustments by the trainer and higher gear might mean, that the trainer cannot adjust the resistance enough for low target power (say 100 W), so you will be stuck eg. at 200+ W when in a hard gear.
No effect on your legs, which will just be taxed at whatever wattage is required by ERG.
For the hill you’re climbing, the wattage just changes how fast the scenery passes.
For those with a Kickr Climb, dropping the difficulty also affects the amount of gradient change that the Climb does. I run at 100% nearly all the time (except for AdZ and VenTop) – the radio tower is “interesting” 😬but Titans Grove is a lot of fun 🙂
As I said in my reply to C.L.F.: You can drop TD and still have the Kickr Climb give you the correct gradient by changing the wheelbase setting in Wahoo app.
While it is great that Zwift is able to make the mountains better suited for a flat oriented road bike, there is no love for making the flats better suited for a mountain oriented mountain bike. Zwift loves to show photos of people riding mountain bikes on their webpage, but I doubt any of them were on a virtual group ride spun out in their 32/10…
It would be great if you could set different difficulties for uphill and downhill – so for instance 100% for climbs to get the realistic feel of steep climbs, but 50% for downhills (so that they are actually 25% of the real gradient) so that you do not spin out and waste training time.
A lot of trainers can’t simulate very steep gradients so I’m guessing this needs factoring in?
There needs to be a setting to compensate for low geared mountain bikes. I spend 95% of my time in the top gear and even on the steepest climbs I don’t have to change down more than one or two dogs. What’s worse is that I need to spin like a maniac on descents and even on flat my cadence is way higher than real life.
It would be nice to be able to see the percent you are using for trainer difficulty. Now in the setting there are no indicators at all to show what value you have choosen. Just a flat line you can move the slider at. PC Win 10.
Finally! I’ve been saying this for years and get bashed on Facebook and other groups, “your IRL rides by virtually changing the gears on your indoor bike. “
Never understood the purpose for lowering trainer difficulty below 100%, especially with Kickr Climb. It defeats the purpose. I train and race at 100% trainer difficulty, irrelevant of the course.
Hey – if you don’t understand it I know where there is a good article that will help explain it to you. Just scroll up – it’s right here.
Depends what you want from your training. Setting it to 0% does seem pointless, but the 50% default means fewer gear changes and, depending on your set up, means you won’t run out of gears on the climbs.
There is also the trade off with 100% in that the descents feel steeper and so you can spin out and lose the ability to power down the hill. Many people like the fact that you are always pushing on the trainer, unlike IRL.
Mine is currently set somewhere around 70%. If I was training to get fit for an IRL trip to the mountains, I would definitely move it up to 100%.
My lowest gear is 39/26. I’m not able to climb the steep hills in that gear. Rather than buying some gearing that I don’t need for my physical area, I adjust the trainer difficulty so I can keep my cadence acceptable in-game. I also have a Climb, so I exaggerate the wheel base in the Utility app so I still get similar motion. I’m not trying to perfectly simulate reality as I could not actually do some of these climbs with this gearing. Hope that helps you understand why someone would change the TD setting.
Watts are watts. I’ve climbed the real Alpe d’Huez and Mont Ventoux as well as the fake ones. My trainer is set at 65% to essentially give me more gearing as I’d get when I go to the real places. Fact is, after looking at my power files for both real and virtual routes, they are astonishingly similar in power output and time. So for climbing, the real net effect is gearing, not really making the climb easier. Oh, and for the Kickr Climb, there is a config trick to get the correct gradient with a modified trainer difficulty setting.
Never understood the purpose for having multiple gears on my road bike, especially with hills. It defeats the purpose. I train and race with my old shabby single gear, irrelevant of the course.
Hmm,
to calculate the correct ratio to simulate my outdoor settings:
How to integrate different wheel sizes in the equation?
What is the assumed wheel size in Zwift?
Interesting read. My experience is that a high trainer difficulty makes undulating courses quite difficult to maintain power in a race situation and you tend to lose ground on the downhills and gain it on the uphills in this type of terrain. As a heavier rider this is the opposite of the usual situation.
I personally prefer the max level for trainer difficulty because it feels more immersive.
I just go for 100% no matter what.
Let’s petition zwift to make a special “I only ride 100%” jersey for you folks.
Thank you for the research! This is an interesting topic.
Related, I just rode Greater London Loop two days in a row to stage an informal test. With hill effect at 0% I rode 19.1 miles in 1 hour at a normalized power of 184W. On day two, with hill effect at roughly 60%, I rode 18.2 miles in 1 hour at a normalized power output of 194W. I attempted to keep myself at the same fatigue level, riding in zone 3 for as much as possible. Obviously that was impossible to maintain with the hills turned on, but evened out slightly with time spent in active recovery on descents.
I understand that you can’t derive too many conclusions from my very simple test, but it’s wild to me that for less power I went over a mile further in an hour without hills. Clearly, the ratios are not perfectly matched, and anyone of a similar power riding without hills is going to far outdistance someone riding with them on.
I love gradients! So i have it at 100% all the time, except if i’m doing a recovery ride (to prevent myself from kicking too hard)
Why is it that I find it a lot easier going uphill with trainer difficulty at 100% than it is using erg mode?
Could be that your cadence tends to drop in ERG mode? The trainer adjusts by adding more resistance and disrupts the momentum. As a spinner i tend to hate ERG for that reason, i’d rather pick my own cadence and change gear if i need more resistance. At least when higher power is required.
The hill you climb is fixed (in terms of the amount of work it takes to climb it, Work = Force x Distance).
The time it takes for you to perform that work is determined by your work rate. Power = Force x Velocity… alternatively, Power = Work / Time.
Trainer difficulty doesn’t constrain your power in any way, so you can choose how hard or how easy to go by choosing which gears to use and when to really punch up the effort and when to ease off. Since you’re in control, you are literally managing your exertion. You can make it harder if you want, but you will default to making it easier on yourself.
ERG mode forces you to a set power output. If you ease up on cadence, ERG punishes you with higher resistance. If you speed up on cadence, it will lower the force (but you’re burning fuel to pedal faster).
I’m OCD about certain things. Why do we still have to eye-ball the Trainer Difficulty setting? Why can’t we get a percentage readout as we toggle it left or right? I know there is a way to adjust it by going to docs>zwift>prefs, but come on Zwift.
Wahoo Kickr Bike – Leave at 100% difficulty and change to the gearset you want/need before a ride.
My indoor bike is a cyclocross bike with serious granny gearing (30 front 34 rear), and so I prefer to leave TD on 100% most of the time. However I’m not a particularly strong rider (definite “D” category), so on long climbs (AdZ, Ventoux, 2nd time up Innsbruck, etc) even my granny gears are too big for me to maintain a healthy cadence once I get fatigued and I lower TD to save my knees! I sometimes wish real life had that option.
I found like a 13% grade and set it up so my lowest gear read 80 rpm cadence at like 80 watts, helps you get up extreme grade climbs with a higher body weight to ftp ratios without having to skip the route; even if you’re going at 3km/h you still get the Drops
What i think i saw when doing AdZ is that you do not get the full amount of hight meters when the TD is lower than 100%. At 100% the route gives me 1061 meters of elevation, when the TD is lower you finish at the top of AdZ with less elevation.
I have a question about descending, i always feel the same resistance as when riding flats. I do not even close experience the “spinning out” on descents.. Is there a reason why descending is so hard for me?
These percentages are great. But Zwift just has the slider, so how do you know if you are on 88% or 92%. There is no way of being sure you’ve placed the slider in the correct place. Zwift should include a % bar underneath that slider.