Partial coverage: some seasons of this career are not stored yet (2026/27).
Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Coventry City | 2019/20 – 2025/26 | 139 | 1 | 0 |
| Bradford | 2018/19 | 6 | 0 | — |
| AFC Telford United | 2017/18 | 17 | 0 | — |
| Oldham | 2017/18 | 7 | 0 | — |
| Rochdale | 2016/17 | 8 | 0 | — |
| Cardiff | 2014/15 – 2016/17 | 4 | 0 | — |
| AFC Wimbledon | 2015/16 | 9 | 0 | — |
| Accrington ST | 2013/14 | 1 | 0 | — |
| Cambridge United | 2013/14 | 0 | 0 | — |
| Chesterfield | 2012/13 | 0 | 0 | — |
| Gateshead | 2011/12 | 0 | 0 | — |
| Harrogate Town | 2011/12 | 3 | 0 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 1 Jul 2019 | Bradford | Coventry | Free |
| 28 Jul 2018 | Cardiff | Bradford | Free |
| 2 Feb 2018 | Cardiff | AFC Telford United | Loan |
| 4 Aug 2017 | Cardiff | Oldham | Loan |
| 30 Jan 2017 | Cardiff | Rochdale | Loan |
| 3 Jan 2016 | AFC Wimbledon | Cardiff | — |
| 20 Oct 2015 | Cardiff | AFC Wimbledon | Loan |
| 1 Aug 2014 | Accrington ST | Cardiff | — |
| 23 Aug 2013 | Cambridge United | Accrington ST | Free |
| 9 Aug 2013 | Sunderland | Cambridge United | Free |
| 1 Sept 2012 | Sunderland | Chesterfield | Loan |
| 6 Jan 2012 | Sunderland | Gateshead | Loan |
| 4 Nov 2011 | Sunderland | Harrogate Town | Loan |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2025/26 | League Cup | Coventry City | 2 | 2 | 185 | 0 | 0 | 0 | 0 | 6.80 |
| 2025/26 | FA Cup | Coventry City | 1 | 1 | 90 | 0 | 0 | 0 | 0 | 6.60 |
| 2024/25 | Championship | Coventry City | 20 | 14 | 570 | — | 0 | 2 | 0 | 6.90 |
| 2024/25 | League Cup | Coventry City | 3 | 3 | 270 | — | 0 | 0 | 0 | 7.43 |
| 2023/24 | Championship | Coventry City | 18 | 18 | 1620 | 0 | — | 0 | 0 | 6.79 |
| 2023/24 | FA Cup | Coventry City | 4 | 4 | 360 | 0 | — | 0 | 0 | 6.60 |
| 2022/23 | Championship | Coventry City | 48 | 48 | 4080 | 1 | — | 6 | 0 | 6.96 |
| 2022/23 | League Cup | Coventry City | 1 | 1 | 90 | 0 | — | 0 | 0 | 5.70 |
| 2021/22 | Championship | Coventry City | 5 | 5 | 450 | 0 | — | 0 | 0 | 6.68 |
| 2021/22 | FA Cup | Coventry City | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2021/22 | League Cup | Coventry City | 1 | 1 | 90 | 0 | — | 0 | 0 | 6.20 |
| 2020/21 | Championship | Coventry City | 27 | 26 | 2340 | 0 | — | 1 | 0 | 6.72 |
| 2020/21 | FA Cup | Coventry City | 1 | 1 | 90 | 0 | — | 0 | 0 | 6.30 |
| 2019/20 | League Cup | Coventry City | 2 | 2 | 180 | 0 | — | 0 | 0 | 6.35 |
| 2019/20 | EFL Trophy | Coventry City | 4 | 4 | 360 | 0 | — | 0 | 0 | — |
| 2019/20 | FA Cup | Coventry City | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2018/19 | League One | Bradford | 4 | 4 | 360 | 0 | — | 0 | 0 | — |
| 2018/19 | League Cup | Bradford | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2018/19 | FA Cup | Bradford | 1 | 1 | 120 | 0 | — | 0 | 0 | — |
| 2017/18 | National League N / S | AFC Telford United | 17 | 17 | 1530 | 0 | — | 0 | 0 | — |
| 2017/18 | League One | Oldham | 5 | 5 | 450 | 0 | — | 1 | 0 | — |
| 2017/18 | League Cup | Oldham | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2017/18 | EFL Trophy | Oldham | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2016/17 | League One | Rochdale | 8 | 8 | 720 | 0 | — | 0 | 0 | — |
| 2016/17 | Championship | Cardiff | 3 | 3 | 270 | 0 | — | 1 | 0 | 6.10 |
| 2015/16 | League Two | AFC Wimbledon | 8 | 8 | 720 | 0 | — | 0 | 0 | — |
| 2015/16 | FA Cup | AFC Wimbledon | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2015/16 | League Cup | Cardiff | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2013/14 | EFL Trophy | Accrington ST | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2011/12 | National League N / S | Harrogate Town | 3 | 3 | 270 | 0 | — | 0 | 0 | — |
Availability history
No injuries or suspensions recorded.
Trophies
No trophies recorded.
