| Saison | Compétition | Club | MJ. | B | P | J/JR/R | Min. J. | 
|---|---|---|---|---|---|---|---|
| 2024/2025 | Premier Soccer League |  Cape Town City | 18 | 0 | 0 | 1/0/0 | 1030 | 
| 2024/2025 | Coupe d'Afrique du Sud |  Cape Town City | 1 | 0 | 0 | 0/0/0 | 87 | 
| 2024/2025 | Coupe MTN8 |  Cape Town City | 3 | 0 | 0 | 0/0/0 | 226 | 
| 2024 | Coupe de la Ligue |  Cape Town City | 1 | 0 | 0 | 0/0/0 | 19 | 
| 2023/2024 | Coupe d'Afrique du Sud |  Sekhukhune United | 2 | 0 | 0 | 0/0/0 | 90 | 
| 2023/2024 | Premier Soccer League |  Sekhukhune United | 28 | 0 | 2 | 1/0/0 | 2106 | 
| 2023/2024 | Coupe MTN8 |  Sekhukhune United | 1 | 0 | 0 | 0/0/0 | 90 | 
| 2023/2024 | CAF Coupe de la Confédération |  Sekhukhune United | 3 | 0 | 0 | 0/0/0 | 246 | 
| 2023 | Coupe de la Ligue |  Sekhukhune United | 2 | 0 | 0 | 1/0/0 | 26 | 
| 2022/2023 | Premier Soccer League |  Sekhukhune United | 9 | 0 | 0 | 2/0/0 | 651 | 
| 2022/2023 | Coupe d'Afrique du Sud |  Sekhukhune United | 5 | 0 | 0 | 0/0/0 | 372 | 
| 2022 | Major League Soccer |  Cincinnati | 0 | 0 | 0 | 0/0/0 | 0 | 
| 2021 | Major League Soccer |  Cincinnati | 13 | 0 | 0 | 1/0/0 | 456 | 
| 2020 | Major League Soccer |  Cincinnati | 9 | 0 | 0 | 0/0/0 | 460 | 
| 2019/2020 | Championship |  Brentford | 25 | 1 | 1 | 0/0/0 | 1368 | 
| 2019/2020 | FA Cup |  Brentford | 1 | 0 | 0 | 0/0/0 | 46 | 
| 2018/2019 | FA Cup |  Brentford | 1 | 0 | 0 | 0/0/0 | 78 | 
| 2018/2019 | Championship |  Brentford | 34 | 3 | 2 | 0/0/0 | 2201 | 
| 2018/2019 | Carabao Cup |  Brentford | 2 | 1 | 0 | 0/0/0 | 0 | 
| 2017/2018 | FA Cup |  Brentford | 1 | 0 | 0 | 0/0/0 | 63 | 
| 2017/2018 | Championship |  Brentford | 35 | 1 | 2 | 0/0/0 | 2185 | 
| 2017/2018 | Carabao Cup |  Brentford | 3 | 0 | 0 | 0/0/0 | 226 | 
| 2016/2017 | Eredivisie |  FC Twente | 33 | 1 | 2 | 0/0/0 | 2744 | 
| 2015/2016 | Eredivisie |  FC Twente | 31 | 1 | 4 | 3/0/0 | 2784 | 
| 2014/2015 | KNVB Beker |  FC Twente | 5 | 0 | 1 | 1/0/0 | 0 | 
| 2014/2015 | Ligue Europa |  FC Twente | 2 | 0 | 0 | 0/0/0 | 180 | 
| 2014/2015 | Eredivisie |  FC Twente | 33 | 1 | 7 | 4/0/0 | 2888 | 
| 2013/2014 | KNVB Beker |  PEC Zwolle | 5 | 0 | 2 | 0/0/0 | 0 | 
| 2013/2014 | Eredivisie |  PEC Zwolle | 27 | 2 | 1 | 1/0/0 | 2357 | 
| 2012/2013 | Eredivisie |  Feyenoord | 1 | 0 | 0 | 1/0/0 | 0 | 
| 2011/2012 | Eredivisie |  Feyenoord | 20 | 0 | 1 | 1/0/0 | 577 | 
| 2011/2012 | KNVB Beker |  Feyenoord | 2 | 0 | 0 | 0/0/0 | 0 | 
| 2010/2011 | Eredivisie |  Feyenoord | 14 | 0 | 1 | 2/0/0 | 1126 | 
| Total: | 370 | 11 | 26 | 19/0/0 | 24682 | 
| Saison | Compétition | Club | MJ. | B | P | J/JR/R | Min. J. | 
|---|---|---|---|---|---|---|---|
| 2021 | Coupe d'Afrique des Nations Qualifications |  Afrique du Sud | 0 | 0 | 0 | 0/0/0 | 0 | 
| 2019 | Coupe d'Afrique des Nations Qualifications |  Afrique du Sud | 1 | 0 | 0 | 0/0/0 | 66 | 
| 2019 | Matchs Amicaux Internationaux |  Afrique du Sud | 2 | 0 | 0 | 0/0/0 | 108 | 
| 2019 | Coupe d'Afrique des Nations |  Afrique du Sud | 5 | 0 | 0 | 0/0/0 | 366 | 
| 2018 | Coupe du Monde Qualification Africa |  Afrique du Sud | 4 | 0 | 0 | 0/0/0 | 228 | 
| 2018 | Matchs Amicaux Internationaux |  Afrique du Sud | 1 | 0 | 0 | 0/0/0 | 66 | 
| 2017 | Matchs Amicaux Internationaux |  Afrique du Sud | 1 | 0 | 0 | 0/0/0 | 90 | 
| 2015 | Matchs Amicaux Internationaux |  Afrique du Sud | 3 | 0 | 0 | 0/0/0 | 0 | 
| Total: | 17 | 0 | 0 | 0/0/0 | 924 | 
| De | À | Date | Montant | 
|---|---|---|---|
|  Sekhukhune United |  Cape Town City | 01/07/2024 | N/a | 
|  Brentford |  Cincinnati | 20/08/2020 | Gratuit | 
|  FC Twente |  Brentford | 07/07/2017 | 1M € | 
|  PEC Zwolle |  FC Twente | 08/08/2014 | 1.5M € | 
|  Feyenoord |  PEC Zwolle | 01/07/2013 | N/a | 
|  Feyenoord |  Excelsior | 01/09/2009 | Prêt | 
|  SuperSport United |  Feyenoord | 01/08/2009 | 400K € |