| Saison | Compétition | Club | MJ. | B | P | J/JR/R | Min. J. | 
|---|---|---|---|---|---|---|---|
| 2020/2021 | Carabao Cup |  West Bromwich Albion | 2 | 2 | 0 | 0/0/0 | 146 | 
| 2020/2021 | Premier League |  West Bromwich Albion | 19 | 2 | 0 | 2/0/0 | 592 | 
| 2019/2020 | Championship |  West Bromwich Albion | 39 | 10 | 1 | 5/0/0 | 2314 | 
| 2019/2020 | Premier League 2 Divison Two |  West Bromwich Albion U23 | 1 | 2 | 0 | 1/0/0 | 90 | 
| 2018/2019 | Carabao Cup |  West Bromwich Albion | 2 | 0 | 0 | 0/0/0 | 180 | 
| 2018/2019 | Championship |  West Bromwich Albion | 34 | 4 | 1 | 2/0/1 | 1557 | 
| 2018/2019 | FA Cup |  West Bromwich Albion | 3 | 0 | 0 | 0/0/0 | 192 | 
| 2018/2019 | Premier League 2 Divison Two |  West Bromwich Albion U23 | 1 | 1 | 0 | 0/0/0 | 90 | 
| 2017/2018 | Premier League |  West Bromwich Albion | 21 | 2 | 0 | 2/0/1 | 828 | 
| 2017/2018 | Carabao Cup |  West Bromwich Albion | 1 | 0 | 0 | 0/0/0 | 90 | 
| 2017/2018 | FA Cup |  West Bromwich Albion | 2 | 0 | 0 | 0/0/0 | 117 | 
| 2017 | Premier League Asia Trophy |  West Bromwich Albion | 1 | 0 | 0 | 0/0/0 | 0 | 
| 2016/2017 | FA Cup |  West Bromwich Albion | 1 | 0 | 0 | 0/0/0 | 22 | 
| 2016/2017 | Premier League |  West Bromwich Albion | 29 | 3 | 2 | 3/0/0 | 681 | 
| 2015/2016 | Carabao Cup |  Reading | 2 | 0 | 0 | 2/0/0 | 0 | 
| 2015/2016 | FA Cup |  Reading | 5 | 2 | 1 | 0/0/0 | 0 | 
| 2015/2016 | Championship |  Reading | 28 | 3 | 6 | 4/0/0 | 1793 | 
| 2014/2015 | FA Cup |  Reading | 6 | 3 | 1 | 1/0/0 | 0 | 
| 2014/2015 | Championship |  Reading | 29 | 1 | 1 | 2/0/0 | 2212 | 
| 2013/2014 | Championship |  Reading | 36 | 4 | 0 | 2/0/0 | 1713 | 
| 2012/2013 | Carabao Cup |  Reading | 2 | 0 | 0 | 1/0/0 | 0 | 
| 2012/2013 | FA Cup |  Reading | 3 | 0 | 0 | 0/0/0 | 0 | 
| 2012/2013 | Premier League |  Reading | 25 | 7 | 1 | 0/0/0 | 1278 | 
| 2011/2012 | FA Cup |  Reading | 1 | 0 | 0 | 0/0/0 | 90 | 
| 2011/2012 | Championship |  Reading | 36 | 4 | 4 | 3/0/0 | 1844 | 
| 2011/2012 | Carabao Cup |  Reading | 1 | 0 | 0 | 1/0/0 | 0 | 
| 2010/2011 | FA Cup |  Reading | 4 | 0 | 0 | 0/0/0 | 0 | 
| 2010/2011 | Championship |  Reading | 29 | 5 | 2 | 1/0/0 | 1153 | 
| 2009/2010 | FA Cup |  Reading | 1 | 0 | 0 | 0/0/0 | 0 | 
| 2009/2010 | Championship |  Reading | 17 | 0 | 2 | 1/0/0 | 442 | 
| 2008/2009 | League One |  Southend United | 14 | 2 | 0 | 1/0/0 | 1053 | 
| 2008/2009 | League One |  Swindon Town | 20 | 4 | 0 | 1/0/0 | 1611 | 
| Total: | 415 | 61 | 22 | 35/0/2 | 20088 | 
| Saison | Compétition | Club | MJ. | B | P | J/JR/R | Min. J. | 
|---|---|---|---|---|---|---|---|
| 2022 | Coupe du Monde Qualification Europe |  Pays de Galles | 0 | 0 | 0 | 0/0/0 | 0 | 
| 2021 | Matchs Amicaux Internationaux |  Pays de Galles | 1 | 0 | 0 | 0/0/0 | 44 | 
| 2020/2021 | UEFA Ligue des nations |  Pays de Galles | 1 | 0 | 0 | 0/0/0 | 33 | 
| Coupe du Monde Qualification Europe |  Pays de Galles | 8 | 1 | 0 | 2/0/0 | 391 | |
| 2018 | Coupe du Monde Qualification Europe |  Pays de Galles | 8 | 1 | 1 | 1/0/0 | 286 | 
| 2016 | Championnats d'Europe |  Pays de Galles | 5 | 2 | 0 | 0/0/0 | 269 | 
| 2016 | Euro Qualification |  Pays de Galles | 9 | 1 | 0 | 1/0/0 | 612 | 
| 2014 | Euro Qualification |  Pays de Galles | 6 | 1 | 0 | 2/0/0 | 0 | 
| 2014 | Matchs Amicaux Internationaux |  Pays de Galles | 4 | 0 | 0 | 0/0/0 | 0 | 
| 2013 | Matchs Amicaux Internationaux |  Pays de Galles | 4 | 0 | 1 | 1/0/0 | 0 | 
| 2012 | Euro Qualification |  Pays de Galles | 2 | 0 | 0 | 0/0/0 | 0 | 
| 2012 | Matchs Amicaux Internationaux |  Pays de Galles | 3 | 0 | 0 | 0/0/0 | 0 | 
| 2011 | Matchs Amicaux Internationaux |  Pays de Galles | 1 | 0 | 0 | 0/0/0 | 0 | 
| 2010 | Matchs Amicaux Internationaux |  Pays de Galles | 1 | 0 | 0 | 0/0/0 | 0 | 
| Total: | 53 | 6 | 2 | 7/0/0 | 1635 | 
| De | À | Date | Montant | 
|---|---|---|---|
|  Reading |  West Bromwich Albion | 31/08/2016 | Gratuit | 
|  Reading |  Swindon Town | 28/01/2009 | Prêt | 
|  Reading |  Southend United | 01/08/2007 | Prêt |