Cycling race predictor · one-day race

Il Lombardia settled

One day, one result: the production stack priced the whole field under 1 course reading, against the market's line where one was captured. A one-day race is its own best reference — the main reading is built from this race's own recent editions.

Raced 10 October 2026 1 reading 174 riders priced models retrained 72bc1bd857 market snapshot markets_0403.json

The fork

1 reading of the same road

Course profile is an input the model cannot see from a map — it is set from reference races. The main reading averages this race's own last editions, so the terrain and the kind of rider it selects come from the race's own history; any alternate reading swaps in an archetype set to ask what a different day would do to the same field.

Own history

Il Lombardia on its own recent editions
sprint0.00
mountain0.25
hilly0.00
rolling0.74
break0.01
TT0.00
References: Il Lombardia (2025); Il Lombardia (2024); Il Lombardia (2023); Il Lombardia (2022); Il Lombardia (2021)
The race read on its own recent history: the profile is the average of this race's last 5 editions, so the terrain and the kind of rider it selects come from the race itself rather than from an archetype.
Top 5 (blend): Seixas Paul 29.2%; Evenepoel Remco 24.6%; del Toro Isaac 20.1%; Martinez Lenny 6.7%; Pidcock Tom 3.7%

The board

Win probabilities across the heads

Blend is the production price (cascade × LambdaRank, DNF-adjusted at the pricing layer); Cascade and LambdaRank are the two underlying heads shown for the main reading. The market columns are the devigged win line, present as the information benchmark the model is scored against.

Read "Max edge" as directional, not as a price. The blend is a set of per-rider marginals and does not sum to one book — across this field each reading totals own history 127% — while the devigged market column sums to exactly 100%. Putting the two side by side flatters the model, and Max edge is inflated by about that factor. Of our heads only the LambdaRank one is natively book-preserving.

RiderTeamBlendCascadeLambdaRankMarket oddsMarket devigMax edge
Seixas PaulDecathlon CMA CGM Team29.2%38.6%20.6%4.0016.4%+12.8pp
Evenepoel RemcoRed Bull-BORA-hansgrohe24.6%24.2%19.5%4.5014.6%+10.0pp
del Toro IsaacUAE Team Emirates-XRG20.1%17.9%16.4%2.2529.1%-9.0pp
Martinez LennyBahrain Victorious6.7%5.1%5.6%67.001.0%+5.7pp
Pidcock TomPinarello-Q36.5 Pro Cycling Team3.7%1.4%3.4%11.006.0%-2.3pp
Ayuso JuanLidl-Trek3.4%2.5%2.9%151.000.4%+2.9pp
Pellizzari GiulioRed Bull-BORA-hansgrohe3.0%1.2%2.8%81.000.8%+2.2pp
McNulty BrandonUAE Team Emirates-XRG2.0%1.9%1.6%67.001.0%+1.0pp
Johannessen Tobias HallandUno-X Mobility2.0%1.1%1.8%201.000.3%+1.7pp
Mas EnricMovistar Team2.0%1.0%1.8%51.001.3%+0.7pp
Roglic PrimozRed Bull-BORA-hansgrohe1.9%1.3%1.7%81.000.8%+1.1pp
Rondel MathysTudor Pro Cycling Team1.9%1.1%1.7%151.000.4%+1.5pp
Ciccone GiulioLidl-Trek1.7%1.0%1.5%21.003.1%-1.4pp
Onley OscarNetcompany INEOS1.4%1.1%1.2%41.001.6%-0.2pp
Scaroni CristianXDS Astana Team1.4%1.3%1.1%n/a––
Piganzoli DavideTeam Visma | Lease a Bike1.3%0.8%1.1%41.001.6%-0.3pp
Van Eetvelt LennertLotto-Intermarché1.1%1.4%0.8%126.000.5%+0.6pp
Tiberi AntonioBahrain Victorious1.0%1.0%0.8%251.000.3%+0.8pp
Il Lombardia on its own recent editions — top 30, all heads
#RiderBlendCascade LambdaRankPodiumTop 15 Market odds
1Seixas Paul29.2%38.6%20.6%57.5%84.1%4.00
2Evenepoel Remco24.6%24.2%19.5%51.7%81.5%4.50
3del Toro Isaac20.1%17.9%16.4%38.5%73.4%2.25
4Martinez Lenny6.7%5.1%5.6%17.6%52.1%67.00
5Pidcock Tom3.7%1.4%3.4%6.6%36.1%11.00
6Ayuso Juan3.4%2.5%2.9%9.3%37.8%151.00
7Pellizzari Giulio3.0%1.2%2.8%5.5%32.3%81.00
8McNulty Brandon2.0%1.9%1.6%6.7%29.4%67.00
9Johannessen Tobias Halland2.0%1.1%1.8%4.7%32.6%201.00
10Mas Enric2.0%1.0%1.8%5.3%35.7%51.00
11Roglic Primoz1.9%1.3%1.7%7.4%35.9%81.00
12Rondel Mathys1.9%1.1%1.7%5.5%33.9%151.00
13Ciccone Giulio1.7%1.0%1.5%5.3%41.2%21.00
14Onley Oscar1.4%1.1%1.2%4.7%28.5%41.00
15Scaroni Cristian1.4%1.3%1.1%4.9%30.3%n/a
16Piganzoli Davide1.3%0.8%1.1%6.5%34.6%41.00
17Van Eetvelt Lennert1.1%1.4%0.8%4.0%29.6%126.00
18Tiberi Antonio1.0%1.0%0.8%5.8%19.5%251.00
19Jorgenson Matteo1.0%1.5%0.7%9.8%31.3%34.00
20Arensman Thymen0.8%0.7%0.6%2.8%17.4%251.00
21Buitrago Santiago0.8%0.8%0.6%2.6%22.0%251.00
22Hindley Jai0.7%1.1%0.5%2.4%15.3%601.00
23Yates Adam0.7%1.1%0.4%2.4%17.0%151.00
24Christen Jan0.6%0.8%0.4%3.8%22.4%201.00
25Izagirre Ion0.5%1.0%0.3%1.6%18.3%401.00
26Storer Michael0.5%0.7%0.3%3.6%25.1%81.00
27Widar Jarno0.4%0.1%0.4%1.3%18.1%41.00
28Omrzel Jakob0.4%0.4%0.3%2.1%12.3%301.00
29Dunbar Edward0.4%0.5%0.3%1.1%9.5%n/a
30Fancellu Alessandro0.4%0.2%0.4%1.9%11.9%251.00

After the race

Result — won by Seixas Paul

PosRiderTeamOwn history win p
1Seixas PaulDecathlon CMA CGM Team29.2%
2Mas EnricMovistar Team2.0%
3Ciccone GiulioLidl-Trek1.7%
4Evenepoel RemcoRed Bull-BORA-hansgrohe24.6%
5McNulty BrandonUAE Team Emirates-XRG2.0%
6Pidcock TomPinarello-Q36.5 Pro Cycling Team3.7%
7Bilbao PelloBahrain Victorious0.1%
8Scaroni CristianXDS Astana Team1.4%
9Zana FilippoSoudal Quick-Step0.1%
10Rondel MathysTudor Pro Cycling Team1.9%

Scoring — probability given to the actual winner

ReadingBlendCascade LambdaRankMarket devig
Own history29.17%38.62%20.63%16.38%