ZRace version 3.0 Corsa

3.0 Corsa New

Welcome to the new and rebuilt ZRace version 3 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. : )


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


I am Bruno Gregory father of a little cyclist and an amateur racer and cycling addict. I am also an Entrepreneur, Product Manager, Engineering Leader and an enthusiast of Data-Driven Products and Data Science. Feel free to contact me about this project or cycling. Suggestions and feedbacks are welcome.

Linkedin Strava | GitHub |
Support ZRace

If you are enjoying ZRace, please consider supporting the project. The monthly hosting costs are substantial as the time required to keep everything running. Your donation helps pay for the development, servers, and bandwidth of an app used by the Zwift community around the world.

ZRace is an independent nonprofit project initiative. Your contribution helps to continue building the app, developing new features, and improving performance. No ads. No trackers.