

Last 5rating per match
Form, 12 monthsaverage rating per month
Club matchesAC Milan
Key statsUEFA Nations League · UEFA Europa League · Serie A
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
- Passing
- Discipline
Weaknesses
No outstanding weaknesses
Player positions: MC · DM
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 85 midfielders · Serie A · season 25/26 · min 270′ · player 706′
Similar playersSerie A · midfielders · season 25/26
Reda BelahyaneLazio · Midfield - Defensive MidfieldRating0G2A22age82%
Hans Nicolussi CavigliaParma · Midfield - Defensive MidfieldRating0G4A26age81%
Máximo PerroneComo · Midfield - Defensive MidfieldRating3G4A23age80%
Nicolò FagioliFiorentina · Midfield - Central MidfieldRating2G3A25age80%
Nicolò RovellaLazio · Midfield - Defensive MidfieldRating0G1A24age80%
Luka ModrićAC Milan · Midfield - Central MidfieldRating2G3A40ageProfile 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.8Goals xG · total 0 / 0.8
Assists vs xA
-0.3Assists xA · total 1 / 1.3
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
Switzerland11 caps · 0 goalsSeason statsSeason 26/27
| Competition | Team | Season | Apps | Min | Rating | G | A | G+A | YC | RC |
|---|---|---|---|---|---|---|---|---|---|---|
UEFA Nations League | Switzerland | 26/27 | 3 | 250 | 6.77 | — | — | 0 | — | — |
UEFA Europa League | AC Milan | 26/27 | 1 | 73 | 6.30 | — | — | 0 | — | — |
Serie A | AC Milan | 26/27 | 3 | 80 | 6.70 | — | — | 0 | — | — |
Transfers6
| Date | Season | From | To | Fee | Market value |
|---|---|---|---|---|---|
| 06/08/2025 | 25/26 | Club Brugge | AC Milan | €36.00m | €32.00m |
| 01/07/2024 | 24/25 | FC Luzern | Club Brugge | €6.00m | €6.00m |
| 27/01/2022 | 21/22 | Luzern U21 | FC Luzern | - | €100k |
| 01/07/2020 | 20/21 | Luzern U18 | Luzern U21 | - | - |
| 01/07/2018 | 18/19 | Luzern Yth. | Luzern U18 | - | - |
| 15/07/2013 | 13/14 | Zug Youth | Luzern Yth. | free transfer | - |
Market value
Value history
| Date | Age | Club | Value |
|---|---|---|---|
| 31/07/2020 | 18 | FC Luzern U21 | €25k |
| 28/12/2020 | 18 | FC Luzern U21 | €25k |
| 23/06/2021 | 18 | FC Luzern U21 | €100k |
| 28/03/2022 | 19 | FC Luzern | €700k |
| 08/06/2022 | 19 | FC Luzern | €1.00m |
| 10/11/2022 | 20 | FC Luzern | €2.50m |
| 28/03/2023 | 20 | FC Luzern | €6.00m |
| 07/06/2023 | 20 | FC Luzern | €7.50m |
| 19/10/2023 | 21 | FC Luzern | €6.50m |
| 21/12/2023 | 21 | FC Luzern | €6.50m |
| 28/03/2024 | 21 | FC Luzern | €6.00m |
| 31/05/2024 | 21 | FC Luzern | €6.00m |
| 11/12/2024 | 22 | Club Brugge KV | €11.00m |
| 26/03/2025 | 22 | Club Brugge KV | €25.00m |
| 12/06/2025 | 22 | Club Brugge KV | €32.00m |
| 23/12/2025 | 23 | AC Milan | €32.00m |
| 24/03/2026 | 23 | AC Milan | €30.00m |
| 29/05/2026 | 23 | AC Milan | €25.00m |
xG Statisticsall seasons
| Season | League | Club | Apps | Min | G | xG | npxG | A | xA | Sh | KP | xGChain |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | Serie A | AC Milan | 3 | 74 | 0 | 0.52 | 0.52 | 0 | 0.14 | 1 | 2 | 1.01 |
| 2025 | Serie A | AC Milan | 14 | 703 | 0 | 0.24 | 0.24 | 1 | 1.13 | 7 | 9 | 3.58 |
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
Adrien RabiotMidfield - Central Midfield31age€18.00mvalue
Alexis SaelemaekersMidfield - Right Midfield27age€20.00mvalue
Alphadjo CissèMidfield - Attacking Midfield19age€7.00mvalue
Christian ComottoMidfield - Central Midfield18age€5.00mvalue
Christian PulisicAttack - Right Winger27age€40.00mvalue
Davide BartesaghiDefender - Left-Back20age€22.00mvalue
Diego MoreiraMidfield - Left Midfield22age€25.00mvalue
Fikayo TomoriDefender - Centre-Back28age€17.00mvalue
Serie A
Lecce
Benfica
Lazio
Juventus
Venezia
UEFA Nations League
UEFA Europa League
Serie A
Club Brugge
FC Luzern
Zug Youth