

Last 5rating per match
Form, 12 monthsaverage rating per month
Club matchesTorino
Key statsU21 Euro Qualification · Serie A · UEFA Conference League · Coppa Italia
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
Weaknesses
No outstanding weaknesses
Player positions: DC · DR
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 52 defenders · Serie A · season 26/27 · min 270′ · player 335′
Similar playersSerie A · defenders · season 26/27
Jacobo RamónComo · Defender - Centre-BackRating1G0A21age79%
James AbankwahUdinese · Defender - Centre-BackRating1G0A22age77%
Koni De WinterAC Milan · Defender - Centre-BackRating0G0A24age76%
Mario GilaAC Milan · Defender - Centre-BackRating0G0A26age76%
Johan VásquezGenoa · Defender - Centre-BackRating1G0A27age76%
Lorenzo LucchesiMonza · Defender - Centre-BackRating0G0A23ageProfile 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.6Goals xG · total 2 / 1.4
Assists vs xA
-0.1Assists xA · total 0 / 0.1
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
Italy2 caps · 0 goalsSeason statsSeason 25/26
| Competition | Team | Season | Apps | Min | Rating | G | A | G+A | YC | RC |
|---|---|---|---|---|---|---|---|---|---|---|
| U21 Euro Qualification | Italy U21 | 25/26 | 6 | 536 | 7.20 | — | 1 | 1 | — | — |
Serie A | Fiorentina | 25/26 | 27 | 1700 | 6.64 | 1 | — | 1 | 2 | — |
UEFA Conference League | Fiorentina | 25/26 | 11 | 768 | 6.62 | — | — | 0 | 3 | — |
Coppa Italia | Fiorentina | 25/26 | 1 | 84 | 6.30 | — | — | 0 | 1 | — |
Transfers7
| Date | Season | From | To | Fee | Market value |
|---|---|---|---|---|---|
| 30/06/2027 | 26/27 | Torino | Fiorentina | End of loan | €18.00m |
| 29/07/2026 | 26/27 | Fiorentina | Torino | Loan fee:€1.00m | €18.00m |
| 01/07/2023 | 23/24 | Fiorentina U19 | Fiorentina | - | €150k |
| 01/07/2022 | 22/23 | Fiorentina U17 | Fiorentina U19 | - | - |
| 01/07/2021 | 21/22 | Fiorentina Yth. | Fiorentina U17 | - | - |
| 04/09/2019 | 19/20 | Pordenone Gio. | Fiorentina Yth. | €100k | - |
| 01/07/2017 | 17/18 | Udinese Youth | Pordenone Gio. | free transfer | - |
Market value
Value history
| Date | Age | Club | Value |
|---|---|---|---|
| 01/07/2023 | 18 | ACF Fiorentina | €150k |
| 11/10/2023 | 18 | ACF Fiorentina | €700k |
| 20/12/2023 | 18 | ACF Fiorentina | €700k |
| 05/06/2024 | 19 | ACF Fiorentina | €700k |
| 18/10/2024 | 19 | ACF Fiorentina | €4.00m |
| 18/12/2024 | 19 | ACF Fiorentina | €15.00m |
| 25/03/2025 | 20 | ACF Fiorentina | €25.00m |
| 17/06/2025 | 20 | ACF Fiorentina | €25.00m |
| 23/12/2025 | 20 | ACF Fiorentina | €23.00m |
| 29/05/2026 | 21 | ACF Fiorentina | €18.00m |
xG Statisticsall seasons
| Season | League | Club | Apps | Min | G | xG | npxG | A | xA | Sh | KP | xGChain |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | Serie A | Torino | 3 | 249 | 1 | 0.63 | 0.63 | 0 | 0.04 | 2 | 1 | 1.22 |
| 2025 | Serie A | Fiorentina | 27 | 1697 | 1 | 0.81 | 0.81 | 0 | 0.04 | 10 | 3 | 5.99 |
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
Alessio CacciamaniMidfield - Left Midfield19age€4.50mvalue
Andrea LuongoMidfield - Central Midfield18age€1.00mvalue
Ardian IsmajliDefender - Centre-Back29age€5.00mvalue
Cesare CasadeiMidfield - Central Midfield23age€15.00mvalue
Ché AdamsAttack - Centre-Forward30age€5.00mvalue
Cristiano BiraghiDefender - Left-Back34age€900kvalue
Daniel BragançaMidfield - Central Midfield27age€12.00mvalue
Diego MascardiGoalkeeper19age€1.30mvalue
Serie A
Bologna
AS Roma
Fiorentina
Monza
Sassuolo
Italy U21
Serie A
Fiorentina
UEFA Conference League
Coppa Italia
Fiorentina U19
Udinese Youth