Center Back · Sporting CP · season-by-season, by competition, and every match.
Below his 2024/25 peak but holding a solid level — the platform for a return is there.
The record covers 6 seasons (2021/22–2025/26) across 3 clubs, including a move abroad — 87 appearances with 9 goal contributions from defence.
His best campaign on record is 2024/25 at Sporting CP — Season rating 34, 1 goal and 0 assists in 20 games. Output has held steady across his last 3 full seasons (25 → 30). The gap to his peak is 4 Season points.
| Season | Club | Apps | G | A | Rating | Season |
|---|---|---|---|---|---|---|
| 2025/26 | Sporting CP | 16 | 2 | 2 | 62 | 30 |
| 2024/25 | Sporting CP | 20 | 1 | 0 | 62 | 34 |
| 2023/24 | Sporting CP | 20 | 1 | 0 | 60 | 25 |
| 2022/23 | 1899 Hoffenheim | 4 | 0 | 0 | 63 | 2 |
| 2021/22 | Tondela | 25 | 2 | 1 | 59 | 14 |
| 2020/21 | Sporting CP | 2 | 0 | 0 | 58 | 3 |
| Competition | Apps | Min | G | A | Rating |
|---|---|---|---|---|---|
| Primeira Liga | 16 | 1186 | 2 | 2 | 7.4 |
| UEFA Champions League | 7 | 445 | 0 | 0 | 6.8 |
| Taça de Portugal | 6 | 320 | 0 | 0 | 7.3 |
| UEFA U21 Championship - Qualification | 1 | 90 | 0 | 0 | — |
| Date | Competition | Opponent | Res | Status | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|---|
| Jul 16 | Friendlies Clubs | H Celtic | 0-2 | Not in squad | — | |||
| Jul 21 | Friendlies Clubs | H Sunderland | 1-0 | Not in squad | — | |||
| Jul 25 | Friendlies Clubs | H Villarreal | 1-0 | Not in squad | — | |||
| Jul 31 | Super Cup | H Benfica | 0-1 | Not in squad | — | |||
| Aug 8 | Primeira Liga | A Casa Pia | 2-0 | Unused sub | 0 | — | ||
| Aug 17 | Primeira Liga | H Arouca | 6-0 | Unused sub | 0 | — | ||
| Aug 23 | Primeira Liga | A Nacional | 4-1 | Unused sub | 0 | — | ||
| Aug 30 | Primeira Liga | H FC Porto | 1-2 | Unused sub | 0 | — | ||
| Sep 13 | Primeira Liga | A Famalicao | 2-1 | Played | 1 | — | ||
| Sep 18 | UEFA Champions League | H Kairat Almaty | 4-1 | Played | 90 | 7.3 | ||
| Sep 22 | Primeira Liga | H Moreirense | 3-0 | Unused sub | 0 | — | ||
| Sep 27 | Primeira Liga | A Estoril | 1-0 | Unused sub | 0 | — | ||
| Oct 1 | UEFA Champions League | A Napoli | 1-2 | Played | 67 | 6.7 | ||
| Oct 5 | Primeira Liga | H SC Braga | 1-1 | Unused sub | 0 | — | ||
| Oct 18 | Taça de Portugal | A Pacos Ferreira | 3-2 | Not in squad | — | |||
| Oct 22 | UEFA Champions League | H Marseille | 2-1 | Unused sub | 0 | — | ||
| Oct 26 | Primeira Liga | A Tondela | 3-0 | Unused sub | 0 | — | ||
| Oct 28 | Taça da Liga | H Alverca | 5-1 | Not in squad | — | |||
| Oct 31 | Primeira Liga | H Alverca | 2-0 | Unused sub | 0 | — | ||
| Nov 4 | UEFA Champions League | A Juventus | 1-1 | Played | 23 | 6.5 | ||
| Nov 8 | Primeira Liga | A Santa Clara | 2-1 | Unused sub | 0 | — | ||
| Nov 22 | Taça de Portugal | H Marinhense | 3-0 | Not in squad | — | |||
| Nov 26 | UEFA Champions League | H Club Brugge KV | 3-0 | Unused sub | 0 | — | ||
| Nov 30 | Primeira Liga | H Estrela | 4-0 | Played | 90 | 1 | 8.7 | |
| Dec 5 | Primeira Liga | A Benfica | 1-1 | Unused sub | 0 | — | ||
| Dec 9 | UEFA Champions League | A Bayern München | 1-3 | Played | 80 | 5.9 | ||
| Dec 13 | Primeira Liga | H AVS | 6-0 | Played | 35 | 7.0 | ||
| Dec 18 | Taça de Portugal | A Santa Clara | 3-2 | Not in squad | — | |||
| Dec 23 | Primeira Liga | A Guimaraes | 4-1 | Played | 90 | 7.2 | ||
| Dec 28 | Primeira Liga | H Rio Ave | 4-0 | Played | 90 | 8.0 | ||
| Jan 2 | Primeira Liga | A GIL Vicente | 1-1 | Played | 90 | 1 | 8.6 | |
| Jan 6 | Taça da Liga | H Guimaraes | 1-2 | Not in squad | — | |||
| Jan 16 | Primeira Liga | H Casa Pia | 3-0 | Not in squad | — | |||
| Jan 20 | UEFA Champions League | H Paris Saint Germain | 2-1 | Not in squad | — | |||
| Jan 24 | Primeira Liga | A Arouca | 2-1 | Not in squad | — | |||
| Jan 28 | UEFA Champions League | A Athletic Club | 3-2 | Played | 36 | 6.7 | ||
| Feb 1 | Primeira Liga | H Nacional | 2-1 | Played | 90 | 6.7 | ||
| Feb 5 | Taça de Portugal | H AVS | 3-2 | Played | 120 | 7.6 | ||
| Feb 9 | Primeira Liga | A FC Porto | 1-1 | Unused sub | 0 | — | ||
| Feb 15 | Primeira Liga | H Famalicao | 1-0 | Unused sub | 0 | — | ||
| Feb 21 | Primeira Liga | A Moreirense | 3-0 | Unused sub | 0 | — | ||
| Feb 27 | Primeira Liga | H Estoril | 3-0 | Unused sub | 0 | — | ||
| Mar 3 | Taça de Portugal | H FC Porto | 1-0 | Unused sub | 0 | — | ||
| Mar 7 | Primeira Liga | A SC Braga | 2-2 | Played | 9 | 6.3 | ||
| Mar 11 | UEFA Champions League | A Bodo/Glimt | 0-3 | Unused sub | 0 | — | ||
| Mar 17 | UEFA Champions League | H Bodo/Glimt | 5-0 | Played | 64 | 7.3 | ||
| Mar 22 | Primeira Liga | A Alverca | 4-1 | Played | 90 | 6.6 | ||
| Apr 3 | Primeira Liga | H Santa Clara | 4-2 | Played | 90 | 1 | 8.2 | |
| Apr 7 | UEFA Champions League | H Arsenal | 0-1 | Unused sub | 0 | — | ||
| Apr 11 | Primeira Liga | A Estrela | 1-0 | Played | 90 | 7.3 | ||
| Apr 15 | UEFA Champions League | A Arsenal | 0-0 | Played | 85 | 7.5 | ||
| Apr 19 | Primeira Liga | H Benfica | 1-2 | Played | 61 | 6.6 | ||
| Apr 22 | Taça de Portugal | A FC Porto | 0-0 | Played | 100 | 7.2 | ||
| Apr 26 | Primeira Liga | A AVS | 1-1 | Unused sub | 0 | — | ||
| Apr 29 | Primeira Liga | H Tondela | 2-2 | Played | 90 | 6.6 | ||
| May 4 | Primeira Liga | H Guimaraes | 5-1 | Played | 90 | 7.3 | ||
| May 11 | Primeira Liga | A Rio Ave | 4-1 | Played | 90 | 6.6 | ||
| May 16 | Primeira Liga | H GIL Vicente | 3-0 | Played | 90 | 1 | 8.7 | |
| May 24 | Taça de Portugal | H Torreense | 1-2 | Played | 100 | 7.2 |