ZRace version 3.7.0 Corsa

ZRace Rebuild New

Welcome to the new and rebuilt ZRace version 3.x Corsa! This project started as a research and study but today ZRace is used by thousands of zwifters around the world. The first version was developed with a language and an infrastructure that did not support the current demand. For this reason, ZRace was rebuilt in a new language and with a highly scalable infrastructure. Enjoy! And consider supporting the project by buying us a gel to keep our pace. : )

In case you missed our latest releases, learn more here: Releases

At the beginning of 2020, as soon as the season started, I found myself checking the list of registered competitors and categories and thinking: How can I increase my chances of having a good result? I didn’t know any of the competitors and teams. Basically, all I could do was to conduct a course recon and trust my physical conditioning.

Of course, I didn’t stop thinking about it, and in no time, I was checking each contestant’s name and searching for their information. I then discovered that USA Cycling (The American governing body for bicycle racing) has a history of all races and athletes, including amateurs and professionals. Bingo!

Learn more about the background and how I developed this project on this article: link


The data is gathered from Zwift, including race lists, registered riders, categories, routes, distance, and elevation information.

I used ZwiftPower.com to collect historical data on each rider. Information such as weight, age, FTP, among others, were consolidated in a final list of the field for further analysis.

Route images are collected from ZwiftHacks.com

Prediction Model

I am currently using machine learning and regression algorithms for the prediction model. To learn more about the prediction model, check my article about this project on this link. article


If you do not want your data to be shown in the predictions, please click on feedback and send your Zwift ID or link to your ZwiftPower profile. This way we will anonymize your data.

The App

This is a non-profit project. It was originally developed for academic and research purposes in R language and Shiny framework, but to meet the users demand it was rebuilt in Python, Pandas, Sklearn and with Django framework. Soon the link to the project's source on GitHub will be available. Collaboration for improvement will be more than welcome. License: GNU GPLv3


My name is Bruno Gregory, and I am the proud father of a young cyclist and an avid cycling enthusiast myself. Additionally, I am an entrepreneur, engineer, and a maker with a passion for data-driven products and data science. If you have any questions about ZRace or cycling, please don't hesitate to reach out to me. Suggestions and feedback are welcome.

Linkedin Strava | GitHub | Twitter |
Support ZRace

We hope you're enjoying ZRace, and if so, we kindly ask that you consider supporting our project. As an independent nonprofit initiative, we rely on your donations to cover the monthly hosting costs and the time it takes to keep everything running smoothly. Your support helps us maintain and improve our app, which is used by the Zwift community worldwide.

Rest assured that we don't include any ads or trackers in our app. Your contribution goes directly towards funding the development of new features and improving overall performance. Thank you for considering supporting ZRace, and we look forward to continuing to serve the Zwift community together.