 
          | Season | League | Team | A | G | Assists | Y/YR/R | MP | 
|---|---|---|---|---|---|---|---|
| 2024/2025 | League Two |  AFC Wimbledon | 31 | 2 | 5 | 4/0/1 | 2691 | 
| 2024/2025 | Carabao Cup |  AFC Wimbledon | 2 | 0 | 2 | 1/0/0 | 180 | 
| 2024 | Club Friendlies |  AFC Wimbledon | 1 | 0 | 0 | 0/0/0 | 90 | 
| 2023/2024 | EFL Trophy |  AFC Wimbledon | 4 | 0 | 0 | 0/0/0 | 143 | 
| 2023/2024 | FA Cup |  AFC Wimbledon | 3 | 2 | 1 | 0/0/0 | 266 | 
| 2023/2024 | Carabao Cup |  AFC Wimbledon | 1 | 0 | 0 | 0/0/0 | 90 | 
| 2023/2024 | League Two |  AFC Wimbledon | 38 | 2 | 7 | 4/0/0 | 3286 | 
| 2022/2023 | FA Cup |  Stevenage | 4 | 0 | 1 | 0/0/0 | 254 | 
| 2022/2023 | EFL Trophy |  Stevenage | 3 | 0 | 0 | 2/0/0 | 149 | 
| 2022/2023 | Carabao Cup |  Stevenage | 2 | 0 | 0 | 0/0/0 | 180 | 
| 2022/2023 | League Two |  Stevenage | 41 | 4 | 4 | 5/0/0 | 3006 | 
| 2021/2022 | EFL Trophy |  Stevenage | 3 | 0 | 0 | 1/0/0 | 225 | 
| 2021/2022 | FA Cup |  Stevenage | 3 | 0 | 0 | 1/0/0 | 270 | 
| 2021/2022 | Carabao Cup |  Stevenage | 2 | 0 | 0 | 1/0/0 | 180 | 
| 2021/2022 | League Two |  Stevenage | 27 | 2 | 6 | 4/0/0 | 2401 | 
| 2020/2021 | National League |  Notts County | 42 | 5 | 0 | 5/0/0 | 3726 | 
| 2020/2021 | FA Trophy |  Notts County | 2 | 0 | 0 | 0/0/0 | 180 | 
| 2019/2020 | EFL Trophy |  Bradford City | 1 | 0 | 1 | 1/0/0 | 62 | 
| 2019/2020 | League Two |  Bradford City | 18 | 1 | 0 | 5/0/0 | 1351 | 
| 2017/2018 | Carabao Cup |  Bradford City | 1 | 0 | 0 | 0/0/0 | 90 | 
| 2017/2018 | League One |  Bradford City | 25 | 0 | 2 | 3/0/0 | 2058 | 
| 2017/2018 | FA Cup |  Bradford City | 1 | 0 | 0 | 0/0/0 | 66 | 
| 2016/2017 | League One |  AFC Wimbledon | 46 | 1 | 3 | 8/0/0 | 4140 | 
| 2016/2017 | FA Cup |  AFC Wimbledon | 5 | 0 | 4 | 1/0/0 | 450 | 
| 2016/2017 | EFL Trophy |  AFC Wimbledon | 3 | 0 | 0 | 1/0/0 | 139 | 
| 2015/2016 | League Two |  AFC Wimbledon | 43 | 1 | 2 | 9/0/0 | 0 | 
| 2014/2015 | League One |  Swindon Town | 10 | 1 | 0 | 1/0/0 | 163 | 
| 2014/2015 | EFL Trophy |  Swindon Town | 2 | 0 | 0 | 0/0/0 | 0 | 
| 2013/2014 | EFL Trophy |  Brentford | 1 | 0 | 0 | 0/0/0 | 0 | 
| 2013/2014 | League One |  Brentford | 20 | 0 | 0 | 1/0/0 | 717 | 
| 2013/2014 | FA Cup |  Brentford | 2 | 1 | 0 | 0/0/0 | 0 | 
| 2013/2014 | Carabao Cup |  Brentford | 2 | 0 | 0 | 0/0/0 | 0 | 
| 2012/2013 | League One |  Brentford | 6 | 0 | 0 | 1/0/0 | 331 | 
| 2012/2013 | League Two |  AFC Wimbledon | 5 | 0 | 0 | 2/0/0 | 0 | 
| 2012/2013 | FA Cup |  Brentford | 2 | 0 | 0 | 0/0/0 | 0 | 
| 2011/2012 | League One |  Brentford | 8 | 0 | 0 | 0/0/0 | 552 | 
| 2011/2012 | Carabao Cup |  Brentford | 1 | 0 | 0 | 0/0/0 | 0 | 
| 2011/2012 | EFL Trophy |  Brentford | 2 | 0 | 0 | 0/0/0 | 0 | 
| 2010/2011 | League One |  Brentford | 1 | 0 | 0 | 0/0/0 | 8 | 
| 2010/2011 | Vanarama National League North |  St Albans City | 2 | 0 | 0 | 0/0/0 | 0 | 
| Total: | 416 | 22 | 38 | 61/0/1 | 27444 | 
| From | To | Date | Amount | 
|---|---|---|---|
|  AFC Wimbledon |  Stevenage | 01/07/2023 | Free | 
|  Stevenage |  Notts County | 01/07/2021 | Free | 
|  Notts County |  Bradford City | 18/08/2020 | Free | 
|  Bradford City |  AFC Wimbledon | 04/07/2017 | N/a | 
|  AFC Wimbledon |  Swindon Town | 07/01/2015 | Free | 
|  Swindon Town |  Brentford | 29/08/2014 | Free | 
|  Brentford |  AFC Wimbledon | 01/12/2012 | N/a | 
|  AFC Wimbledon |  Brentford | 01/11/2012 | Loan |