Career as a player
| Period | Team | Country | Position | # | |
|---|---|---|---|---|---|
| 07/2025 - 08/2026 | ![]() | Millwall FC | Defence | 23 | |
| 07/2023 - 06/2025 | ![]() | Millwall FC | Defence | 15 | |
| 08/2022 - 06/2023 | ![]() | OGC Nice | Defence | 15 | |
| 08/2018 - 08/2022 | ![]() | Fulham FC | Defence | 23 | |
| 07/2016 - 08/2018 | ![]() | Bristol City | Defence | 3 | |
| 07/2014 - 06/2016 | ![]() | Bristol City | Midfield | 23 | |
| 05/2013 - 06/2014 | ![]() | Bristol City | Midfield | 15 | |
| 03/2013 - 04/2013 | ![]() | Plymouth Argyle | Midfield | 18 | |
| 07/2012 - 03/2013 | ![]() | Bristol City | Midfield | 26 | |
| 01/2012 - 06/2012 | ![]() | Bristol City | Midfield | 31 |
Club matches
| Competition | Matches | Start | In | Out | Min. | Scores | 11m | Ass | Yellow | Yellow-Red | Red | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
![]() | Conference League | 3 | 3 | - | 3 | 237 | 1 | - | 1 | - | - | - | » All matches |
| Premier League | 44 | 34 | 10 | 8 | 3.022 | 1 | - | 1 | 7 | - | - | » All matches | |
| Championship | 280 | 236 | 44 | 47 | 21.216 | 12 | - | 23 | 53 | - | 1 | » All matches | |
| FA Cup | 22 | 20 | 2 | 3 | 1.834 | - | - | 4 | 2 | - | - | » All matches | |
| League Cup | 20 | 16 | 4 | 8 | 1.366 | 4 | - | - | 6 | - | - | » All matches | |
| League One | 62 | 50 | 12 | 23 | 4.450 | 8 | - | 6 | 5 | - | - | » All matches | |
| League Two | 10 | 10 | - | 1 | 896 | 1 | - | - | 2 | - | - | » All matches | |
| EFL Trophy | 6 | 5 | 1 | 4 | 400 | 1 | - | - | - | - | - | » All matches | |
| Playoffs | 3 | 3 | - | 1 | 300 | 2 | - | - | - | - | - | » All matches | |
| Ligue 1 | 6 | 2 | 4 | 2 | 179 | - | - | - | 3 | - | - | » All matches | |
| Coupe de France | 1 | - | 1 | - | 26 | - | - | - | - | - | - | » All matches | |
| Total | 457 | 379 | 78 | 100 | 33.926 | 30 | - | 35 | 78 | - | 1 |






