
Last 5rating per match
Form, 12 monthsaverage rating per month
Club matchesLille
Key statsLigue 1
xG — expected goals: the quality of the chances taken; xA — expected assists: the quality of the chances created. Values per 90 minutes are shown under the totals. What xG, npxG, xA and xGChain mean
Player profileattributes and traits
Player Position average
Strengths
- Ground duels
- Through balls
Weaknesses
No outstanding weaknesses
Player positions: DL · DC
Positions on the pitch
Percentiles per 90per 90 minutes vs positional peers of the league
AttackingPer 90 · Percentile
PlaymakingPer 90 · Percentile
DefendingPer 90 · Percentile
What a percentile means
The percentile shows what share of players of the same position in this league the player beats on a per-90-minute metric. 90% — better than nine out of ten peers; 50% — the league median. Per 90 minutes removes the effect of playing time.
For fouls, offsides, being dribbled past and goals conceded the scale is inverted: a higher percentile means fewer of them.
vs 45 defenders · Ligue 1 · season 25/26 · min 270′ · player 796′
Similar playersLigue 1 · defenders · season 25/26
Carlens ArcusAngers SCO · Defender - Right-BackRating0G3A30age81%
Hamari TraoréParis FC · Defender - Right-BackRating0G1A34age79%
Rafik MessaliToulouse · Defender - Right-BackRating0G0A23age78%
Mark McKenzieToulouse · Defender - Centre-BackRating0G2A27age76%
Jordan TezeMonaco · Defender - Right-BackRating1G2A26age76%
Fredrik OppegårdAJ Auxerre · Defender - Left-BackRating0G0A24ageProfile match = 100 − mean gap of per-90 percentiles across 27 metrics of this position; players of the same league, position group and season with at least 270 minutes.
Reality checkactual vs expected, by season
Goals vs xG
-0.1Goals xG · total 0 / 0.1
Assists vs xA
-0.7Assists xA · total 0 / 0.7
Bars above xG mean the player scores more than the quality of his chances suggests; a long run below xG is usually a finishing problem, a short one — variance.
Availability
Season statsSeason 26/27
| Competition | Team | Season | Apps | Min | Rating | G | A | G+A | YC | RC |
|---|---|---|---|---|---|---|---|---|---|---|
| 26/27 | 3 | 69 | 6.50 | — | — | 0 | — | — |
Transfers14
| Date | Season | From | To | Fee | Market value |
|---|---|---|---|---|---|
| 01/09/2025 | 25/26 | €3.00m | €2.50m | ||
| 06/07/2022 | 22/23 | free transfer | €700k | ||
| 30/06/2022 | 21/22 | End of loan | €700k | ||
| 30/08/2021 | 21/22 | loan transfer | €900k | ||
| 11/09/2020 | 20/21 | free transfer | €1.60m | ||
| 30/06/2020 | 19/20 | End of loan | €1.60m | ||
| 15/08/2019 | 19/20 | loan transfer | €2.00m | ||
| 30/06/2018 | 17/18 | End of loan | €500k | ||
| 02/08/2017 | 17/18 | loan transfer | €550k | ||
| 30/06/2017 | 16/17 | End of loan | €550k | ||
| 01/07/2016 | 16/17 | loan transfer | €150k | ||
| 01/07/2015 | 15/16 | - | €150k | ||
| 01/07/2014 | 14/15 | - | - | ||
| 01/07/2013 | 13/14 | - | - |
Market value
Value history
| Date | Age | Club | Value |
|---|---|---|---|
| 08/03/2015 | 17 | €50k | |
| 01/07/2015 | 18 | €150k | |
| 05/02/2016 | 18 | €150k | |
| 15/07/2016 | 19 | €250k | |
| 18/01/2017 | 19 | €650k | |
| 07/06/2017 | 20 | €550k | |
| 01/03/2018 | 20 | €450k | |
| 29/06/2018 | 21 | €500k | |
| 28/12/2018 | 21 | €1.00m | |
| 13/03/2019 | 21 | €2.00m | |
| 12/06/2019 | 22 | €2.00m | |
| 18/12/2019 | 22 | €2.00m | |
| 08/04/2020 | 22 | €1.60m | |
| 22/10/2020 | 23 | €1.60m | |
| 28/01/2021 | 23 | €1.30m | |
| 21/05/2021 | 24 | €900k | |
| 05/01/2022 | 24 | €700k | |
| 08/06/2022 | 25 | €700k | |
| 11/11/2022 | 25 | €800k | |
| 23/06/2023 | 26 | €800k | |
| 15/12/2023 | 26 | €1.20m | |
| 18/03/2024 | 26 | €1.80m | |
| 31/05/2024 | 27 | €2.50m | |
| 17/12/2024 | 27 | €2.50m | |
| 28/05/2025 | 28 | €2.50m | |
| 10/10/2025 | 28 | LOSC Lille | €3.00m |
| 15/12/2025 | 28 | LOSC Lille | €3.00m |
| 01/06/2026 | 29 | LOSC Lille | €2.50m |
xG Statisticsall seasons
| Season | League | Club | Apps | Min | G | xG | npxG | A | xA | Sh | KP | xGChain |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | Ligue 1 | 3 | 69 | 0 | 0.01 | 0.01 | 0 | 0 | 1 | 0 | 0.15 | |
| 2025 | Ligue 1 | 18 | 785 | 0 | 0.04 | 0.04 | 0 | 0.7 | 3 | 8 | 3.65 |
What xG, npxG, xA and xGChain mean
xGExpected goals- How many goals an average finisher would score from the same shots. A 0.30 xG shot goes in about 3 times in 10. Goals above xG mean efficient finishing; below — a cold streak or poor finishing.
npxGNon-penalty xG- The same xG without penalties. A penalty alone is worth about 0.76 xG, so npxG is a cleaner view of open-play and set-piece chances.
xAExpected assists- The xG of the shots that followed the player's passes. High xA with few assists means teammates missed good chances.
xGChainxG chain- Team xG from every possession the player touched. It shows involvement in build-up, not only the shot or the final pass, so a deep midfielder can rank high without scoring.
KPKey passes- Passes that led directly to a shot — the volume behind xA.
Teammatessame club
AlexsandroDefender - Centre-Back27age€15.00mvalue
Arnaud BodartGoalkeeper28age€1.50mvalue
Ayase UedaAttack - Centre-Forward28age€20.00mvalue
Başar ÖnalAttack - Left Winger22age€7.00mvalue
Benjamin AndréMidfield - Defensive Midfield36age€3.00mvalue
Berke ÖzerGoalkeeper26age€10.00mvalue
Dilane BakwaAttack - Right Winger24age€28.00mvalue
Ethan MbappéAttack - Right Winger19age€8.00mvalue
Ligue 1
Zulte Waregem
Nice
Estac Troyes
Real Betis
Toulouse