Botola Pro 2025-2026 Performance vs Market
Expected points (xPTS) come from pre-match market odds: what the market rated each team's chances at before kickoff. A positive Δ means the team is outperforming those expectations — playing better than the market rated them; a negative Δ means they're delivering less than their billing. Big gaps usually say more about the team than about fortune.
| # | Team | P | Pts | xPts | vs xPTS | |||||
|---|---|---|---|---|---|---|---|---|---|---|
1 | Maghreb Fez | 30 | 59 | 45.5 | +13.5Outperforming ++ | 5 | +5.0 | +8.5 | 0:1 vs Wydad AC (+1.8) | 0:1 vs IR Tanger (-1.8) |
2 | Difaa El Jadidi | 30 | 40 | 29.2 | +10.8Outperforming ++ | 16 | +5.1 | +5.6 | 1:0 vs Wydad AC (+2.2) | 2:1 vs Hassania Agadir (-1.0) |
3 | Wydad | 8 | 20 | 15.4 | +4.6Outperforming | 17 | +2.2 | +2.4 | 1:3 vs COD Meknes (+1.2) | 1:1 vs Yacoub El Mansour (-1.1) |
4 | IR Tanger | 31 | 39 | 34.6 | +4.4Outperforming | 13 | +3.3 | +1.1 | 1:0 vs Berkane (+2.2) | 1:2 vs Dcheira (-1.6) |
5 | Berkane | 30 | 57 | 53.9 | +3.1Outperforming | 4 | +1.9 | +1.2 | 0:1 vs Raja Casablanca (+2.0) | 0:1 vs Kawkab Marrakech (-2.1) |
6 | COD Meknes | 31 | 36 | 33.5 | +2.5Outperforming | 14 | +7.2 | -4.7 | 3:2 vs FAR Rabat (+2.4) | 1:2 vs Renaissance Zemamra (-1.7) |
7 | Raja Casablanca | 31 | 57 | 55.5 | +1.5On expectation | 2 | +1.1 | +0.3 | 0:2 vs Maghreb Fez (+1.6) | 1:0 vs COD Meknes (-1.9) |
8 | Kawkab Marrakech | 31 | 36 | 35.4 | +0.6On expectation | 11 | +5.9 | -5.3 | 0:1 vs Berkane (+2.3) | 0:2 vs IR Tanger (-1.7) |
9 | Dcheira | 30 | 30 | 29.6 | +0.4On expectation | 15 | -6.0 | +6.4 | 1:3 vs Wydad AC (+2.4) | 0:1 vs Difaa El Jadidi (-1.5) |
10 | FAR Rabat | 30 | 55 | 57.7 | -2.7Underperforming | 1 | +1.4 | -4.1 | 1:2 vs Wydad AC (+2.0) | 3:2 vs COD Meknes (-2.2) |
11 | Hassania Agadir | 31 | 33 | 36.4 | -3.4Underperforming | 10 | -1.6 | -1.8 | 1:2 vs FUS Rabat (+2.3) | 0:3 vs Dcheira (-1.6) |
12 | Renaissance Zemamra | 31 | 33 | 36.6 | -3.6Underperforming | 9 | -4.4 | +0.8 | 1:0 vs Wydad AC (+2.1) | 1:2 vs COD Meknes (-1.6) |
13 | Union Touarga | 30 | 31 | 34.7 | -3.7Underperforming | 12 | -6.7 | +3.0 | 1:2 vs Wydad AC (+1.9) | 1:2 vs Difaa El Jadidi (-1.8) |
14 | FUS Rabat | 30 | 37 | 42.0 | -5.0Underperforming | 6 | -2.3 | -2.7 | 1:2 vs Wydad AC (+2.2) | 1:2 vs Hassania Agadir (-2.1) |
15 | Yacoub El Mansour | 31 | 31 | 37.3 | -6.3Underperforming −− | 8 | -3.0 | -3.3 | 1:2 vs Wydad AC (+2.4) | 0:1 vs Dcheira (-1.7) |
16 | Wydad AC | 30 | 43 | 54.6 | -11.6Underperforming −− | 3 | -6.3 | -5.3 | 0:1 vs Raja Casablanca (+1.8) | 1:2 vs Yacoub El Mansour (-2.2) |
17 | Olympique de Safi | 31 | 22 | 40.2 | -18.2Underperforming −− | 7 | -12.4 | -5.8 | 1:3 vs Yacoub El Mansour (+1.5) | 1:2 vs Difaa El Jadidi (-1.9) |
