| 24-12 | 1 | | UEC Cyclo-cross European Cup - Lombardia U23 (C2) | |
| 05-11 | 19 | | UEC Cyclo-Cross European Championships U23 (CC) | |
| 01-11 | 6 | | Cx Internazionale Firenze (C2) | |
| 29-10 | 6 | | International Cyclocross Grand Prix Cicli Francesconi (C2) | |
| 28-10 | 7 | | International Cyclocross Increa Brugherio (C1) | |
| 21-10 | 5 | | 5° Gp Internazionale Cx Citta' Di Jesolo (C2) | |
| 08-10 | 4 | | Cx Rivellino 2023 (C2) | |
| 01-10 | 4 | | 1° Gp Citta' Di Tarvisio (C2) | |
| | | Tour of Taihu Lake (2.Pro) |
| 72 | | Klassement |
| 17-09 | 73 | 72 | Stage 4Gaochun - Gaochun (72.0km) | 72.0km |
| 16-09 | 96 | 76 | Stage 3Wujiang - Wujiang (116.0km) | 116.0km |
| 15-09 | 95 | 65 | Stage 2Kunshan - Kunshan (127.0km) | 127.0km |
| 14-09 | 39 | 40 | Stage 1Wuxi - Wuxi (88.0km) | 88.0km |
| 03-09 | 43 | | Grand Prix de Plouay (1.2) | |
| 30-08 | DNF | | Muur Classic Geraardsbergen (1.2) | |
| 27-08 | 35 | | Ronde van de Achterhoek (1.2) | |
| | | PostNord Danmark Rundt - Tour of Denmark (2.Pro) |
| 71 | | Klassement |
| 19-08 | 74 | 71 | Stage 5Helsingør - Helsingør (16.0km) | 16.0km |
| 18-08 | 58 | 72 | Stage 4Kalundborg - Bagsværd (177.0km) | 177.0km |
| 17-08 | 64 | 74 | Stage 3Vejle - Vejle (209.0km) | 209.0km |
| 16-08 | 82 | 85 | Stage 2Kjellerup - Silkeborg (163.0km) | 163.0km |
| 15-08 | 80 | 80 | Stage 1Aalborg - Aalborg (169.0km) | 169.0km |
| | | Tour ALSACE (2.2) |
| 68 | | Klassement |
| 30-07 | 79 | 68 | Stage 4Ribeauville - Cernay (139.0km) | 139.0km |
| 29-07 | 83 | 64 | Stage 3Tagolsheim - Altkirch (197.0km) | 197.0km |
| 28-07 | 67 | 69 | Stage 2Vesoul - La Planche des Belles Filles (132.0km) | 132.0km |
| 27-07 | 108 | 100 | Stage 1Rust (Europapark) - Selestat (166.0km) | 166.0km |
| 26-07 | 41 | 102 | PrologueSausheim - Sausheim (4.0km) | 4.0km |
| | | Giro d'Italia Giovani (2.2U) |
| 43 | | Klassement |
| 18-06 | 66 | 43 | Stage 8Tavagnacco - Trieste (131.0km) | 131.0km |
| 17-06 | 91 | 43 | Stage 7Possagno - Pian del Cansiglio (175.0km) | 175.0km |
| 16-06 | 71 | 23 | Stage 6Pergine Valsugana - Povegliano (166.0km) | 166.0km |
| 15-06 | 43 | 21 | Stage 5Cesano Maderno - Manerba del Garda (164.0km) | 164.0km |
| 14-06 | 25 | 23 | Stage 4Morbegno - Passo dello Stelvio (118.0km) | 118.0km |
| 13-06 | 97 | 41 | Stage 3Priocca - Magenta (146.0km) | 146.0km |
| 12-06 | 63 | 41 | Stage 2San Francesco al Campo - Cherasco (151.0km) | 151.0km |
| 11-06 | 61 | 61 | Stage 1Aglie - Aglie (9.0km) | 9.0km |
| 04-06 | 57 | | Coppa della Pace - Trofeo F.lli Anelli (1.2U) | |
| | | Alpes Isère Tour (2.2) |
| 11 | | Klassement |
| 28 | | Punten |
| 28-05 | 10 | 11 | Stage 5Saint-Thibaud-de-Couz - Saint-Pierre-de-Chartreuse (161.0km) | 161.0km |
| 27-05 | 26 | 24 | Stage 4Monsteroux-Milieu - Saint-Maurice-l'Exil (182.0km) | 182.0km |
| 26-05 | 63 | 52 | Stage 3Saint-Exupéry - Colombier-Saugnieu (145.0km) | 145.0km |
| 25-05 | 66 | 60 | Stage 2Saint-André-le-Gaz - Four CAPI (144.0km) | 144.0km |
| 24-05 | 73 | 73 | Stage 1Charvieu-Chavagneux - Charvieu-Chavagneux (145.0km) | 145.0km |
| 14-05 | 10 | | Gran Premio Industrie del Marmo (1.2U) | |
| 07-05 | DNF | | Flèche Ardennaise (1.2) | 170.0km |
| | | Carpathian Couriers Race in memory of Waclaw Felczak (2.2U) |
| 16 | | Klassement |
| 21 | | Punten |
| 03-05 | 17 | 16 | Stage 5Iwonicz Zdrój - Rymanów Zdrój (136.0km) | 136.0km |
| 02-05 | 37 | 16 | Stage 4Zapora Niedzica - Podegrodzie (142.0km) | 142.0km |
| 01-05 | 17 | 16 | Stage 3Stara Lubovna - Stara Lubovna (138.0km) | 138.0km |
| 30-04 | 14 | 16 | Stage 2Bánovce nad Bebravou - Bánovce nad Bebravou (142.0km) | 142.0km |
| 29-04 | 18 | 17 | Stage 1Budapest - Budapest (4.0km) | 4.0km |
| 25-04 | 56 | | Gran Premio della Liberazione (1.2U) | |
| 16-04 | 20 | | Tr. Città di S. Vendemiano - GP Industria & Commercio (1.2U) | |
| 10-04 | 54 | | Giro del Belvedere (1.2U) | 171.0km |
| 02-04 | DNF | | Trofeo Piva (1.2U) | |
| 26-03 | 38 | | GP Adria Mobil (1.2) | |
| 19-03 | 36 | | GP Slovenian Istria (1.2) | 156.0km |
| | | Istarsko Proljece-Istrian Spring Trophy (2.2) |
| 37 | | Klassement |
| 12-03 | 60 | 37 | Stage 3Pazin - Umag (114.0km) | 114.0km |
| 11-03 | 47 | 37 | Stage 2Novigrad - Motovun (173.0km) | 173.0km |
| 10-03 | 33 | 49 | Stage 1Porec - Funtana (153.0km) | 153.0km |
| 09-03 | 80 | | PrologueVrsar - Vrsar (1.0km) | 1.0km |
| 05-03 | 66 | | Trofej Porec - Porec Trophy (1.2) | |
| 01-03 | 107 | | Trofej Umag - Umag Trophy (1.2) | |
| 15-01 | 9 | | Italian National Championships CX U23 (CN) | |