Partial coverage: some seasons of this career are not stored yet (2026/27).
Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Ajax | 2023/24 – 2025/26 | 63 | 5 | 1 |
| Angers SCO | 2025/26 | 15 | 0 | 1 |
| Toulouse | 2020/21 – 2023/24 | 120 | 23 | 41 |
| De Graafschap | 2019/20 – 2020/21 | 25 | 5 | — |
| FC Eindhoven | 2014/15 – 2019/20 | 119 | 21 | — |
| Heerenveen | 2015/16 – 2016/17 | 23 | 1 | 3 |
| Willem II | 2016/17 | 9 | 0 | — |
| Jong Ajax | 2013/14 | 15 | 1 | — |
| Ajax U19 | 2013/14 | 3 | 1 | — |
| Netherlands U17 | 2012/13 | 7 | 2 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 1 Jul 2023 | Toulouse | Ajax | Free |
| 8 Aug 2020 | De Graafschap | Toulouse | — |
| 28 Aug 2019 | FC Eindhoven | De Graafschap | — |
| 1 Jul 2017 | Heerenveen | FC Eindhoven | Free |
| 10 Aug 2016 | Heerenveen | Willem II | Loan |
| 1 Jul 2015 | FC Eindhoven | Heerenveen | — |
| 1 Jul 2014 | Ajax | FC Eindhoven | Free |
| 29 Jun 2026 | Ajax | Angers | Free agent |
| 10 Jul 2026 | Ajax | Angers | Free agent |
| 20 Jan 2026 | Ajax | Angers | Loan |
| 29 Jun 2026 | Angers | Ajax | Return from loan |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2025/26 | Friendlies Clubs | Ajax | 1 | 0 | 45 | 0 | 0 | 0 | 0 | 7.60 |
| 2025/26 | KNVB Beker | Ajax | 1 | 0 | 45 | 0 | 0 | 0 | 0 | 6.60 |
| 2025/26 | Ligue 1 | Angers SCO | 15 | 14 | 1242 | 0 | 1 | 3 | 0 | 7.05 |
| 2024/25 | Eredivisie | Ajax | 12 | 7 | 627 | 0 | 0 | 0 | 0 | 7.23 |
| 2024/25 | KNVB Beker | Ajax | 1 | 0 | 44 | 0 | — | 0 | 0 | — |
| 2024/25 | UEFA Europa League | Ajax | 13 | 3 | 540 | 2 | 0 | 3 | 0 | 6.91 |
| 2023/24 | Eredivisie | Ajax | 21 | 11 | 1067 | 2 | 1 | 1 | 0 | 7.09 |
| 2023/24 | UEFA Europa Conference League | Ajax | 3 | 1 | 153 | 1 | — | 0 | 0 | 6.93 |
| 2023/24 | UEFA Europa League | Ajax | 5 | 1 | 104 | 0 | — | 0 | 0 | 6.70 |
| 2023/24 | Friendlies Clubs | Ajax | 6 | 4 | 359 | 0 | — | 1 | 0 | — |
| 2022/23 | Ligue 1 | Toulouse | 35 | 32 | 2892 | 5 | 8 | 6 | 0 | 7.49 |
| 2022/23 | Coupe de France | Toulouse | 5 | 4 | 318 | 1 | 5 | 2 | 0 | 7.92 |
| 2022/23 | Friendlies Clubs | Toulouse | 1 | 1 | 78 | 0 | — | 0 | 0 | — |
| 2021/22 | Ligue 2 | Toulouse | 37 | 37 | 3209 | 12 | 21 | 5 | 0 | 8.00 |
| 2021/22 | Coupe de France | Toulouse | 4 | 3 | 301 | 0 | — | 1 | 0 | 7.30 |
| 2020/21 | Ligue 2 | Toulouse | 36 | 27 | 2456 | 5 | 7 | 6 | 0 | 7.22 |
| 2020/21 | Coupe de France | Toulouse | 2 | 2 | 152 | 0 | — | 0 | 0 | 7.30 |
| 2019/20 | Eerste Divisie | De Graafschap | 24 | 23 | 2104 | 5 | — | 3 | 0 | — |
| 2019/20 | Eerste Divisie | FC Eindhoven | 3 | 3 | 270 | 4 | — | 1 | 0 | — |
| 2019/20 | KNVB Beker | De Graafschap | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2018/19 | Eerste Divisie | FC Eindhoven | 36 | 36 | 3171 | 11 | — | 7 | 0 | — |
| 2018/19 | KNVB Beker | FC Eindhoven | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2017/18 | Eerste Divisie | FC Eindhoven | 37 | 37 | 3257 | 2 | — | 8 | 0 | — |
| 2017/18 | KNVB Beker | FC Eindhoven | 2 | 2 | 180 | 0 | — | 1 | 0 | — |
| 2016/17 | Eredivisie | Willem II | 8 | 6 | 525 | 0 | — | 2 | 0 | 6.91 |
| 2016/17 | KNVB Beker | Willem II | 1 | 0 | 36 | 0 | — | 0 | 0 | — |
| 2015/16 | Eredivisie | Heerenveen | 23 | 16 | 1421 | 1 | 3 | 3 | 0 | 6.84 |
| 2014/15 | Eredivisie | FC Eindhoven | 2 | 2 | 180 | 0 | — | 1 | 0 | — |
| 2014/15 | Eerste Divisie | FC Eindhoven | 37 | 33 | 3011 | 4 | — | 3 | 0 | — |
| 2014/15 | KNVB Beker | FC Eindhoven | 1 | 1 | 106 | 0 | — | 0 | 0 | — |
| 2013/14 | Eerste Divisie | Jong Ajax | 15 | 11 | 1041 | 1 | — | 4 | 1 | — |
| 2013/14 | UEFA Youth League | Ajax U19 | 3 | 1 | 129 | 1 | — | 0 | 0 | — |
| 2012/13 | UEFA U17 Championship | Netherlands U17 | 7 | 2 | 306 | 2 | — | 1 | 0 | — |
Availability history
No injuries or suspensions recorded.
Trophies
No trophies recorded.
