| | | Tour of Rwanda (2.2) |
| 2 | | Klassement |
| 24-11 | 11 | 2 | Stage 7Kigali - Kigali (94.0km) | 94.0km |
| 23-11 | 2 | 2 | Stage 6Huye - Kigali (126.0km) | 126.0km |
| 22-11 | 3 | 2 | Stage 5Muhanga - Nyamagabe (102.0km) | 102.0km |
| 21-11 | 21 | 2 | Stage 4Musanze - Muhanga (128.0km) | 128.0km |
| 20-11 | 1 | 1 | Stage 3Rubavu - Kinigi (62.0km) | 62.0km |
| 19-11 | 5 | 2 | Stage 2Rwamagana - Musanze (152.0km) | 152.0km |
| 18-11 | 3 | 2 | Stage 1Kigali - Kirehe (130.0km) | 130.0km |
| 17-11 | 3 | 3 | PrologueKigali - Kigali (3.0km) | 3.0km |
| 13-10 | 23 | | Gran Premio Bruno Beghelli (1.1) | |
| 06-10 | 52 | | Giro di Lombardia (WT) | 242.0km |
| 02-10 | 35 | | Milano-Torino (1.HC) | 193.0km |
| 27-09 | 2 | | UCI World Championship Firenze U23 (CM) | 185.0km |
| 23-09 | 25 | | UCI World Championship Firenze TT U23 (CM) | 43.0km |
| | | Settimana Ciclistica Lombarda by Bergamasca (2.1) |
| 18 | | Klassement |
| 07-09 | 17 | 18 | Stage 3Gorle - Bergamo (159.0km) | 159.0km |
| 06-09 | 19 | 18 | Stage 2Boltiere - Foppolo (153.0km) | 153.0km |
| 05-09 | 24 | 24 | Stage 1Brembate Sopra - Valtorta (168.0km) | 168.0km |
| 31-08 | 31 | | Memorial Marco Pantani (1.1) | 200.0km |
| 23-08 | 22 | | Tre Valli Varesine (1.HC) | 198.0km |
| 22-08 | 76 | | GP Banca di Legnano - Coppa Bernocchi (1.1) | |
| 21-08 | 55 | | Coppa Agostoni - Giro delle Brianze (1.1) | 198.0km |
| | | Tour of Utah (2.1) |
| 07-08 | DNS | | Stage 2Panguitch - Torrey (210.0km) | 210.0km |
| 06-08 | 80 | 76 | Stage 1Brianhead - Cedar City (180.0km) | 180.0km |
| | | Tour of Elk Grove (2.1) |
| 41 | | Klassement |
| 04-08 | 40 | 41 | Stage 3Elk Grove Village - Elk Grove Village (140.0km) | 140.0km |
| 03-08 | 49 | 44 | Stage 2Elk Grove Village - Elk Grove Village (155.0km) | 155.0km |
| 02-08 | 34 | 34 | Stage 1Elk Grove Village - Elk Grove Village (7.0km) | 7.0km |
| | | Int. Österreich-Rundfahrt (2.HC) |
| 68 | | Klassement |
| 07-07 | 123 | 68 | Stage 8Podersdorf am See - Wien (122.0km) | 122.0km |
| 06-07 | 70 | 66 | Stage 7Podersdorf am See - Podersdorf am See (24.0km) | 24.0km |
| 05-07 | 132 | 68 | Stage 6Maria Taferl - Poysdorf (182.0km) | 182.0km |
| 04-07 | 70 | 63 | Stage 5Sankt Johann im Pongau - Sonntagberg (228.0km) | 228.0km |
| 03-07 | 54 | 61 | Stage 4Matrei in Osttirol - Sankt Johann im Pongau (171.0km) | 171.0km |
| 02-07 | 109 | 66 | Stage 3Kitzbühel - Matrei in Osttirol (170.0km) | 170.0km |
| 01-07 | 48 | 67 | Stage 2Innsbruck - Kitzbühel (157.0km) | 157.0km |
| 30-06 | 81 | 81 | Stage 1Innsbruck - Kühtai (134.0km) | 134.0km |
| | | Tour de Korea (2.2) |
| 9 | | Klassement |
| 16-06 | 5 | 9 | Stage 8Hongcheon - Hanam (90.0km) | 90.0km |
| 15-06 | 27 | 9 | Stage 7Yangyang - Hongcheon (145.0km) | 145.0km |
| 14-06 | 8 | 9 | Stage 6Pyeongchang - Yangyang (184.0km) | 184.0km |
| 13-06 | 1 | 17 | Stage 5Chungju - Chungju (25.0km) | 25.0km |
| 12-06 | 39 | 26 | Stage 4Yeongju - Chungju (156.0km) | 156.0km |
| 11-06 | 4 | 26 | Stage 3Gumi - Yeongju (165.0km) | 165.0km |
| 10-06 | 65 | 35 | Stage 2Muju - Gumi (138.0km) | 138.0km |
| 09-06 | 32 | 32 | Stage 1Cheonan - Muju (172.0km) | 172.0km |
| | | Glava Tour of Norway (2.1) |
| 24 | | Klassement |
| 19-05 | 64 | 24 | Stage 5Gjøvik - Hønefoss (173.0km) | 173.0km |
| 18-05 | 28 | 26 | Stage 4Brumunddal - Lillehammer (195.0km) | 195.0km |
| 17-05 | 80 | 73 | Stage 3Tønsberg - Drammen (163.0km) | 163.0km |
| 16-05 | 99 | 75 | Stage 2Kongsberg - Skien (179.0km) | 179.0km |
| 15-05 | 73 | 75 | Stage 1Fredrikstad - Sarpsborg (190.0km) | 190.0km |
| | | Tour de Picardie (2.1) |
| 112 | | Klassement |
| 12-05 | 112 | 112 | Stage 3Nanteuil-le-Haudouin - Soissons (171.0km) | 171.0km |
| 11-05 | 115 | 116 | Stage 2Oisemont - Bailleul-sur-Thérain (171.0km) | 171.0km |
| 10-05 | 103 | 103 | Stage 1Guise - Flixecourt (190.0km) | 190.0km |
| 01-05 | 58 | | Rund um den Finanzplatz Eschborn-Frankfurt (1.HC) | 200.0km |
| 27-04 | 53 | | GP Industria & Artigianato (1.1) | 200.0km |
| | | Giro del Trentino (2.HC) |
| 40 | | Klassement |
| 19-04 | 34 | 40 | Stage 4Arco - Sega di Ala (166.0km) | 166.0km |
| 18-04 | 48 | 43 | Stage 3Pergine Valsugana - Condino (176.0km) | 176.0km |
| 17-04 | 45 | 47 | Stage 2Sillian - Vetriolo Terme (220.0km) | 220.0km |
| 16-04 | 11 | 59 | Stage 1bLienz - Lienz (14.0km) | 14.0km |
| 16-04 | 77 | 77 | Stage 1aLienz - Lienz (128.0km) | 128.0km |
| | | Tour de Taiwan (2.1) |
| 4 | | Klassement |
| 24-03 | 25 | 4 | Stage 7Taipei - Taipei (58.0km) | 58.0km |
| 23-03 | 10 | 3 | Stage 6New Taipei - New Taipei (131.0km) | 131.0km |
| 22-03 | 14 | 4 | Stage 5Taoyuan - Taoyuan (142.0km) | 142.0km |
| 21-03 | 6 | 2 | Stage 4Taichung - Taichung (118.0km) | 118.0km |
| 20-03 | 15 | 10 | Stage 3Changhua - Changhua (150.0km) | 150.0km |
| 19-03 | 11 | 11 | Stage 2Tainan - Tainan (137.0km) | 137.0km |
| 18-03 | 36 | 38 | Stage 1Kaoshiung - Kaoshiung (140.0km) | 140.0km |
| 03-03 | 2 | | National Road Championships - South Africa (CN) | 160.0km |
| | | La Tropicale Amissa Bongo (2.1) |
| 10 | | Klassement |
| 20-01 | 28 | 10 | Stage 7Owendo - Libreville (128.0km) | 128.0km |
| 19-01 | 18 | 11 | Stage 6Lambaréné - Kango (147.0km) | 147.0km |
| 18-01 | 25 | 22 | Stage 5Lambaréné - Mouila (190.0km) | 190.0km |
| 17-01 | 55 | 32 | Stage 4Oyem - Mitzic (109.0km) | 109.0km |
| 16-01 | 57 | 34 | Stage 3Oyem - Bitam (110.0km) | 110.0km |
| 15-01 | 34 | 25 | Stage 2Yaounde - Yaounde (112.0km) | 112.0km |
| 14-01 | 15 | 17 | Stage 1Bitam - Ebolowa (149.0km) | 149.0km |