Free
Open to everyone, on every professional player.
- Name, age, nationality and position
- Current club and league
- Height and preferred foot
- Recent seasons by club
- Key numbers against the league
- Search across 800+ competitions
Vitor
Carvalho
Defensive Midfield · Midfielder
World rank
#1167
centre-back in the world by TSH Score
In his age group
#407
among centre-backs aged 26–29
In his league
45%
of Primeira Liga centre-backs rank below him
Finishing
−0.5
goals below expected · better than 59% of players
34 shots. He scores about what the chances he gets would predict.
Teammates converted his chances about as expected.
22 of 27 appearances
14 of 15 appearances
4 of 7 appearances
3 of 4 appearances
1 of 1 appearances
| Position | Apps | G | A |
|---|---|---|---|
| Defensive Midfield | 106 | 7 | 0 |
| Central Midfield | 87 | 2 | 2 |
| Centre-Back | 30 | 2 | 2 |
| Attacking Midfield | 5 | 0 | 0 |
| Other · RB, LB | 5 | 1 | 1 |
| Season | Competition | Club | Apps | Starts | G | A | Yellow cards | Second yellow | Red cards | Min |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026/2726/27 | Primeira LigaPrimeira Liga | Sporting Braga | 3 | 3 | 0 | 1 | 1 | 0 | 0 | 298 |
| 2025/2625/26 | Primeira LigaPrimeira Liga | Sporting Braga | 15 | 14 | 2 | 1 | 5 | 0 | 0 | 1,067 |
| 2025/2625/26 | UEFA Europa LeagueEuropa League | Sporting Braga | 7 | 4 | 1 | – | 1 | – | 0 | 318 |
| 2025/2625/26 | UEFA Europa League - QualificationEuropa League · Qual. | Sporting Braga | 4 | 3 | 1 | – | 0 | – | 0 | 301 |
| 2025/2625/26 | Taça da LigaTaça da Liga | Sporting Braga | 1 | 1 | 0 | – | 0 | – | 0 | 87 |
| 2024/2524/25 | Primeira LigaPrimeira Liga | Sporting Braga | 22 | 17 | 0 | 0 | 3 | 0 | 0 | 1,409 |
| 2024/2524/25 | UEFA Europa LeagueEuropa League | Sporting Braga | 9 | 7 | 2 | – | 3 | – | 0 | 561 |
| 2024/2524/25 | Taça da LigaTaça da Liga | Sporting Braga | 1 | 1 | 0 | – | 0 | – | 0 | 46 |
| 2023/2423/24 | Primeira LigaPrimeira Liga | Sporting Braga | 27 | 16 | 1 | 1 | 8 | 0 | 0 | 1,303 |
| 2023/2423/24 | UEFA Champions LeagueChampions League | Sporting Braga | 9 | 8 | 0 | – | 0 | – | 0 | 614 |
| 2023/2423/24 | Taça da LigaTaça da Liga | Sporting Braga | 3 | 2 | 0 | – | 0 | – | 0 | 171 |
| 2023/2423/24 | Taça de PortugalTaça de Portugal | Sporting Braga | 3 | 2 | 0 | – | 1 | – | 0 | 133 |
| 2023/2423/24 | UEFA Europa LeagueEuropa League | Sporting Braga | 2 | 1 | 0 | – | 0 | – | 0 | 127 |
| 2022/2322/23 | Primeira LigaPrimeira Liga | Gil Vicente | 31 | 31 | 3 | 0 | 11 | 1 | 0 | 2,714 |
| 2022/2322/23 | UEFA Europa Conference LeagueEuropa Conference League | Gil Vicente | 3 | 3 | 0 | – | 1 | – | 0 | 248 |
| 2022/2322/23 | Taça da LigaTaça da Liga | Gil Vicente | 3 | 3 | 1 | – | 0 | – | 0 | 196 |
| 2022/2322/23 | Taça de PortugalTaça de Portugal | Gil Vicente | 1 | 1 | 1 | – | 1 | – | 0 | 46 |
| 2021/2221/22 | Primeira LigaPrimeira Liga | Gil Vicente | 29 | 27 | 0 | 0 | 9 | 0 | 1 | 2,239 |
| 2021/2221/22 | Taça da LigaTaça da Liga | Gil Vicente | 2 | 2 | 1 | – | 1 | – | 0 | 180 |
| 2021/2221/22 | Taça de PortugalTaça de Portugal | Gil Vicente | 1 | 1 | 0 | – | 0 | – | 0 | 78 |
| 2020/2120/21 | Primeira LigaPrimeira Liga | Gil Vicente | 22 | 12 | 0 | 1 | 3 | 0 | 0 | 1,102 |
| 2020/2120/21 | Taça de PortugalTaça de Portugal | Gil Vicente | 3 | 2 | 0 | – | 1 | – | 0 | 138 |
| 2019/2019/20 | Primeira LigaPrimeira Liga | Gil Vicente | 10 | 0 | 2 | 0 | 1 | 0 | 0 | 218 |
| 20192019 | Paranaense 1Paranaense 1 | Coritiba | 14 | 13 | 0 | – | 4 | – | 0 | 1,279 |
| 20192019 | Serie BSerie B | Coritiba | 13 | 10 | 0 | 0 | 4 | 0 | 0 | 899 |
| 20192019 | Copa do BrasilCopa do Brasil | Coritiba | 1 | 1 | 0 | – | 1 | – | 0 | 72 |
| 20182018 | Serie BSerie B | Coritiba | 29 | 27 | 1 | 0 | 7 | 0 | 0 | 2,277 |
| 20182018 | Paranaense 1Paranaense 1 | Coritiba | 7 | 6 | 0 | – | 0 | – | 0 | 550 |
| 20182018 | Copa do BrasilCopa do Brasil | Coritiba | 2 | 2 | 0 | – | 0 | – | 0 | 163 |
| 20172017 | Serie ASerie A | Coritiba | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 63 |
| 20172017 | CBF Brasileiro U20CBF Brasileiro U20 | Coritiba U20 | 8 | 8 | 1 | – | 1 | – | 0 | 750 |
| 20162016 | Serie ASerie A | Coritiba | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 44 |
| 20162016 | CBF Brasileiro U20CBF Brasileiro U20 | Coritiba U20 | 3 | 3 | 0 | – | 0 | – | 0 | 270 |
| 20152015 | Copa do Brasil U20Copa do Brasil U20 | Coritiba U20 | 1 | 0 | 0 | – | 0 | – | 0 | 11 |
| No rows match these filters. | ||||||||||
| Career total · all competitions | 291 | 232 | 17 | 4* | 67 | 1* | 1 | 19,972 | ||
| Competition | Apps | G | A |
|---|---|---|---|
| Primeira Liga | 159 | 8 | 4 |
| Serie B | 42 | 1 | 0 |
| Paranaense 1 | 21 | 0 | – |
| UEFA Europa League | 18 | 3 | – |
| CBF Brasileiro U20 | 11 | 1 | – |
| Taça da Liga | 10 | 2 | – |
| UEFA Champions League | 9 | 0 | – |
| Taça de Portugal | 8 | 1 | – |
| UEFA Europa League - Qualification | 4 | 1 | – |
| Copa do Brasil | 3 | 0 | – |
* Assists and second yellows are counted where the data has them, mostly league games from 2014/15; cups and internationals show “–”. Friendlies are excluded. Data as of 2 Nov 2026.
Preview shows a sample. Valuation, wages, physical data and AI reports on Vitor Carvalho, available with a TSH subscription.
Open to everyone, on every professional player.
Everything in Free, plus the data and AI your departments work from.
TSH Valuation
Value band · deal price
Wages and contract value
Wage · fair-wage band
Data Report Generator
PDF report · one click
Advanced profile
~70 metrics · radar
Physical data
Per 90 · per match
AI Scout report
Written report
Players like him
Shortlist ready
AI Full Dossier
Board-ready PDF