Treningi piłkarskie rozpoczął w 2006 w FC Abcoude, skąd trafił do AFC Ajax[1]. We wrześniu 2015 dołączył do Jong Ajax, drużyny młodzieżowej stanowiącej drugoligowe rezerwy Ajaksu, podpisując kontrakt do 30 czerwca 2018[2]. W rozgrywkach Eerste divisie zadebiutował 8 sierpnia 2016 w zremisowanym 1:1 meczu z FC Emmen[3].
24 października 2016 został piłkarzem pierwszej drużyny, występując równocześnie w niektórych meczach rezerw do końca sezonu 2016/2017[4]. Jego pierwszym meczem w Eredivisie było spotkanie rozegrane 27 listopada 2016 przeciwko sc Heerenveen, które zakończyło się wynikiem 1:0 dla Ajaksu[5].
18 lipca 2019 dołączył do Juventusu. W Serie A zadebiutował 31 sierpnia w wygranym 4:3 meczu u siebie z Napoli, rozegrał pełne 90 minut.
13 sierpnia 2024 roku podpisał pięcioletni kontrakt z opcją przedłużenia o kolejny rok z Manchesterem United[7]. W nowym klubie zadebiutował trzy dni później w wygranym 1:0 meczu przeciwko Fulham, zmieniając w 81 minucie spotkania Harry'ego Maguire'a[8]. Pierwszą bramkę dla Manchesteru United zdobył 14 września 2024 roku w wygranym 0:3 spotkaniu przeciwko Southampton[9].