

Last 5rating per match
Form, 12 monthsaverage rating per month
Club matchesJuventus
Key statsUEFA Nations League · Serie A · UEFA Europa 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. Rank: place among forwards — Serie A, season 26/27. What xG, npxG, xA and xGChain mean
Player profileattributes and traits
Player Position average
Strengths
- Discipline
- Finishing
Weaknesses
No outstanding weaknesses
Player positions: RW · 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 30 forwards · Serie A · season 26/27 · min 270′ · player 364′
Similar playersSerie A · forwards · season 26/27
Federico BernardeschiBologna · Attack - Right WingerRating1G0A32age79%
Armand LaurientéSassuolo · Attack - Left WingerRating0G1A27age78%
Paulo DybalaRoma · Attack - Second StrikerRating0G4A32age78%
Mattia ZaccagniLazio · Attack - Left WingerRating1G2A31age77%
Assane DiaoComo · Attack - Left WingerRating2G1A20age77%
Matteo PolitanoNapoli · Attack - Right WingerRating1G1A33ageProfile match = 100 − mean gap of per-90 percentiles across 25 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
-6.6Goals xG · total 3 / 9.6
Assists vs xA
+1.4Assists xA · total 6 / 4.6
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
Portugal21 caps · 4 goalsSeason statsSeason 26/27
| Competition | Team | Season | Apps | Min | Rating | G | A | G+A | YC | RC |
|---|---|---|---|---|---|---|---|---|---|---|
UEFA Nations League | Portugal | 26/27 | 2 | 142 | 6.60 | — | — | 0 | 1 | 1 |
Serie A | Juventus | 26/27 | 5 | 364 | 7.28 | 1 | 1 | 2 | 1 | — |
UEFA Europa League | Juventus | 26/27 | 1 | 29 | 6.70 | — | — | 0 | — | — |
Transfers14
| Date | Season | From | To | Fee | Market value |
|---|---|---|---|---|---|
| 22/07/2025 | 25/26 | Porto | Juventus | €32.00m | €28.00m |
| 30/06/2025 | 24/25 | Juventus | Porto | End of loan | €28.00m |
| 27/08/2024 | 24/25 | Porto | Juventus | Loan fee:€9.50m | €22.00m |
| 01/07/2024 | 24/25 | Ajax | Porto | €10.24m | €22.00m |
| 30/06/2024 | 23/24 | Porto | Ajax | End of loan | €22.00m |
| 01/09/2023 | 23/24 | Ajax | Porto | loan transfer | €8.00m |
| 21/07/2022 | 22/23 | Porto | Ajax | €5.07m | €8.00m |
| 10/02/2021 | 20/21 | FC Porto B | Porto | - | €2.50m |
| 03/08/2020 | 20/21 | FC Porto U19 | FC Porto B | - | - |
| 01/07/2019 | 19/20 | FC Porto U17 | FC Porto U19 | - | - |
| 01/07/2018 | 18/19 | Padroense U17 | FC Porto U17 | - | - |
| 01/07/2017 | 17/18 | Sporting Sub-15 | Padroense U17 | ? | - |
| 01/07/2015 | 15/16 | Sporting Yth. | Sporting Sub-15 | - | - |
| 01/08/2011 | 11/12 | Belenenses Yth | Sporting Yth. | ? | - |
Market value
Value history
| Date | Age | Club | Value |
|---|---|---|---|
| 02/11/2020 | 17 | FC Porto B | €600k |
| 05/01/2021 | 18 | FC Porto B | €2.50m |
| 25/03/2021 | 18 | FC Porto | €5.00m |
| 21/05/2021 | 18 | FC Porto | €8.00m |
| 27/12/2021 | 19 | FC Porto | €8.00m |
| 31/05/2022 | 19 | FC Porto | €8.00m |
| 11/11/2022 | 19 | Ajax Amsterdam | €8.00m |
| 23/06/2023 | 20 | Ajax Amsterdam | €8.00m |
| 27/12/2023 | 21 | FC Porto | €10.00m |
| 08/03/2024 | 21 | FC Porto | €15.00m |
| 06/06/2024 | 21 | FC Porto | €22.00m |
| 18/12/2024 | 22 | Juventus FC | €36.00m |
| 17/06/2025 | 22 | Juventus FC | €28.00m |
| 07/10/2025 | 22 | Juventus FC | €30.00m |
| 23/12/2025 | 23 | Juventus FC | €30.00m |
| 29/05/2026 | 23 | Juventus FC | €30.00m |
xG Statisticsall seasons
| Season | League | Club | Apps | Min | G | xG | npxG | A | xA | Sh | KP | xGChain |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | Serie A | Juventus | 3 | 242 | 0 | 1.07 | 1.07 | 1 | 0.46 | 9 | 6 | 1.24 |
| 2025 | Serie A | Juventus | 31 | 2124 | 3 | 8.49 | 8.49 | 5 | 4.16 | 73 | 42 | 18.74 |
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
Andrea CambiasoDefender - Left-Back26age€20.00mvalue
Arkadiusz MilikAttack - Centre-Forward32age€1.50mvalue
BremerDefender - Centre-Back29age€35.00mvalue
Carlo PinsoglioGoalkeeper36age€200kvalue
Daniele RuganiDefender - Centre-Back32age€2.00mvalue
Douglas LuizMidfield - Central Midfield28age€18.00mvalue
Edon ZhegrovaAttack - Right Winger27age€10.00mvalue
Federico GattiDefender - Centre-Back28age€14.00mvalue
Serie A
União São João
Atalanta
NEC Nijmegen
Sassuolo
UEFA Nations League
Serie A
UEFA Europa League
Porto
Ajax
FC Porto B
FC Porto U19
FC Porto U17
Belenenses Yth
Ajax Amsterdam