| Competition | Goals | Apps | Started | Minutes | Sub On | Sub Off | ||
|---|---|---|---|---|---|---|---|---|
| England | ||||||||
| Premier League | 20 | 303 | 287 | 25,694' | 16 | 14 | 56 | 1 |
| Championship | 7 | 59 | 58 | 5,155' | 1 | 4 | 12 | 0 |
| League Two | 9 | 42 | 40 | 3,621' | 2 | 2 | 1 | 0 |
| FA Cup | 3 | 28 | 22 | 2,140' | 6 | 2 | 5 | 0 |
| Carabao Cup | 0 | 22 | 19 | 1,976' | 3 | 2 | 2 | 0 |
| League One | 1 | 4 | 3 | 360' | 1 | 0 | 4 | 0 |
| EFL Vertu Trophy | 1 | 1 | 1 | 90' | 0 | 0 | 1 | 0 |
| Europe | ||||||||
| UEFA Europa League | 2 | 10 | 10 | 930' | 0 | 0 | 1 | 0 |
| UEFA Europa Conference League | 1 | 4 | 2 | 232' | 2 | 1 | 0 | 0 |
| World | ||||||||
| Premier League Asia Trophy | 0 | 2 | 2 | 210' | 0 | 0 | 0 | 0 |
| Total | 44 | 475 | 444 | 40,408' | 31 | 25 | 82 | 1 |
| Club | Season | League | National cup | League cup | Europe | Total | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Division | Apps | Gls | Apps | Gls | Apps | Gls | Apps | Gls | Apps | Gls | ||
Rochdale | 2009/2010 | League Two | 42 | 9 | 2 | 2 | 1 | 0 | - | - | 45 | 11 |
| 2010/2011 | League One | 4 | 1 | 1 | 1 | 2 | 0 | - | - | 7 | 2 | |
| Total | 46 | 10 | 3 | 3 | 3 | 0 | - | - | 52 | 13 | ||
West Bromwich Albion | 2011/2012 | Premier League | 8 | 0 | 2 | 0 | 2 | 0 | - | - | 12 | 0 |
| 2012/2013 | Premier League | 1 | 0 | 1 | 0 | 2 | 0 | - | - | 4 | 0 | |
| 2013/2014 | Premier League | 12 | 0 | 1 | 0 | 2 | 0 | - | - | 15 | 0 | |
| 2014/2015 | Premier League | 29 | 2 | 4 | 0 | 2 | 0 | - | - | 35 | 2 | |
| 2015/2016 | Premier League | 38 | 4 | 3 | 0 | 2 | 0 | - | - | 43 | 4 | |
| 2016/2017 | Premier League | 37 | 4 | 1 | 0 | 1 | 0 | - | - | 39 | 4 | |
| 2017 | - | - | - | 2 | 0 | - | - | - | - | 2 | 0 | |
| 2017/2018 | Premier League | 28 | 2 | 2 | 0 | 2 | 0 | - | - | 32 | 2 | |
| 2018/2019 | Championship | 43 | 3 | 1 | 0 | 1 | 0 | - | - | 45 | 3 | |
| Total | 196 | 15 | 17 | 0 | 14 | 0 | - | - | 227 | 15 | ||
Bolton Wanderers | 2012/2013 | Championship | 16 | 4 | - | - | - | - | - | - | 16 | 4 |
| Total | 16 | 4 | - | - | - | - | - | - | 16 | 4 | ||
Watford | 2019/2020 | Premier League | 29 | 1 | 1 | 0 | - | - | - | - | 30 | 1 |
| 2020/2021 | Championship | - | - | - | - | 1 | 0 | - | - | 1 | 0 | |
| Total | 29 | 1 | 1 | 0 | 1 | 0 | - | - | 31 | 1 | ||
West Ham Utd | 2020/2021 | Premier League | 22 | 3 | 2 | 1 | - | - | - | - | 24 | 4 |
| 2021/2022 | Premier League | 34 | 2 | 3 | 0 | 3 | 0 | 10 | 2 | 50 | 4 | |
| 2022/2023 | Premier League | 8 | 0 | 1 | 0 | - | - | 4 | 1 | 13 | 1 | |
| Total | 64 | 5 | 6 | 1 | 3 | 0 | 14 | 3 | 87 | 9 | ||
Wolverhampton | 2022/2023 | Premier League | 17 | 1 | - | - | - | - | - | - | 17 | 1 |
| 2023/2024 | Premier League | 25 | 1 | 3 | 0 | - | - | - | - | 28 | 1 | |
| 2024/2025 | Premier League | 15 | 0 | - | - | 1 | 0 | - | - | 16 | 0 | |
| Total | 57 | 2 | 3 | 0 | 1 | 0 | - | - | 61 | 2 | ||
| Career total | 408 | 37 | 30 | 4 | 22 | 0 | 14 | 3 | 474 | 44 | ||