zwift-preferences is for Windows but there is now a similar tool for macOS!

You want to make use the hidden setting with which YOU get to decide where you will be zwifting today?

You want easy access to set trainer effect (also called resistance level) before you launch Zwift?

You want to toggle fullscreen mode?

Then zwift-preferences can help you.

This script gives you access to safely modify the prefs.xml file from which Zwift reads your prefences when Zwift is launched. Notice that if you change prefs.xml while Zwift is running your changes will be overwritten by Zwift.

By the way, zwift-preferences can be used  together with zwift-login.


Windows PC with

NEW! Choose the compiled version below for the simplest installation. Then you do not have to have AutoHotkey installed on your PC.

Downloads – compiled version



Downloads – script version

Read more about the installer package.

Download individual script files to manually install the script (get both .ahk and .ini files and place both in the same folder):

zwift-preferences.ini This scripts does not have an .ini file



Mega Pretzel and Greatest London Flat

All of the different ZwiftHacks apps know about the new Mega Pretzel and Greatest London Flat routes. That because they all get the latest list of routes here from...


zwift-preferences and the Jungle Expansion

The addon zwift-preferences (Windows only) has not only been updated with the routes from the latest jungle expansion. In the future it will automatically retrieve the most recent list of...


zwift-preferences now with Three Sisters, Greater London 8, Greater London Loop, and The London Pretzel

The addon zwift-preferences (Windows only) now has all the possible route selections, including Three Sisters, Greater London 8, Greater London Loop, and The London Pretzel. The downloads are already live...


zwift-preferences now has Volcano route selection

In support of the new routes in Zwift the addon zwift-preferences now has Volcano route selection. The downloads are already live in the usual place…


Bug fix in time zone conversion + just a few other things

A minor bug in zwift-preferences in time zone conversion (when displaying data from MapSchedule.xml) has been fixed. Other changes: You can now open prefs.xml from the Other menu,  the minimal leaderboards...


More info packed into zwift-preferences

The most recent version of zwift-preferences now shows you information about the current world on the calendar (did anybody else notice the MapSchedule.xml file in the documents\zwift folder ?) and...


Now with tabs and easier installation

A cleaner looking tabbed version of zwift-preferences is now ready. Btw it supports the new Neo Road Feel setting, too. I now also offer a compiled version so you do not...


Bug fix for zwift-preferences from 2016/08/22

Finally uploaded a bug fix version for from 2016/08/22. Corrects a possible bug in earlier version of the script which meant that a choice of a London course could...


Support for World 3 London in zwift-preferences

zwift-preferences has just been updated to support the new London courses. You can now easily switch between all three courses/worlds without having to edit the prefs.xml file yourself.


Update – support for all routes

zwift-preferences has finally been updated to support the new way of storing route preferences in the prefs.xml file (was introduced by Zwift in April). Now you can select all...


22 Responses

  1. Zwift may be rolling out the choose a course option in the future, but I think the ability to vary your resistance is very helpful for riders with injuries who just want to spin around their favourite course.
    Would you consider taking pity on Mac users and releasing this for the Mac too?

    • jesper says:

      Hi Philip, I’m not sure I will be able to find the time for it. However, you can change the ‘Trainer Difficulty’ in the settings of Zwift yourself.

    • Amy Wang says:

      If you want to spin effortlessly just reduce your weight to a low number for that ride or segment?

      Yes, technically you will be cheating and ineligble for “prizes” but it will be the workout you want.

  2. George says:

    My pc antivirus software wiped your file saying it was a virus within the .exe

  3. Johan says:

    Thanks Jesper, I love it. Am able to follow nice routes now w/out having to concentrate on what turns to take where. Is it possible to do reverse routes this way too somehow?

    • jesper says:

      You can only pick the same routes which you can pick in Zwift, too. To ride a reverse route pick the normal one and start with a u-turn. Unless there are bugs in the routing in Zwift this should take you through the reverse route in its entirety.

  4. Alvaro Valencia says:

    On Zwift Preference.exe:
    what is intended for Trainer effects?
    Window: What’s the effect on Minimal UI ? and Minimal Leaderboards ?

    Miscellaneous Workouts 2 choices: Use ERG. What is ERG? Or Edit in watts
    Excuse my ignorance please

  5. James says:

    Avast is complaining that the compiled version contains Malware.

  6. De Maerteleire Cesar says:

    Hey Jesper,
    1st of all thank you for making our zwift life easier with such a piece of software like zwift preferences so now my feedback, i noticed in the new versions that the given info not matched with the chosen ride in Watopia.
    The info for the “Big Loop” must switched with the “Jungle Circuit” info
    The Info for the “Jungle Circuit” must switched with the “Road to Ruins” info
    The info for the “Road to Ruins” must switched with the “Big Loop” info

  7. Lex says:

    Where TRAINER_EFFECT number stored? its not in users docments folder file prefs.xml… i need to see what % of reality i have setted now, to be able revert to this setting, cos zwift not allow us to see it in numbers on scale (why?)…

    • jesper says:

      It is in prefs.xml in ZWIFT > CONFIG > TRAINER_EFFECT as a number e.g. 0.5

      The entry is first created when a smart trainer has been paired with Zwift (or added by ZwiftPref / zwift-preferences / manually).

      • Lex says:

        thanx, i cant find it cos on laptop i have no try with smart) – on big mashine i think it row must be now… thanx again

  8. Dewey says:

    Hi Jesper,

    I can’t get the new settings to save on the preferences page. I hit the save button and nothing happens. If I click the reload button then everything goes blank. This is for a Mac

    • jesper says:

      Hi Dewey, so we are talking about ZwiftPref here?

      First of all, what happens if you press the button ‘Open prefs.xml’ (top right)? Does it open prefs.xml in TextEdit? If it does, please copy the content and send it to me via the contact form at

      If it does not, can you locate the file prefs.xml using Finder in Documents > Zwift ?

      Finally, try to rename the prefs.xml file to something else and launch Zwift. This will create a new prefs.xml file. Does that load properly into ZwiftPref? Please send the content of that new file to me, too.

  9. Seth Perlman says:

    Can I have a friend or friends join me on the ride if I choose a different route than what is on the calendar? If they do not have this hack, will they still see me and choose to join my ride?

    • jesper says:

      They will also have to use the world hack to be able to ride with you. Otherwise they will be in the world of the day, and you will be in the world you chose.

  10. Todd B says:

    FAN.. tastic piece of work! Very cool!

    A random thought that may not be possible… Zwift opens on 1st monitor. I drag to 2nd monitor, close, change to full screen with ZwiftPref and re-open. As best as I can tell, any Windows disturbance, (restart, Zwift update, etc.) sends Zwift back to home (1st) monitor. Explored a few apps but none seem to be able to tell this app (Zwift) to always open on this screen (2nd [bigger}).

    Since you’re already dictating full screen, any possibilities of dictating monitor choice?

    Again, great tool! Thanks Jesper!

Leave a Reply

Your email address will not be published. Required fields are marked *