

Last 5rating per match
Form, 12 monthsaverage rating per month
Club matchesLille
Key statsLigue 1 · UEFA Champions League
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
No outstanding strengths
Weaknesses
No outstanding weaknesses
Player positions: RW · LW · AM
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 49 forwards · Ligue 1 · season 25/26 · min 270′ · player 346′
Similar playersLigue 1 · forwards · season 25/26
Ethan MbappéLille · Attack - Right WingerRating3G1A19age76%
Samuel Amo-AmeyawR. Strasbourg · Attack - Right WingerRating2G2A20age76%
Ilan KebbalParis FC · Attack - Right WingerRating9G4A28age74%
Gessime YassineR. Strasbourg · Attack - Right WingerRating0G1A20age73%
Sofiane DiopNice · Attack - Left WingerRating8G2A26age73%
Florian ThauvinLens · Attack - Right WingerRating11G6A33ageProfile match = 100 − mean gap of per-90 percentiles across 28 metrics of this position; players of the same league, position group and season with at least 270 minutes.
Availability
Season statsSeason 26/27
| Competition | Team | Season | Apps | Min | Rating | G | A | G+A | YC | RC |
|---|---|---|---|---|---|---|---|---|---|---|
Ligue 1 | Lille | 26/27 | 5 | 133 | 6.58 | — | — | 0 | — | — |
UEFA Champions League | Lille | 26/27 | 2 | 76 | 6.45 | — | 1 | 1 | 1 | — |
Transfers8
| Date | Season | From | To | Fee | Market value |
|---|---|---|---|---|---|
| 02/02/2026 | 25/26 | Krasnodar | Lille | €5.00m | €6.00m |
| 23/07/2025 | 25/26 | AJ Auxerre | Krasnodar | €5.00m | €8.00m |
| 01/07/2021 | 21/22 | US Orléans | AJ Auxerre | free transfer | €800k |
| 21/01/2018 | 17/18 | Lyon | US Orléans | free transfer | €300k |
| 20/01/2018 | 17/18 | US Orléans | Lyon | End of loan | €300k |
| 01/07/2017 | 17/18 | Lyon | US Orléans | loan transfer | €300k |
| 01/07/2016 | 16/17 | Olymp. Lyon B | Lyon | - | - |
| 01/01/2014 | 13/14 | Olymp. Lyon U19 | Olymp. Lyon B | - | - |
Market value
Value history
| Date | Age | Club | Value |
|---|---|---|---|
| 13/07/2016 | 20 | Olympique Lyon | €250k |
| 16/01/2017 | 20 | Olympique Lyon | €300k |
| 01/06/2017 | 20 | Olympique Lyon | €300k |
| 16/05/2018 | 21 | US Orléans | €600k |
| 08/01/2019 | 22 | US Orléans | €400k |
| 27/06/2019 | 23 | US Orléans | €400k |
| 06/01/2020 | 23 | US Orléans | €400k |
| 08/04/2020 | 23 | US Orléans | €325k |
| 14/08/2020 | 24 | US Orléans | €600k |
| 11/11/2020 | 24 | US Orléans | €700k |
| 25/06/2021 | 25 | US Orléans | €800k |
| 27/12/2021 | 25 | AJ Auxerre | €1.00m |
| 02/06/2022 | 25 | AJ Auxerre | €1.30m |
| 02/11/2022 | 26 | AJ Auxerre | €1.20m |
| 27/06/2023 | 27 | AJ Auxerre | €1.20m |
| 27/10/2023 | 27 | AJ Auxerre | €2.00m |
| 13/12/2023 | 27 | AJ Auxerre | €2.50m |
| 11/06/2024 | 28 | AJ Auxerre | €3.00m |
| 10/12/2024 | 28 | AJ Auxerre | €4.00m |
| 24/03/2025 | 28 | AJ Auxerre | €6.00m |
| 03/06/2025 | 28 | AJ Auxerre | €8.00m |
| 16/12/2025 | 29 | FC Krasnodar | €6.00m |
| 01/06/2026 | 29 | LOSC Lille | €5.00m |
xG Statisticsall seasons
| Season | League | Club | Apps | Min | G | xG | npxG | A | xA | Sh | KP | xGChain |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | Ligue 1 | Lille | 2 | 51 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.57 |
| 2025 | Ligue 1 | Lille | 12 | 314 | 1 | 0.62 | 0.62 | 0 | 1.12 | 7 | 10 | 2.49 |
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
Calvin VerdonkDefender - Left-Back29age€2.50mvalue
Dilane BakwaAttack - Right Winger24age€28.00mvalue
Ligue 1
Bodo/Glimt
Lens
Monaco
Galatasaray
Stade Brestois 29
Ligue 1
UEFA Champions League
Krasnodar
AJ Auxerre
US Orléans
Lyon
Olymp. Lyon B
Olymp. Lyon U19