The 2023–24 Belgian Cup, called the Croky Cup for sponsorship reasons, was the 69th season of Belgium's annual football cup competition. The competition began on 29 July 2023 and ended with the final on 9 May 2024. The winners qualified for the 2024–25 UEFA Europa League play-off round. Match times up to 29 October 2023 and from 31 March 2024 were CEST (UTC+2). Times on interim ("winter") days were CET (UTC+1). Antwerp were the defending cup holders.
Union SG won the cup on 9 May 2024 (their third Belgian Cup win), defeating Antwerp 1–0 in the final.
Competition format The competition consists of eleven proper rounds. All rounds are single-match elimination rounds. When tied after 90 minutes in the first four rounds, penalties will be taken immediately. From round five, when tied after 90 minutes first an extra time period of 30 minutes will be played, then penalties are to be taken if still necessary.
Teams will enter the competition in different rounds, based upon their 2023–24 league affiliation. Teams from the fifth-level Belgian Division 3 or lower will begin in round 1, with the exception of sixteen teams from the Belgian Provincial Leagues which were randomly drawn to start in the preliminary round. Belgian Division 2 teams entered in round 2, Belgian National Division 1 teams entered in round 3, Challenger Pro League teams in round 5 and finally the Belgian Pro League teams entered in round 6. U23 teams are not eligible for the Belgian Cup and will not enter the cup.
Round Clubsremaining Clubsinvolved Winners fromprevious round New entriesthis round Leagues entering at this round Round 1 356 204 none 204 Belgian Provincial Leagues (204 teams) Round 2 254 164 102 62 Belgian Division 3 (62 teams) Round 3 172 132 82 50 Belgian Division 2 (50 teams) Round 4 108 80 66 14 Belgian National Division 1 (14 teams) Round 5 68 40 40 none none Round 6 48 32 20 12 Challenger Pro League (12 teams) Round 7 32 32 16 16 Belgian Pro League (16 teams) Round 8 16 16 16 none none Quarter-finals 8 8 8 none none Semi-finals 4 4 4 none none Final 2 2 2 none none
Round and draw dates RoundDraw dateMatch datesFirst round26 June 202329–31 July 2023Second round4–6 August 2023Third round11–13 August 2023Fourth round18–20 August 2023Fifth round25–27 August 2023Sixth round8–10 September 2023Seventh round1–2 November 2023Eighth round5–7 December 2023Quarter-finalsDecember 2023Semi-finalsLeg 1: 23–25 January 2024Leg 2: 23–25 February 2024Final9 May 2024
First round This round of matches was played on the weekend of 29 to 31 July 2023 and included 204 teams playing in the Belgian Provincial Leagues.
For this initial round, teams were split into ten groups according to geolocation. GroupNumber of teamsTeams fromGroup 126AntwerpGroup 224Flemish Brabant (23) and East Flanders (1)Group 320LimburgGroup 426East FlandersGroup 522West FlandersGroup 616Walloon BrabantGroup 714NamurGroup 820HainautGroup 916Luxembourg (15) and Namur (1)Group 1020Liège
Tie Home team (tier) Score Away team (tier) Group 11 Mortsel (7) 0–4 Tisselt (6)2 Retie (6) 2–1 Loenhout (6)3 Kontich (6) 3–0 Zammel (9)4 Brasschaat (7) 2–3 'sGravenwezel-Schilde (6)5 Duffel (7) 2–3 Ternesse Wommelgem (6)6 Hoboken (6) 2–3 Ekeren Donk (9)7 Wilrijk (7) 3–0 Zoersel (7)8 Meer (8) 1–3 Antonia (6)9 De Kempen (6) 4–1 Olmen (7)10 St Dymphna Geel (7) 1–1 Zonhoven (6)11 Wijnegem (8) 2–0 Herselt (7)12 Olen United (9) 2–3 Zwijndrecht (7)13 Schriek (8) 0–0 Kalfort Puursica (8) Group 214 Binkom (8) 0–7 Rotselaar (6)15 Wijgmaal (6) 2–3 Bierbeek (6)16 Sterrebeek (8) 3–3 Tielt-Winge (8)17 Alken (7) 3–2 Ritterklub Jette (8)18 Linden (6) 0–1 Herent (6)19 Kampenhout (6) 6–1 Hekelgem (7)20 Rhode-De Hoek (7) 4–0 Vilvoorde (8)21 Mazenzele Opwijk (6) 2–3 Galmaarden (8)22 Landen (7) 3–1 Drieslinter (8)23 Perk Steenokkerzeel (8) 0–0 Zuun (8)24 Boutersem (8) 2–2 Veltem (7)25 Fenixx (6) 2–2 Eppegem (6) Group 326 Nieuwerkerken (8) 0–0 's Herenelderen (7)27 Meeuwen (6) 0–1 Eendracht Maasmechelen (6)28 Herkol (6) 0–3 Bree-Beek (6)29 Achel (6) 2–0 Genker VV (8)30 Overpelt (7) 3–0 Koersel (6)31 Opoeteren (8) 0–6 Beringen (6)32 Houthalen (9) 1–15 Torpedo Hasselt (6)33 Zonhoven (8) 0–3 Vlijtingen (7)34 Kattenbos (7) 0–0 Herk (6)35 Smeermaas-Lanaken (8) 2–0 Biesen B (8) Group 436 Berlare (6) 3–0 Sint-Niklaas (7)37 Volkegem (7) 2–4 Borsbeke (6)38 Eine (7) 3–1 Poesele (7)39 Denderhoutem (6) 3–1 Bellem (8)40 Svelta Melsele B (8) 8–0 Eendracht Zele (9)41 Svelta Melsele (6) 1–1 S.K. Beveren (6)42 Haasdonk (6) 1–0 Kleit Maldegem (6)43 Gijzel-Oosterzele (8) 0–4 Destelbergen (6)44 Vlaamse Ardennen (6) 1–0 Jong Zulte (8)45 Heikant Zele (7) 1–2 Grembergen (7)46 Zeveren (6) 1–7 Zottegem (6)47 Doorslaar (6) 4–2 Munkzwalm (6)48 Mariakerke (8) 0–8 Drongen (6)
Tie Home team (tier) Score Away team (tier) Group 549 WS Lauwe (6) 2–0 Houthulst (7)50 Wevelgem (6) 3–2 Varsenare (6)51 Diksmuide (6) 5–0 FF Zwevezele (9)52 Zonnebeke (7) 1–0 Moen (6)53 Daring Brugge (7) 3–5 Ardooie (6)54 Racing Waregem (6) 5–0 FF Westrozebeke (6)55 Dottingnies (6) 3–1 Ruddervoorde B (9)56 Bredene (6) 1–2 Rumbeke (6)57 Geluwe (8) 0–2 Oostnieuwkerke (6)58 Meulebeke (6) 1–2 Heestert (6)59 Boezinge (6) 4–2 Zedelgem (6) Group 660 Willers-la-Ville (7) 2–3 Etterbeek (7)61 BX Brussels (6) 2–0 Ixelles (6)62 Genappe (6) 4–3 Saint-Michel (6)63 Nseth Berchem (6) 5–0 FF Alliance Evere (7)64 Saint-Josse (6) 0–1 Walhain (7)65 Léopold (6) 1–1 Auderghem (6)66 Kosova Schaerbeek (6) 1–1 Sporting Bruxelles (6)67 Jodoigne (8) 3–1 Grez-Doiceau (6) Group 768 Evelette 1–0 Meux II69 Grand-Leez 3–3 Loyers70 Petigny 1–1 Flavion-Morialmé71 US Dinantaise 2–0 Fernelmont-Hemptinne72 Chevetonnge 0–1 Profondeville73 Biesme 3–0 Nimses74 Spy 2–2 Condruzien Group 875 Isièroine 1–1 Luingnois76 WSAC Fleurus 1–0 Thumaide77 Péruwelz 4–0 Jumet78 Hyon 0–4 Gilly79 Houndinois 2–0 Havré80 Antoing 2–1 Obigies81 Anvaing 1–0 Molenbaix82 Hornu 2–0 Naast83 Montignies 3–0 Mons II84 Estaimbourg 5–1 Morlanwelz Group 985 Paliseulois 3–1 Freylangeoise86 Ochamps 3–4 Messancy87 Beauraing 2–0 Saint-Mard88 Bleid 0–0 Bastogne89 Libramont 3–1 Arlon90 Oppagne-Weris 2–2 Houffaloise91 Roy-Lignières 2–1 Assenois92 Ethe Belmont 5–0 Vaux Group 1093 Heusy Rouheid 4–1 Seraing94 Oreye Union 1–4 Saive95 Ans Montegnee 1–1 Richelle II96 La Calamine II 0–1 Francorchamps97 Aubel 1–3 FC Du Geer98 Malmundaria 5–4 Croatia Wandre99 Honsfeld 2–3 Hannut100 Fizoise 6–4 Amel101 Butgenbach 0–1 Wanze/Bas-Oha II102 Wasseiges 1–2 Beaufays
Second round
Tie Home team (tier) Score Away team (tier)103 St Dymphna Geel (7) 0–0 Zwijndrecht (7)104 Wilrijk (7) 3–2 Perk Steenokkerzeel (8)105 De Kempen (6) 8–1 Tielt-Winge (8)106 Ternesse Wommelgem (6) 0–1 Antonia (6)107 Galmaarden (8) 0–2 Diest108 Turnhout 5–0 Herselt (7)109 Bierbeek (6) 2–1 Eksel110 Pelt 3–2 Kontich (6)111 Eendracht Termien 5–0 Ekeren Donk (9)112 Kampenhout (6) 1–3 Wellen113 Kalfort Puursica (8) 3–2 Berg en Dal114 Rhode-De Hoek (7) 0–1 Geel115 Alken (7) 0–2 'sGravenwezel-Schilde (6)116 Nijlen 1–2 Landen (7)117 Retie (6) 2–2 Schoonbeek-Beverst118 Zwarte Leeuw 1–2 Herent (6)119 Rotselaar (6) 0–3 St.-Lennaarts120 Witgoor Sport Dessel 1–2 Tisselt (6)121 Denderhoutem (6) 1–1 Vlijtingen (7)122 Torpedo Hasselt (6) 2–2 Zepperen-Brustem123 Svelta Melsele (6) 2–3 Destelbergen (6)124 Overpelt (7) 2–4 Achel (6)125 Eppegem (6) 2–1 Veltem (7)126 Smeermaas-Lanaken (8) 0–0 Betekom127 Bree-Beek (6) 7–1 Nieuwerkerken (8)128 Eine (7) 0–5 Crossing Schaerbeek129 Pepingen-Halle 2–0 Berlare (6)130 Svelta Melsele B (8) 1–2 Jodoigne131 Taminoise 0–1 Haasdonk (6)132 Entite Manageooise 3–2 Borsbeke (6)133 Beringen (6) 0–2 Perwez134 Branois 1–0 Eendracht Maasmechelen (6)135 Wambeek Ternat 2–1 Herk (6)136 Wevelgem (6) 1–1 Léopold (6)137 Elene-Grotenberge 3–0 BX Brussels (6)138 Zonnebeke (7) 1–1 Jodoigne (8)139 Wielsbeke 4–0 Ardooie (6)140 Kosova Schaerbeek (6) 0–1 Zottegem (6)141 Dottingnies (6) 0–1 WS Lauwe (6)142 Racing Waregem (6) 1–1 Jong Lede143 Hoger Op Wolvertem Merchtem 4–0 Doorslaar (6)144 Vigor Wuitens Hamme 2–0 Rumbeke (6)145 Westhoek 3–3 Etterbeek (7)146 Oostnieuwkerke (6) 0–4 Genappe (6)147 Eendracht Wervik 1–2 Diksmuide (6)148 Boezinge (6) 0–1 Blankenberge149 Eendracht Aalter 4–1 Drongen (6)150 Roeselare-Daisel 3–0 Grembergen (7)151 Hoger Op Kalken 3–1 Vlaamse Ardennen (6)152 Avanti Stekene 1–1 Heestert (6)153 Walhain (7) 1–1 Erpe-Mere Untied154 St-Denijs Sport 4–0 Nseth Berchem (6)155 Profondeville 0–4 Biesme156 Gilly 0–1 Beloeil157 Isièroine 0–4 Flenu158 Aischoise 5–1 Evelette159 Ostiches 2–0 US Dinantaise160 Houndinois 2–2 Hornu161 Péruwelz 3–1 Couvin162 Onhaye 10–0 Anvaing163 Arquet 1–3 Montignies164 Spy 2–1 Estaimbourg165 Antoing 3–1 Rapid Symphorinois166 Flavion-Morialmé 6–1 WSAC Fleurus167 Grand-Leez 1–3 Monceau168 Wanze/Bas-Oha II 1–10 Richelle169 Fizoise 2–1 Malmundaria170 Richelle II 0–7 Wanze-Bas/Oha171 Raeren-Eynatten 7–3 Heusy Rouheid172 Francorchamps 1–0 Stade Waremmnien173 Wallonne Ciney 2–1 Saive174 Marlouie Sport 7–3 Bleid175 Elsautoise 2–4 Beauraing176 FC Du Geer 0–4 Sprimont177 Gouvy 4–0 Roy-Lignières178 Herstal 0–1 Beaufays179 Ethe Belmont 2–1 Huy180 Aywaille 1–1 Hannut181 Houffaloise 2–2 Mormont182 Libramont 1–3 Meix DT-Virton183 Habay La Neuve 6–2 Messancy184 Longlier 4–1 Paliseulois
Third round
Tie Home team (tier) Score Away team (tier)185 Tempo Overijse 1–1(3-2)p Herent (6)186 Meux 2–0 Hoger Op Kalken187 Ostiches 3–1 Londerzeel188 Péruwelz 0–0(3-1)p Onhaye189 Ninove 2–0 Wallonne Ciney190 La Calamine p1–1 WS Lauwe (6)191 Rochefortoise 5–0 Etterbeek (7)192 Léopold (6) 1–3 Sprimont193 Tournai 5–0 Longlier194 Wanze-Bas/Oha p0–0 Voorde-Appelterre195 Zelzate 8–1 Vlijtingen (7)196 Hamoir 2–1 Retie (6)197 Aalst 1-0 Gouvy198 Flenu 1–3 Roeselare-Daisel199 Ethe Belmont 2–1 Antoing200 Beaufays 2–1 Flavion-Morialmé201 Diest 2–0 Meix DT-Virton202 Rupel Boom 3–1 Fizoise203 Erpe-Mere United p2–2 Raeren-Eynatten204 Monceau 3–2 Lille United205 Tisselt (6) 2–2 (3–5 p) Vigor Wuitens Hamme206 Verlaine p0–0 Landen (7)207 Beloeil 0–6 Acren-Lessines208 Jodoigne LS 0–1 Marlouie Sport209 Perwez p0–0 Torpedo Hasselt (6)210 Berchem Sport 2–1 Antonia (6)211 Sottegem (6) 2–3 Montignies212 Wilrijk (7) 1–2 Brakel213 Braine p1–1 Wambeek Ternat214 Bucholt p1–1 Blankenberge215 Binche 4–1 Smeermaas-Lanaken (8)216 Wezel Sport 10-0 Jodoigne (8)217 Destelbergen (6) 2–1 Beauraing218 Habay La Neuve p2–2 Geel219 Genappe (6) 1–1p Hoger Op Wolvertem Merchtem220 Torhout 1–3 Pelt221 Wellen 2–1 Pepingen-Halle222 Racing Gent 3–0 Houndinois223 Jette 2–0 'sGravenwezel-Schilde (6)224 Crossing Schaerbeek 2–1 Hasselt225 Francorchamps 2–2p Lebbeke226 Spy 2–4 Ganshoren227 Rebecq 10–0 Kalfort Puursica (8)228 Zwijndrecht (7) 1–2 Oudenaarde229 Haasdonk (6) p2–2 Tubize230 Mandel United 1–1p Elene-Grotenberge231 Houtvenne 2–1 Avanti Stekene232 Mons 11–0 Bierbeek (6)233 Eppegem (6) 0–3 Tongeren234 Merelbeke 2–0 Turnhout235 Diksmuide (6) 2–3 Wetteren236 Richelle 2–5 Oostkamp237 Wielsbeke 1–5 Dikkelvenne238 Sparta Petegem 1–0 Aywaille239 Houffaloise 0–5 Racing Mechelen240 Eendracht Aalter 0–1 Stockay-Warfusee241 De Kempen (6) 1–5 Bilzen242 Diegem 3–0 Bree-Beek (6)243 Verviers 1–0 Biesme244 Aische 1–1p City Pirates Antwerp245 Entite Manageooise 2–2p La Louviere Centre246 Lierse Berlaar 1–1p Achel (6)247 Sint-Denijs Sport 0–1 Harelbeke248 Sint-Lennaarts 3–2 Gullegem249 Hades 3–0 Racing Waregem (6)250 Eendracht Termien 1–2 Warnan
Fourth round