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.
2023–24 Belgian Cup Country Belgium Dates 29 July 2023 – 9 May 2024 Teams 356 Champions Union SG Runner-up Antwerp Matches played 313
Union SG won the cup on 9 May 2024 (their third Belgian Cup win), defeating Antwerp 1–0 in the final.
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 and draw dates
edit
Round
Draw date
Match dates
First round
26 June 2023
29–31 July 2023
Second round
4–6 August 2023
Third round
11–13 August 2023
Fourth round
18–20 August 2023
Fifth round
25–27 August 2023
Sixth round
8–10 September 2023
Seventh round
1–2 November 2023
Eighth round
5–7 December 2023
Quarter-finals
December 2023
Semi-finals
Leg 1: 23–25 January 2024 Leg 2: 23–25 February 2024
Final
9 May 2024
This round of matches was played on the weekend of 29 to 31 July 2023[ 1] and included 204 teams playing in the Belgian Provincial Leagues .
For this initial round, teams were split into ten groups according to geolocation.
Tie
Home team (tier)
Score
Away team (tier)
Group 1
1
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 (5–4 p )
Zonhoven (6)
11
Wijnegem (8)
2–0
Herselt (7)
12
Olen United (9)
2–3
Zwijndrecht (7)
13
Schriek (8)
0–0 (2–3 p )
Kalfort Puursica (8)
Group 2
14
Binkom (8)
0–7
Rotselaar (6)
15
Wijgmaal (6)
2–3
Bierbeek (6)
16
Sterrebeek (8)
3–3 (6–7 p )
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 (4–2 p )
Zuun (8)
24
Boutersem (8)
2–2 (4–5 p )
Veltem (7)
25
Fenixx (6)
2–2 (3–4 p )
Eppegem (6)
Group 3
26
Nieuwerkerken (8)
0–0 (3–1 p )
'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 (8–9 p )
Herk (6)
35
Smeermaas-Lanaken (8)
2–0
Biesen B (8)
Group 4
36
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 (8–7 p )
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 5
49
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 6
60
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 (3–2 p )
Auderghem (6)
66
Kosova Schaerbeek (6)
1–1 (4–2 p )
Sporting Bruxelles (6)
67
Jodoigne (8)
3–1
Grez-Doiceau (6)
Group 7
68
Evelette
1–0
Meux II
69
Grand-Leez
3–3 (3–1 p )
Loyers
70
Petigny
1–1 (5–6 p )
Flavion-Morialmé
71
US Dinantaise
2–0
Fernelmont-Hemptinne
72
Chevetonnge
0–1
Profondeville
73
Biesme
3–0
Nimses
74
Spy
2–2 (5–3 p )
Condruzien
Group 8
75
Isièroine
1–1 (5–4 p )
Luingnois
76
WSAC Fleurus
1–0
Thumaide
77
Péruwelz
4–0
Jumet
78
Hyon
0–4
Gilly
79
Houndinois
2–0
Havré
80
Antoing
2–1
Obigies
81
Anvaing
1–0
Molenbaix
82
Hornu
2–0
Naast
83
Montignies
3–0
Mons II
84
Estaimbourg
5–1
Morlanwelz
Group 9
85
Paliseulois
3–1
Freylangeoise
86
Ochamps
3–4
Messancy
87
Beauraing
2–0
Saint-Mard
88
Bleid
0–0 (7-6 p )
Bastogne
89
Libramont
3–1
Arlon
90
Oppagne-Weris
2–2 (2-4 p )
Houffaloise
91
Roy-Lignières
2–1
Assenois
92
Ethe Belmont
5–0
Vaux
Group 10
93
Heusy Rouheid
4–1
Seraing
94
Oreye Union
1–4
Saive
95
Ans Montegnee
1–1 (1–3 p )
Richelle II
96
La Calamine II
0–1
Francorchamps
97
Aubel
1–3
FC Du Geer
98
Malmundaria
5–4
Croatia Wandre
99
Honsfeld
2–3
Hannut
100
Fizoise
6–4
Amel
101
Butgenbach
0–1
Wanze/Bas-Oha II
102
Wasseiges
1–2
Beaufays
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
Diest
108
Turnhout
5–0
Herselt (7)
109
Bierbeek (6)
2–1
Eksel
110
Pelt
3–2
Kontich (6)
111
Eendracht Termien
5–0
Ekeren Donk (9)
112
Kampenhout (6)
1–3
Wellen
113
Kalfort Puursica (8)
3–2
Berg en Dal
114
Rhode-De Hoek (7)
0–1
Geel
115
Alken (7)
0–2
'sGravenwezel-Schilde (6)
116
Nijlen
1–2
Landen (7)
117
Retie (6)
2–2
Schoonbeek-Beverst
118
Zwarte Leeuw
1–2
Herent (6)
119
Rotselaar (6)
0–3
St.-Lennaarts
120
Witgoor Sport Dessel
1–2
Tisselt (6)
121
Denderhoutem (6)
1–1
Vlijtingen (7)
122
Torpedo Hasselt (6)
2–2
Zepperen-Brustem
123
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
Betekom
127
Bree-Beek (6)
7–1
Nieuwerkerken (8)
128
Eine (7)
0–5
Crossing Schaerbeek
129
Pepingen-Halle
2–0
Berlare (6)
130
Svelta Melsele B (8)
1–2
Jodoigne
131
Taminoise
0–1
Haasdonk (6)
132
Entite Manageooise
3–2
Borsbeke (6)
133
Beringen (6)
0–2
Perwez
134
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 Lede
143
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
Blankenberge
149
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 Untied
154
St-Denijs Sport
4–0
Nseth Berchem (6)
155
Profondeville
0–4
Biesme
156
Gilly
0–1
Beloeil
157
Isièroine
0–4
Flenu
158
Aischoise
5–1
Evelette
159
Ostiches
2–0
US Dinantaise
160
Houndinois
2–2
Hornu
161
Péruwelz
3–1
Couvin
162
Onhaye
10–0
Anvaing
163
Arquet
1–3
Montignies
164
Spy
2–1
Estaimbourg
165
Antoing
3–1
Rapid Symphorinois
166
Flavion-Morialmé
6–1
WSAC Fleurus
167
Grand-Leez
1–3
Monceau
168
Wanze/Bas-Oha II
1–10
Richelle
169
Fizoise
2–1
Malmundaria
170
Richelle II
0–7
Wanze-Bas/Oha
171
Raeren-Eynatten
7–3
Heusy Rouheid
172
Francorchamps
1–0
Stade Waremmnien
173
Wallonne Ciney
2–1
Saive
174
Marlouie Sport
7–3
Bleid
175
Elsautoise
2–4
Beauraing
176
FC Du Geer
0–4
Sprimont
177
Gouvy
4–0
Roy-Lignières
178
Herstal
0–1
Beaufays
179
Ethe Belmont
2–1
Huy
180
Aywaille
1–1
Hannut
181
Houffaloise
2–2
Mormont
182
Libramont
1–3
Meix DT-Virton
183
Habay La Neuve
6–2
Messancy
184
Longlier
4–1
Paliseulois
Tie
Home team (tier)
Score
Away team (tier)
185
Tempo Overijse
1–1(3-2)p
Herent (6)
186
Meux
2–0
Hoger Op Kalken
187
Ostiches
3–1
Londerzeel
188
Péruwelz
0–0(3-1)p
Onhaye
189
Ninove
2–0
Wallonne Ciney
190
La Calamine
p 1–1
WS Lauwe (6)
191
Rochefortoise
5–0
Etterbeek (7)
192
Léopold (6)
1–3
Sprimont
193
Tournai
5–0
Longlier
194
Wanze-Bas/Oha
p 0–0
Voorde-Appelterre
195
Zelzate
8–1
Vlijtingen (7)
196
Hamoir
2–1
Retie (6)
197
Aalst
1-0
Gouvy
198
Flenu
1–3
Roeselare-Daisel
199
Ethe Belmont
2–1
Antoing
200
Beaufays
2–1
Flavion-Morialmé
201
Diest
2–0
Meix DT-Virton
202
Rupel Boom
3–1
Fizoise
203
Erpe-Mere United
p 2–2
Raeren-Eynatten
204
Monceau
3–2
Lille United
205
Tisselt (6)
2–2 (3–5 p )
Vigor Wuitens Hamme
206
Verlaine
p 0–0
Landen (7)
207
Beloeil
0–6
Acren-Lessines
208
Jodoigne LS
0–1
Marlouie Sport
209
Perwez
p 0–0
Torpedo Hasselt (6)
210
Berchem Sport
2–1
Antonia (6)
211
Sottegem (6)
2–3
Montignies
212
Wilrijk (7)
1–2
Brakel
213
Braine
p 1–1
Wambeek Ternat
214
Bucholt
p 1–1
Blankenberge
215
Binche
4–1
Smeermaas-Lanaken (8)
216
Wezel Sport
10-0
Jodoigne (8)
217
Destelbergen (6)
2–1
Beauraing
218
Habay La Neuve
p 2–2
Geel
219
Genappe (6)
1–1p
Hoger Op Wolvertem Merchtem
220
Torhout
1–3
Pelt
221
Wellen
2–1
Pepingen-Halle
222
Racing Gent
3–0
Houndinois
223
Jette
2–0
'sGravenwezel-Schilde (6)
224
Crossing Schaerbeek
2–1
Hasselt
225
Francorchamps
2–2p
Lebbeke
226
Spy
2–4
Ganshoren
227
Rebecq
10–0
Kalfort Puursica (8)
228
Zwijndrecht (7)
1–2
Oudenaarde
229
Haasdonk (6)
p 2–2
Tubize
230
Mandel United
1–1p
Elene-Grotenberge
231
Houtvenne
2–1
Avanti Stekene
232
Mons
11–0
Bierbeek (6)
233
Eppegem (6)
0–3
Tongeren
234
Merelbeke
2–0
Turnhout
235
Diksmuide (6)
2–3
Wetteren
236
Richelle
2–5
Oostkamp
237
Wielsbeke
1–5
Dikkelvenne
238
Sparta Petegem
1–0
Aywaille
239
Houffaloise
0–5
Racing Mechelen
240
Eendracht Aalter
0–1
Stockay-Warfusee
241
De Kempen (6)
1–5
Bilzen
242
Diegem
3–0
Bree-Beek (6)
243
Verviers
1–0
Biesme
244
Aische
1–1p
City Pirates Antwerp
245
Entite Manageooise
2–2p
La Louviere Centre
246
Lierse Berlaar
1–1p
Achel (6)
247
Sint-Denijs Sport
0–1
Harelbeke
248
Sint-Lennaarts
3–2
Gullegem
249
Hades
3–0
Racing Waregem (6)
250
Eendracht Termien
1–2
Warnan
Tie
Home team (tier)
Score
Away team (tier)
251
Warnant
5–0
Tempo Overijse
252
Wellen
0–1
Monceau
253
Houtvenne
2–2p
Pelt
254
Ninove
3–1
Erpe-Mere United
255
Meux
3–0
Achel (6)
256
Braine
0–5
VW Hamme
257
Cappellen
1–1p
Verviers
258
Hades
1–2
Tongeren
259
City Pirates Antwerp
2–3
Sprimont
260
Crossing Schaerbeek
4–2
Heist
261
Olympic Charleroi
1–0
La Louviere Centre
262
Bocholt
3–3p
Excelsior Virton
263
Racing Mechelen
10–0
Montignies
264
Tienen
2–2p
Mons
265
Oudenaarde
4–0
Beaufays
266
Dikkelvenne
1–3
Harelbeke
267
Union Namur
0–5
Roeselare-Daisel
268
Bilzen
p 1–1
Wolvertem Merchtem
269
Wezel
4–2
Olsa Brakel
270
Habay La Neuve
2–0
Destelbergen (6)
271
Elene-Grotenberge
5–4
Sparta Petegem
272
Acren-Lessines
1–3
Thes
273
URSL Vise
3–0
Tournai
274
Diegem
2–3
Aalst
275
Ganshoren
p 2–2
Zelzate
276
Knokke
2–1
La Calamine
277
Binche
8–0
Haasdonk (6)
278
Hoogstraten VV
p 1–1
Ostiches
279
Ethe Belmont
0–4
Berchem Sport
280
Rebecq
1–0
Lebbeke
281
Sint-Lennaarts
1–0
Racing Gent
282
Jette
2–3
Onhaye
283
Dessel Sport
4–2
Wetteren
284
Perwez
1–5
Merelbeke
285
Stockay-Warfusee
0–1
Hamoir
286
Wanze-Bas/Oha
0–8
La Louviere
287
Sint-Eloois-Winkel Sport
1–1p
Rochefort
288
Diest
0–1
Marlouie Sport
289
Lokeren-Temse
6–0
Verlaine
290
Oostkamp
1–2
Rupel Boom
Tie
Home team (tier)
Score
Away team (tier)
291
Warnant
0–1
Lokeren-Temse
292
La Louviere
2–1
Sprimont
293
Elene-Grotenberge
4–3
Wezel
294
Harelbeke
2–1
VW Hamme
295
Verviers
2–3
Crossing Schaerbeek
296
Onhaye
3–0
Rebecq
297
Ninove
2–0
Roeselare-Daisel
298
Dessel Sport
1–2
Tongeren
299
Hoogstraten VV
3–2
Bilzen
300
Meux
4–1
Marlouie Sport
301
Thes
4–0
Hamoir
302
Knokke
3–0
Merelbeke
303
Rochefort
1–2
Racing Mechelen
304
Habay La Neuve
p 0–0
Oudenaarde
305
Aalst
0–1
Mons
306
URSL Vise
2–1
Binche
307
Rupel Boom
2–3
Olympic Charleroi
308
Pelt
2–2p
Excelsior Virton
309
Sint-Lennaarts
1–0
Berchem Sport
310
Monceau
2–2p
Ganshoren
The draw for the seventh round took place on 11 September 2023 and included the sixteen teams that progressed from the sixth round and the sixteen teams from the 2023–24 Belgian Pro League . The Pro League teams were seeded and could not meet each other. Furthermore, the eight non-professional teams left in the draw were always entitled to home-ground advantage, with the exception of Harelbeke , Meux and Elene-Grotenberge as their respective home grounds were not deemed suitable to host a cup match at this stage.
The draw for the eighth round took place on 2 November 2023, one day after the completion of the previous round. No more seedings were used during the draw, but before the draw Knokke was certain of receiving home-ground advantage as the only non-professional team left in the draw. Most notable fixtures of the draw include a Clasico to be played between Anderlecht and Standard, the return of former captain Ruud Vormer to Club Brugge as they received his new team Zulte Waregem, and saw Knokke receive Oud-Heverlee Leuven. Title holders Antwerp were paired at home to Charleroi, who have yet to win the cup.
The draw for the quarter-finals and semi-finals took place on 8 December 2023. With no amateur sides left, the draw was fully open as there were no seedings or predetermined home advantages. The draw resulted in a "Battle of Flanders" between Gent and Club Brugge and a Brussels derby between Union SG and Anderlecht. The matches at Union SG and OH Leuven were postponed due to snow.[ 2]
The four quarter-final winners entered the semi-finals, held over two legs. The first legs were initially planned to be played one week after the quarter-finals, but as some of those matches were postponed the semi-finals were postponed as well.[ 2]