| 03-10 | 31 | | UEC Road European Championships U19 (CC) | 103.0km |
| 01-10 | 17 | | UEC Road European Championships TT U19 (CC) | 24.0km |
| | | Giro Della Lunigiana (2.1) |
| 40 | | Klassement |
| 25 | | Punten |
| 07-09 | 34 | 40 | Stage 4La Spezia - Terre di Luni (100.0km) | 100.0km |
| 06-09 | 73 | 49 | Stage 3bPontremoli - Fivizzano (52.0km) | 52.0km |
| 06-09 | 13 | 51 | Stage 3aEqui Terme - Marina di Massa (54.0km) | 54.0km |
| 05-09 | 72 | 51 | Stage 2Luni - Vezzano Ligure (96.0km) | 96.0km |
| 04-09 | 25 | 25 | Stage 1Genova - Chiavari (92.0km) | 92.0km |
| | | La Ronde Des Vallées (2.1) |
| 17-08 | 2 | 1 | Stage 2aSaint-Caradec - Hémonstoir (11.0km) | 11.0km |
| 17-08 | 11 | 1 | Stage 2bHémonstoir - Hémonstoir (104.0km) | 104.0km |
| 16-08 | 7 | 7 | Stage 1La Prénessaye - La Prénessaye (105.0km) | 105.0km |
| | | Ain Bugey Valromey Tour (2.1) |
| 70 | | Klassement |
| 14-07 | 53 | 70 | Stage 5Artemare - Yenne (98.0km) | 98.0km |
| 13-07 | 29 | 77 | Stage 4Ceyzérieu - Belley (107.0km) | 107.0km |
| 12-07 | 111 | 99 | Stage 3Hauteville - Col de la Biche (99.0km) | 99.0km |
| 11-07 | 74 | 96 | Stage 2Morestel - Serrières-de-Briord (96.0km) | 96.0km |
| 10-07 | 111 | 111 | Stage 1Torcieu - Morestel (96.0km) | 96.0km |
| 05-07 | 52 | | GP Général Patton (1.1) | 93.0km |
| 28-06 | LAP | | National Road Championships - Norway U19 (CN) | 140.0km |
| 26-06 | 1 | | National Road Championships - Norway TT U19 (CN) | |
| | | LVM Saarland Trofeo (2.NCUP) |
| 9 | | Klassement |
| 17 | | Punten |
| 11 | | Berg |
| 22-06 | 3 | 9 | Stage 4Peppenkum - Peppenkum (122.0km) | 122.0km |
| 21-06 | 33 | 9 | Stage 3bBallweiler - Ballweiler (106.0km) | 106.0km |
| 21-06 | 11 | 9 | Stage 3aAltheim - Altheim (12.0km) | 12.0km |
| 20-06 | 41 | 22 | Stage 2Sarreguemines - Rohrbach-lès-Bitche (119.0km) | 119.0km |
| 19-06 | 12 | 12 | Stage 1Elversberg - Elversberg (127.0km) | 127.0km |
| | | G.P. F.W.R. BARON - Pieve del Grappa - Possagno (2.NCUP) |
| 20 | | Klassement |
| 10 | | Berg |
| 08-06 | 22 | 20 | Stage 2Fonte - San Liberale (103.0km) | 103.0km |
| 07-06 | 16 | 16 | Stage 1aLovadina - Lovadina (2.0km) | 2.0km |
| 07-06 | 57 | 11 | Stage 1bSan Zenone Degli Ezzelini - San Zenone Degli Ezzelini (117.0km) | 117.0km |
| | | Course de la Paix Juniors (2.NCUP) |
| 4 | | Klassement |
| 13 | | Punten |
| 11-05 | 93 | 4 | Stage 4Terezín - Terezín (102.0km) | 102.0km |
| 10-05 | 3 | 5 | Stage 3Teplice - Olbernhau (112.0km) | 112.0km |
| 09-05 | 20 | 22 | Stage 2aTrebivlice - Trebivlice (8.0km) | 8.0km |
| 09-05 | 126 | 22 | Stage 2bRoudnice - Terezín (58.0km) | 58.0km |
| 08-05 | 67 | 70 | Stage 1Litomerice - Úštěk (109.0km) | 109.0km |
| | | TRIXXO Ster Van Zuid Limburg (2.1) |
| 15 | | Klassement |
| 31 | | Punten |
| 21-04 | 15 | 15 | Stage 4Riemst - Mopertingen (120.0km) | 120.0km |
| 20-04 | 16 | 17 | Stage 3aGingelom - Gingelom (8.0km) | 8.0km |
| 20-04 | 24 | 17 | Stage 3bWellen - Wellen (87.0km) | 87.0km |
| 19-04 | 78 | 97 | Stage 2Mopertingen - Rekem (98.0km) | 98.0km |
| 18-04 | 111 | 111 | Stage 1Bilzen - Hoeselt (80.0km) | 80.0km |
| 13-04 | DNF | | Paris-Roubaix Juniors (1.NCUP) | 110.0km |
| 28-03 | 35 | | E3 Saxo Classic (1.NCUP) | 138.0km |
| | | Guido Reybrouck Classic (2.1) |
| 4 | | Klassement |
| 2 | | Punten |
| 23-03 | 4 | 4 | Stage 2Damme - Damme (121.0km) | 121.0km |
| 22-03 | 22 | 22 | Stage 1Damme - Damme (11.0km) | 11.0km |
| 02-03 | 67 | | Kuurne - Brussel - Kuurne Juniors (1.1) | 122.0km |