05.12 | 20 | | | African Continental Championships - Road Race (CC) | 155 | 8 | | more |
29.09 | DNF | | | World Championships ME - Road Race (WC) | 272.2 | | | more |
28.06 | 21 | | | Mersin Mediterranean Games - Road Race (JR) | 148.5 | | | more |
21.06 | 3 | | | National Championships Morocco ME - ITT (NC) | 30 | 2 | 6 | more |
04.06 » 08.06 | | | | Okolo Slovenska (2.2) | | | | more |
06.06 | DNF | | | Stage 3 - Liptovský Hrádok › Trenčín | 225.8 | | | more |
05.06 | 89 | 107 | | Stage 2 - Stropkov › Liptovský Hrádok | 212.5 | | | more |
04.06 | 112 | 115 | | Stage 1b - Košice › Humenné | 162.9 | | | more |
04.06 | 83 | 83 | | Stage 1a (ITT) - Košice › Košice | 1.8 | | | more |
12.05 | 12 | | | Challenge du Prince - Trophée de la Maison Royale (1.2) | 148.5 | | | more |
11.05 | 12 | | | Challenge du Prince - Trophée de l'Anniversaire (1.2) | 147.5 | | | more |
10.05 | 9 | | | Challenge du Prince - Trophée Princier (1.2) | 103 | | | more |
29.03 » 07.04 | | | | Tour du Maroc (2.2) | | | | more |
| 2 | | | Mountains classification | | | | more |
| 29 | | | Points classification | | | | more |
| 26 | | | General classification | | | | more |
07.04 | 15 | | | Stage 10 - El Jadida › Casablanca | 120 | | | more |
06.04 | 22 | 27 | | Stage 9 - Marrakech › El Jadida | 198 | | | more |
05.04 | 6 | 27 | | Stage 8 - Béni Mellal › Marrakech | 184 | | | more |
04.04 | 40 | 30 | | Stage 7 - Khenifra › Béni Mellal | 122 | | | more |
03.04 | 58 | 27 | | Stage 6 - Meknes › Khenifra | 150 | | | more |
02.04 | 49 | 29 | | Stage 5 - Fes › Meknes | 101 | | | more |
31.03 | 8 | 31 | | Stage 3 - Nador-Saadia-Berkane › Oujda | 181 | | | more |
30.03 | 39 | 29 | | Stage 2 - Oued Laou › Al Hoceima | 181 | | | more |
29.03 | 12 | 12 | | Stage 1 - Rabat › Larache | 180 | | | more |
21.03 » 23.03 | | | | Tour de Blida (2.2) | | | | more |
21.03 | DNF | | | Stage 1 - Blida › Chebli | 151 | | | more |
18.03 » 20.03 | | | | Tour de Tipaza (2.2) | | | | more |
| 13 | | | Mountains classification | | | | more |
| 26 | | | Points classification | | | | more |
| 6 | | | General classification | | 6 | 8 | more |
20.03 | 22 | | | Stage 3 - Tipaza › Tipaza | 100 | | | more |
19.03 | 11 | 6 | | Stage 2 - Alger › Ain-Benian | 117 | | | more |
18.03 | 7 | 7 | | Stage 1 - Alger › Hameur El Ain | 124 | | | more |
16.03 | 9 | | | Circuit d'Alger (1.2) | 124 | | | more |
11.03 » 15.03 | | | | Tour d'Algérie (2.2) | | | | more |
| 14 | | | Points classification | | | | more |
| 14 | | | General classification | | | | more |
15.03 | 30 | | | Stage 5 - Mila › Constantine | 125 | | | more |
14.03 | 31 | 8 | | Stage 4 - Constantine › Constantine | 135 | | | more |
13.03 | 11 | 7 | | Stage 3 - Biskra › Setif | 112.6 | | | more |
12.03 | 15 | 11 | | Stage 2 - Setif › Biskra | 209.5 | | | more |
11.03 | 15 | 15 | | Stage 1 - Alger › Bouira | 137 | | | more |
28.02 | 1 | | | Les Challenges de la Marche Verte - GP Al Massira (1.2) | 150 | 15 | 40 | more |
27.02 | 2 | | | Les Challenges de la Marche Verte - GP Oued Eddahab (1.2) | 100 | 10 | 30 | more |
26.02 | 6 | | | Les Challenges de la Marche Verte - GP Sakia El Hamra (1.2) | 100 | 1 | | more |
14.01 » 20.01 | | | | La Tropicale Amissa Bongo (2.1) | | | | more |
| 41 | | | Points classification | | | | more |
| 34 | | | General classification | | | | more |
20.01 | 50 | | | Stage 7 - Owendo › Libreville | 128 | | | more |
19.01 | 48 | 37 | | Stage 6 - Lambarene › Kango | 147 | | | more |
18.01 | 65 | 36 | | Stage 5 - Lambarene › Mouila | 189 | | | more |
17.01 | 37 | 31 | | Stage 4 - Oyem › Mitzic | 109 | | | more |
16.01 | 49 | 27 | | Stage 3 - Oyem › Bitam | 110 | | | more |
15.01 | 18 | 23 | | Stage 2 - Yaounde › Yaounde | 112 | | | more |
14.01 | 31 | 33 | | Stage 1 - Bitam › Ebolowa | 149 | | | more |