

Last 5rating per match
Form, 12 monthsaverage rating per month
Club matchesBologna
Key statsUEFA Nations 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. Rank: place among defenders — Serie A, season 26/27. What xG, npxG, xA and xGChain mean
Player profileattributes and traits
Player Position average
Strengths
- Ground duels
Weaknesses
No outstanding weaknesses
Player positions: DR · MR
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 285′
Similar playersSerie A · defenders · season 26/27
Gabriele CalvaniFrosinone · Defender - Centre-BackRating0G0A22age78%
Adam ObertCagliari · Defender - Left-BackRating0G0A24age78%
Rafa MarínNapoli · Defender - Centre-BackRating0G0A24age77%
Emanuele LulliRoma · Defender - Right-BackRating0G0A19age77%
Anthony OyonoFrosinone · Defender - Right-BackRating0G1A25age77%
Danilo VeigaLecce · Defender - Right-BackRating0G1A23ageProfile match = 100 − mean gap of per-90 percentiles across 26 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.3Goals xG · total 1 / 1.3
Assists vs xA
+1.7Assists xA · total 4 / 2.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
Sweden16 caps · 2 goalsSeason statsSeason 26/27
| Competition | Team | Season | Apps | Min | Rating | G | A | G+A | YC | RC |
|---|---|---|---|---|---|---|---|---|---|---|
UEFA Nations League | Sweden | 26/27 | 1 | 63 | 6.80 | — | — | 0 | — | — |
Serie A | Bologna | 26/27 | 5 | 285 | 7.18 | — | — | 0 | 1 | — |
Transfers11
| Date | Season | From | To | Fee | Market value |
|---|---|---|---|---|---|
| 30/06/2026 | 25/26 | Juventus | Bologna | End of loan | €10.00m |
| 02/02/2026 | 25/26 | Bologna | Juventus | loan transfer | €13.00m |
| 01/07/2024 | 24/25 | Spezia Calcio | Bologna | €7.70m | €12.00m |
| 30/06/2024 | 23/24 | Atalanta | Spezia Calcio | End of loan | €12.00m |
| 31/08/2023 | 23/24 | Spezia Calcio | Atalanta | Loan fee:€2.50m | €5.00m |
| 30/06/2022 | 21/22 | SönderjyskE | Spezia Calcio | End of loan | €800k |
| 27/08/2021 | 21/22 | Spezia Calcio | SönderjyskE | loan transfer | €700k |
| 26/08/2021 | 21/22 | SönderjyskE | Spezia Calcio | €2.70m | €700k |
| 27/01/2021 | 20/21 | IFK Göteborg | SönderjyskE | €282k | €300k |
| 01/07/2019 | 18/19 | IFK U19 | IFK Göteborg | - | €100k |
| 01/01/2018 | 17/18 | IFK U17 | IFK U19 | - | - |
Market value
Value history
| Date | Age | Club | Value |
|---|---|---|---|
| 28/06/2019 | 19 | IFK Göteborg U19 | €100k |
| 20/11/2019 | 19 | IFK Göteborg | €200k |
| 05/08/2020 | 20 | IFK Göteborg | €300k |
| 10/12/2020 | 20 | IFK Göteborg | €300k |
| 04/06/2021 | 21 | SönderjyskE | €700k |
| 06/10/2021 | 21 | SönderjyskE | €800k |
| 28/12/2021 | 21 | SönderjyskE | €800k |
| 20/06/2022 | 22 | SönderjyskE | €800k |
| 27/09/2022 | 22 | Spezia Calcio | €1.20m |
| 11/11/2022 | 22 | Spezia Calcio | €2.50m |
| 21/03/2023 | 22 | Spezia Calcio | €5.00m |
| 15/06/2023 | 23 | Spezia Calcio | €5.00m |
| 11/10/2023 | 23 | Atalanta BC | €7.00m |
| 20/12/2023 | 23 | Atalanta BC | €7.00m |
| 12/03/2024 | 23 | Atalanta BC | €12.00m |
| 05/06/2024 | 24 | Atalanta BC | €12.00m |
| 18/10/2024 | 24 | Bologna FC 1909 | €8.50m |
| 18/12/2024 | 24 | Bologna FC 1909 | €7.00m |
| 25/03/2025 | 24 | Bologna FC 1909 | €8.00m |
| 17/06/2025 | 25 | Bologna FC 1909 | €8.00m |
| 23/12/2025 | 25 | Bologna FC 1909 | €13.00m |
| 29/05/2026 | 26 | Juventus FC | €10.00m |
xG Statisticsall seasons
| Season | League | Club | Apps | Min | G | xG | npxG | A | xA | Sh | KP | xGChain |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | Serie A | Bologna | 3 | 180 | 0 | 0.16 | 0.16 | 0 | 0.03 | 3 | 1 | 1.36 |
| 2025 | Serie A | Bologna,Juventus | 18 | 891 | 1 | 1.15 | 1.15 | 4 | 2.28 | 13 | 9 | 4.34 |
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
Artem DovbykAttack - Centre-Forward29age€15.00mvalue
Arthur TheateDefender - Centre-Back26age€17.00mvalue
Eivind HellandDefender - Centre-Back21age€8.00mvalue
Federico BernardeschiAttack - Right Winger32age€3.50mvalue
Jay EnemAttack - Centre-Forward23age€4.50mvalue
Jens OdgaardMidfield - Attacking Midfield27age€12.00mvalue
Jesper KarlssonAttack - Left Winger28age€3.00mvalue
Juan MirandaDefender - Left-Back26age€15.00mvalue
Serie A
Torino
Napoli
Sassuolo
Atalanta
Lazio
UEFA Nations League
Serie A
Juventus
Spezia Calcio
Atalanta
SönderjyskE
IFK Göteborg
IFK U19