Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Chesterfield | 2022/23 – 2026/27 | 162 | 26 | 9 |
| Wigan | 2021/22 – 2022/23 | 86 | 7 | 5 |
| Portsmouth | 2018/19 – 2020/21 | 149 | 13 | — |
| Burton | 2014/15 – 2017/18 | 134 | 13 | — |
| Derby | 2011/12 – 2014/15 | 10 | 0 | — |
| Cambridge | 2014/15 | 10 | 0 | — |
| Newport | 2013/14 | 40 | 2 | — |
| Grimsby | 2012/13 | 16 | 1 | — |
| Bradford | 2012/13 | 7 | 0 | — |
| Mansfield | 2010/11 – 2011/12 | 14 | 0 | — |
| Alfreton Town | 2010/11 | 2 | 0 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 1 Jul 2023 | Wigan | Chesterfield | Free |
| 1 Jul 2021 | Portsmouth | Wigan | Free |
| 1 Jul 2018 | Burton Albion | Portsmouth | Free |
| 1 Jul 2015 | Derby | Burton Albion | Free |
| 1 Jun 2015 | Burton Albion | Derby | — |
| 30 Jan 2015 | Derby | Burton Albion | Loan |
| 20 Dec 2014 | Cambridge United | Derby | — |
| 18 Sept 2014 | Derby | Cambridge United | Loan |
| 1 Jul 2014 | Newport County | Derby | — |
| 12 Aug 2013 | Derby | Newport County | Loan |
| 1 Jul 2013 | Grimsby | Derby | — |
| 22 Feb 2013 | Derby | Grimsby | Loan |
| 16 Nov 2012 | Derby | Bradford | Loan |
| 2 Jan 2012 | Mansfield Town | Derby | € 125K |
| 15 Nov 2011 | Mansfield Town | Derby | Loan |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026/27 | League Cup | Chesterfield | 1 | 0 | 10 | 0 | 0 | 0 | 0 | 6.60 |
| 2026/27 | EFL Trophy | Chesterfield | 2 | 2 | 157 | 0 | 1 | 0 | 0 | 6.92 |
| 2026/27 | League Two | Chesterfield | 8 | 0 | 135 | 0 | 0 | 0 | 0 | 5.86 |
| 2025/26 | League Cup | Chesterfield | 1 | 0 | 52 | 0 | 0 | 1 | 0 | 6.50 |
| 2025/26 | EFL Trophy | Chesterfield | 4 | 3 | 251 | 0 | 0 | 1 | 0 | 6.60 |
| 2025/26 | FA Cup | Chesterfield | 2 | 2 | 90 | 0 | 0 | 0 | 0 | 6.90 |
| 2025/26 | League Two | Chesterfield | 46 | 33 | 3073 | 8 | 2 | 10 | 0 | 6.93 |
| 2024/25 | League Two | Chesterfield | 44 | 41 | 3538 | 4 | 6 | 8 | 0 | 6.96 |
| 2024/25 | FA Cup | Chesterfield | 3 | 2 | 127 | — | 0 | 1 | 0 | 6.80 |
| 2024/25 | League Cup | Chesterfield | 1 | 1 | 68 | 0 | 0 | 0 | 0 | 6.90 |
| 2024/25 | EFL Trophy | Chesterfield | 2 | 1 | 127 | 0 | 0 | 1 | 0 | 6.80 |
| 2023/24 | National League | Chesterfield | 44 | 43 | 3877 | 12 | — | 9 | 0 | — |
| 2023/24 | FA Cup | Chesterfield | 4 | 4 | 360 | 2 | — | 3 | 0 | — |
| 2022/23 | Championship | Wigan | 36 | 22 | 2001 | 2 | 1 | 4 | 0 | 6.68 |
| 2022/23 | FA Cup | Wigan | 2 | 2 | 180 | 1 | — | 0 | 0 | — |
| 2021/22 | League One | Wigan | 43 | 43 | 3863 | 3 | 4 | 8 | 0 | 7.11 |
| 2021/22 | EFL Trophy | Wigan | 1 | 1 | 90 | 1 | — | 0 | 0 | 8.00 |
| 2021/22 | League Cup | Wigan | 2 | 2 | 180 | 0 | — | 0 | 0 | 7.45 |
| 2021/22 | FA Cup | Wigan | 2 | 1 | 104 | 0 | — | 0 | 0 | — |
| 2020/21 | League One | Portsmouth | 46 | 46 | 4114 | 6 | — | 7 | 0 | 7.09 |
| 2020/21 | League Cup | Portsmouth | 2 | 2 | 180 | 0 | — | 0 | 0 | 6.60 |
| 2020/21 | FA Cup | Portsmouth | 3 | 3 | 276 | 2 | — | 2 | 0 | 7.10 |
| 2020/21 | EFL Trophy | Portsmouth | 1 | 1 | 90 | 0 | — | 0 | 0 | 7.30 |
| 2019/20 | League One | Portsmouth | 33 | 33 | 2970 | 1 | — | 8 | 0 | 7.02 |
| 2019/20 | League Cup | Portsmouth | 3 | 3 | 270 | 0 | — | 0 | 0 | 6.73 |
| 2019/20 | EFL Trophy | Portsmouth | 5 | 3 | 329 | 0 | — | 1 | 0 | 6.60 |
| 2019/20 | FA Cup | Portsmouth | 3 | 3 | 204 | 0 | — | 0 | 0 | 6.30 |
| 2018/19 | League One | Portsmouth | 45 | 45 | 4050 | 4 | — | 13 | 0 | 6.95 |
| 2018/19 | League Cup | Portsmouth | 1 | 1 | 90 | 0 | — | 1 | 0 | — |
| 2018/19 | EFL Trophy | Portsmouth | 3 | 2 | 235 | 0 | — | 0 | 0 | — |
| 2018/19 | FA Cup | Portsmouth | 4 | 4 | 360 | 0 | — | 0 | 0 | 7.00 |
| 2017/18 | Championship | Burton | 33 | 32 | 2880 | 3 | — | 12 | 0 | 6.57 |
| 2017/18 | League Cup | Burton | 3 | 3 | 270 | 1 | — | 0 | 0 | 5.80 |
| 2017/18 | FA Cup | Burton | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2016/17 | Championship | Burton | 33 | 23 | 2245 | 3 | — | 7 | 0 | 6.78 |
| 2016/17 | League Cup | Burton | 2 | 2 | 210 | 0 | — | 0 | 0 | — |
| 2016/17 | FA Cup | Burton | 1 | 1 | 90 | 0 | — | 1 | 0 | — |
| 2015/16 | League One | Burton | 41 | 35 | 3153 | 6 | — | 7 | 0 | — |
| 2015/16 | League Cup | Burton | 2 | 1 | 129 | 0 | — | 1 | 0 | — |
| 2015/16 | EFL Trophy | Burton | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2014/15 | League Two | Burton | 17 | 13 | 1174 | 0 | — | 1 | 0 | — |
| 2014/15 | League Two | Cambridge | 8 | 5 | 468 | 0 | — | 0 | 1 | — |
| 2014/15 | FA Cup | Cambridge | 2 | 1 | 70 | 0 | — | 0 | 0 | — |
| 2013/14 | League Two | Newport | 33 | 24 | 2241 | 1 | — | 3 | 1 | — |
| 2013/14 | League Cup | Newport | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2013/14 | EFL Trophy | Newport | 3 | 3 | 226 | 0 | — | 0 | 0 | — |
| 2013/14 | FA Cup | Newport | 3 | 3 | 265 | 1 | — | 0 | 0 | — |
| 2012/13 | National League | Grimsby | 16 | 15 | 1362 | 1 | — | 4 | 0 | — |
| 2012/13 | League Two | Bradford | 5 | 4 | 320 | 0 | — | 0 | 0 | — |
| 2012/13 | EFL Trophy | Bradford | 2 | 2 | 180 | 0 | — | 0 | 0 | — |
| 2012/13 | League Cup | Derby | 1 | 0 | 58 | 0 | — | 0 | 0 | — |
| 2011/12 | Championship | Derby | 8 | 8 | 676 | 0 | — | 0 | 0 | — |
| 2011/12 | National League | Mansfield | 5 | 5 | 367 | 0 | — | 1 | 1 | — |
| 2011/12 | FA Cup | Derby | 1 | 0 | 1 | 0 | — | 0 | 0 | — |
| 2010/11 | National League N / S | Alfreton Town | 2 | 2 | 180 | 0 | — | 0 | 0 | — |
| 2010/11 | FA Trophy | Mansfield | 7 | 6 | 671 | 0 | — | 0 | 0 | — |
| 2010/11 | National League | Mansfield | 2 | 1 | 134 | 0 | — | 0 | 0 | — |
Availability history
| Reason | From | Until | Days |
|---|---|---|---|
| Yellow Cards | 4 Jan 2024 | 6 Jan 2024 | 2 |
Trophies
| Competition | Season | Place |
|---|---|---|
| FA Trophy (England) | 2012/2013 | 2nd Place |
| FA Trophy (England) | 2010/2011 | 2nd Place |
| League Two (England) | 2014/2015 | Winner |
| League One (England) | 2021/2022 | Winner |
| League One (England) | 2015/2016 | 2nd Place |
| EFL Trophy (England) | 2018/2019 | Winner |
| National League (England) | 2023/2024 | Winner |
