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
Jannik
Vestergaard
Centre-Back · Defender
World rank
#645
centre-back in the world by TSH Score
In his age group
#216
among centre-backs aged 30+
In his league
83%
of Championship centre-backs rank below him
Finishing
−2.5
goals below expected · better than 19% of players
44 shots. He scores fewer than the chances he gets would predict.
Teammates converted his chances about as expected.
30 of 32 appearances
29 of 31 appearances
1 of 1 appearances
| Position | Apps | G | A |
|---|---|---|---|
| Centre-Back | 290 | 19 | 1 |
| Attacking Midfield | 1 | 0 | 0 |
| Centre-Forward | 1 | 0 | 0 |
| Central Midfield | 1 | 0 | 0 |
| Defensive Midfield | 1 | 0 | 0 |
| Season | Competition | Club | Apps | Starts | G | A | Yellow cards | Second yellow | Red cards | Min |
|---|---|---|---|---|---|---|---|---|---|---|
| 2025/2625/26 | ChampionshipChampionship | Leicester City | 31 | 29 | 3 | 0 | 5 | 0 | 0 | 2,599 |
| 2025/2625/26 | FA CupFA Cup | Leicester City | 1 | 1 | 0 | – | 0 | – | 0 | 53 |
| 2024/2524/25 | Premier LeaguePremier League | Leicester City | 18 | 16 | 0 | 0 | 5 | 0 | 0 | 1,395 |
| 2024/2524/25 | Carabao CupCarabao Cup | Leicester City | 1 | 0 | 0 | – | 0 | – | 0 | 17 |
| 2024/2524/25 | UEFA Nations League - League ANations League - League A | Denmark | 8 | 8 | 0 | – | 2 | – | 0 | 750 |
| 20262026 | UEFA World Cup QualifiersWorld Cup Qualifiers | Denmark | 4 | 3 | 0 | – | 0 | – | 0 | 296 |
| 2023/2423/24 | ChampionshipChampionship | Leicester City | 42 | 42 | 2 | 0 | 13 | 0 | 0 | 3,722 |
| 2023/2423/24 | FA CupFA Cup | Leicester City | 2 | 2 | 0 | – | 0 | – | 0 | 210 |
| 20242024 | UEFA European ChampionshipEuropean Championship | Denmark | 4 | 4 | 0 | – | 1 | – | 0 | 360 |
| 2022/2322/23 | Premier League 2Premier League 2 | Leicester City U21 | 2 | 2 | 0 | – | 0 | – | 0 | 101 |
| 2022/2322/23 | Carabao CupCarabao Cup | Leicester City | 2 | 1 | 0 | – | 0 | – | 0 | 133 |
| 2022/2322/23 | FA CupFA Cup | Leicester City | 1 | 1 | 0 | – | 0 | – | 0 | 90 |
| 2022/2322/23 | UEFA Nations League - League ANations League - League A | Denmark | 2 | 2 | 0 | – | 0 | – | 0 | 111 |
| 20242024 | UEFA European Championship QualifiersEuropean Championship Qualifiers | Denmark | 2 | 1 | 0 | – | 0 | – | 0 | 121 |
| 2021/2221/22 | Premier LeaguePremier League | Leicester City | 10 | 6 | 0 | 0 | 2 | 0 | 0 | 564 |
| 2021/2221/22 | UEFA Europa Conference LeagueEuropa Conference League | Leicester City | 3 | 2 | 0 | – | 0 | – | 0 | 191 |
| 2021/2221/22 | Carabao CupCarabao Cup | Leicester City | 3 | 1 | 0 | – | 0 | – | 0 | 198 |
| 2021/2221/22 | UEFA Europa LeagueEuropa League | Leicester City | 3 | 2 | 0 | – | 1 | – | 0 | 188 |
| 2021/2221/22 | FA CupFA Cup | Leicester City | 1 | 1 | 0 | – | 0 | – | 0 | 90 |
| 2020/2120/21 | Premier LeaguePremier League | Southampton | 30 | 29 | 3 | 0 | 3 | 0 | 1 | 2,574 |
| 2020/2120/21 | FA CupFA Cup | Southampton | 2 | 2 | 0 | – | 1 | – | 0 | 167 |
| 20202020 | UEFA European ChampionshipEuropean Championship | Denmark | 6 | 5 | 0 | – | 0 | – | 0 | 471 |
| 20222022 | UEFA World Cup QualifiersWorld Cup Qualifiers | Denmark | 4 | 3 | 0 | – | 0 | – | 0 | 314 |
| 2020/2120/21 | UEFA Nations League - League ANations League - League A | Denmark | 2 | 1 | 0 | – | 0 | – | 0 | 105 |
| 2019/2019/20 | Premier LeaguePremier League | Southampton | 19 | 17 | 1 | 0 | 3 | 0 | 0 | 1,496 |
| 2019/2019/20 | FA CupFA Cup | Southampton | 2 | 1 | 0 | – | 0 | – | 0 | 140 |
| 2018/1918/19 | Premier LeaguePremier League | Southampton | 23 | 23 | 0 | 0 | 2 | 0 | 0 | 2,029 |
| 2018/1918/19 | FA CupFA Cup | Southampton | 2 | 2 | 0 | – | 0 | – | 0 | 210 |
| 2018/1918/19 | Carabao CupCarabao Cup | Southampton | 1 | 1 | 0 | – | 0 | – | 0 | 120 |
| 2017/1817/18 | BundesligaBundesliga | Borussia M'gladbach | 12 | 32 | 3 | 0 | 3 | 0 | 0 | 1,080 |
| 2017/1817/18 | DFB PokalDFB Pokal | Borussia M'gladbach | 1 | 1 | 0 | – | 0 | – | 0 | 90 |
| 2016/1716/17 | BundesligaBundesliga | Borussia M'gladbach | 34 | 29 | 4 | – | 1 | – | 0 | 2,656 |
| 2016/1716/17 | UEFA Champions LeagueChampions League | Borussia M'gladbach | 6 | 3 | 0 | – | 0 | – | 0 | 348 |
| 2016/1716/17 | DFB PokalDFB Pokal | Borussia M'gladbach | 5 | 5 | 0 | – | 0 | – | 0 | 480 |
| 2016/1716/17 | UEFA Europa LeagueEuropa League | Borussia M'gladbach | 4 | 4 | 0 | – | 1 | – | 0 | 360 |
| 20182018 | UEFA World Cup QualifiersWorld Cup Qualifiers | Denmark | 4 | 4 | 0 | – | 0 | – | 0 | 352 |
| 2015/1615/16 | BundesligaBundesliga | Werder Bremen | 33 | 33 | 2 | 0 | 2 | 0 | 0 | 2,970 |
| 2015/1615/16 | DFB PokalDFB Pokal | Werder Bremen | 5 | 5 | 1 | – | 0 | – | 0 | 480 |
| 20162016 | Kirin CupKirin Cup | Denmark | 2 | 2 | 0 | – | 0 | – | 0 | 180 |
| 2014/1514/15 | BundesligaBundesliga | Werder Bremen | 15 | 15 | 1 | – | 3 | – | 0 | 1,283 |
| 2014/1514/15 | BundesligaBundesliga | Hoffenheim | 6 | 1 | 1 | – | 0 | – | 0 | 154 |
| 2014/1514/15 | DFB PokalDFB Pokal | Werder Bremen | 1 | 1 | 0 | – | 0 | – | 0 | 90 |
| 2014/1514/15 | DFB PokalDFB Pokal | Hoffenheim | 1 | 1 | 1 | – | 0 | – | 0 | 90 |
| 20162016 | UEFA European Championship QualifiersEuropean Championship Qualifiers | Denmark | 1 | 0 | 1 | – | 0 | – | 0 | 7 |
| 2013/1413/14 | BundesligaBundesliga | Hoffenheim | 25 | 19 | 1 | – | 3 | – | 0 | 1,847 |
| 2013/1413/14 | DFB PokalDFB Pokal | Hoffenheim | 4 | 4 | 0 | – | 0 | – | 0 | 390 |
| 2012/1312/13 | BundesligaBundesliga | Hoffenheim | 16 | 14 | 0 | – | 6 | – | 0 | 1,336 |
| 2012/1312/13 | Play-offs 1/2Play-offs 1/2 | Hoffenheim | 2 | 2 | 1 | – | 0 | – | 0 | 180 |
| 2012/1312/13 | DFB PokalDFB Pokal | Hoffenheim | 1 | 1 | 0 | – | 0 | – | 0 | 90 |
| 20152015 | UEFA U21 ChampionshipU21 Championship | Denmark U21 | 12 | 12 | 4 | – | 3 | – | 0 | 1,080 |
| 2011/1211/12 | BundesligaBundesliga | Hoffenheim | 23 | 19 | 2 | – | 3 | – | 0 | 1,766 |
| 2011/1211/12 | RegionalligaRegionalliga | Hoffenheim II | 3 | 3 | 1 | – | 0 | – | 0 | 270 |
| 2011/1211/12 | DFB PokalDFB Pokal | Hoffenheim | 3 | 3 | 0 | – | 0 | – | 0 | 270 |
| 2010/1110/11 | RegionalligaRegionalliga | Hoffenheim II | 19 | 18 | 3 | – | 5 | – | 0 | 1,624 |
| 2010/1110/11 | BundesligaBundesliga | Hoffenheim | 1 | 0 | 0 | – | 0 | – | 0 | 1 |
| 20132013 | UEFA U21 ChampionshipU21 Championship | Denmark U21 | 9 | 9 | 0 | – | 1 | – | 0 | 810 |
| 20112011 | UEFA U19 ChampionshipU19 Championship | Denmark U19 | 3 | 3 | 0 | – | 0 | – | 0 | 270 |
| No rows match these filters. | ||||||||||
| Career total · all competitions | 482 | 451 | 35 | 0* | 69 | 0* | 1 | 39,369 | ||
| Competition | Apps | G | A |
|---|---|---|---|
| Bundesliga | 165 | 14 | 0 |
| Premier League | 100 | 4 | 0 |
| Championship | 73 | 5 | 0 |
| Denmark | 39 | 1 | – |
| Regionalliga | 22 | 4 | – |
| DFB Pokal | 21 | 2 | – |
| Denmark U21 | 21 | 4 | – |
| FA Cup | 11 | 0 | – |
| Carabao Cup | 7 | 0 | – |
| UEFA Europa League | 7 | 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 Jannik Vestergaard, 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