# 2023–24 Belgian Division 2

The 2023–24 Belgian Division 2 was the eighth season of the division in its current format, placed at the fourth-tier of football in Belgium.

## Team changes
### In

* The champions from each of the four divisions of the 2022–23 Belgian Division 3 were directly promoted: Overijse (VV A), Wezel (VV B), Mons (ACFF A) and Rochefort (ACFF B).
* Also promoted after winning the promotion play-off were Voorde-Appelterre, Houtvenne, Tournai and La Calamine.
* Ninove, Rupel Boom and Mandel United were all relegated from the 2022–23 Belgian National Division 1 after finishing in the bottom three places.

### Out

* Lokeren-Temse and Cappellen were promoted to the 2023–24 Belgian National Division 1 as champions in their respective VV divisions.
* On ACFF side, runners-up Union Namur were promoted, due to the fact that champions Warnant decided not to apply for a licence making them ineligible for promotion.
* Westhoek, Erpe-Mere, Pepingen-Halle, Beerschot U23, Solières, RFC Seraing U23 and Waremme were all directly relegated to the 2023–24 Belgian Division 3 based on their finishing position.
* Finally, Turnhout lost the relegation play-off and was also relegated as a result.

### Merger

* Before the start of the season it became known that D2 ACFF club Stade Disonais would merge with RCS Verviers who were playing in the 2nd Provincial Division in Liège to form Stade Verviétois.

## Belgian Division 2 VV A
### League table

| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification or relegation |
| 1 | Aalst (C, R) | 34 | 19 | 7 | 8 | 60 | 35 | +25 | 64 | Relegation to the Belgian Provincial Leagues |
| 2 | Ninove (P) | 34 | 17 | 7 | 10 | 57 | 48 | +9 | 58 | Qualification for the Promotion play-offs VV |
| 3 | Dikkelvenne | 34 | 15 | 11 | 8 | 67 | 48 | +19 | 56 | |
| 4 | Merelbeke (O, P) | 34 | 16 | 6 | 12 | 68 | 43 | +25 | 54 | Qualification for the Promotion play-offs VV |
| 5 | Jong Cercle (O, P) | 34 | 16 | 5 | 13 | 64 | 51 | +13 | 53 | Qualification for the Promotion play-offs VV |
| 6 | Voorde-Appelterre | 34 | 15 | 8 | 11 | 54 | 56 | −2 | 53 | |
| 7 | Oudenaarde | 34 | 13 | 11 | 10 | 45 | 39 | +6 | 50 | |
| 8 | Oostkamp | 34 | 14 | 7 | 13 | 58 | 68 | −10 | 49 | |
| 9 | Jong Essevee | 34 | 14 | 6 | 14 | 53 | 44 | +9 | 48 | Qualification for the Promotion play-offs VV |
| 10 | Gullegem | 34 | 14 | 5 | 15 | 57 | 64 | −7 | 47 | |
| 11 | Torhout | 34 | 13 | 8 | 13 | 47 | 61 | −14 | 47 | |
| 12 | Racing Gent | 34 | 13 | 6 | 15 | 54 | 53 | +1 | 45 | |
| 13 | Zelzate | 34 | 12 | 6 | 16 | 63 | 60 | +3 | 42 | |
| 14 | Olsa Brakel | 34 | 11 | 6 | 17 | 38 | 47 | −9 | 39 | |
| 15 | Harelbeke | 34 | 9 | 12 | 13 | 47 | 56 | −9 | 39 | |
| 16 | Petegem | 34 | 10 | 8 | 16 | 54 | 63 | −9 | 38 | |
| 17 | Mandel United (R) | 34 | 10 | 7 | 17 | 27 | 46 | −19 | 37 | Relegation to the 2024–25 Belgian Division 3 |
| 18 | Wetteren (R) | 34 | 8 | 8 | 18 | 49 | 80 | −31 | 32 | Relegation to the 2024–25 Belgian Division 3 |
* ↑ As champions, Eendracht Aalst would have earned promotion but on 23 May 2024 (after completion of the season and playoffs) the club was refused a license for the Belgian National Division 1. As a result, second-placed Ninove (who had been eliminated in the playoffs) were promoted instead. A few days later on 27 May 2024, the club was also refused a license for the Belgian Division 2 and Belgian Division 3 and hence will be relegated to the Belgian Provincial Leagues.
* ↑ Dikkelvenne, Voorde-Appelterre, Oudenaarde, and Oostkamp all would have qualified for the Promotion play-offs VV yet were skipped by the next eligible team due to the fact they had chosen not to apply for a national football license.
* ↑ Due to the fact that Aalst was refused a license, Petegem was ultimately spared of relegation.

### Results

| Home \ Away | AAL | DIK | NIN | MER | CER | VOO | ESS | OUD | OOS | GEN | GUL | TOR | ZEL | BRA | MAN | HAR | PET | WET |
| Aalst | — | 0–3 | 3–0 | 1–0 | 2–3 | 1–2 | 1–0 | 2–0 | 4–1 | 0–0 | 1–3 | 3–1 | 1–0 | 1–1 | 1–2 | 1–1 | 3–1 | 0–0 |
| Dikkelvenne | 1–1 | — | 1–1 | 0–5 | 3–0 | 6–2 | 2–0 | 0–0 | 1–2 | 4–2 | 2–0 | 1–3 | 1–1 | 2–0 | 2–0 | 2–2 | 3–1 | 5–2 |
| Ninove | 2–0 | 1–2 | — | 3–2 | 0–2 | 3–0 | 1–0 | 1–1 | 4–1 | 2–0 | 1–1 | 0–0 | 2–1 | 1–0 | 4–1 | 2–1 | 4–5 | 3–0 |
| Merelbeke | 0–2 | 2–0 | 3–1 | — | 0–0 | 2–3 | 0–2 | 1–1 | 1–2 | 1–4 | 4–0 | 4–1 | 3–0 | 2–0 | 1–1 | 4–0 | 5–2 | 1–3 |
| Jong Cercle | 0–1 | 1–1 | 2–3 | 0–3 | — | 2–3 | 3–0 | 3–0 | 5–1 | 2–2 | 4–2 | 8–1 | 1–4 | 2–1 | 1–4 | 2–1 | 0–2 | 4–2 |
| Voorde-Appelterre | 0–1 | 1–2 | 3–0 | 1–1 | 3–2 | — | 2–1 | 0–0 | 5–1 | 1–0 | 0–2 | 1–1 | 3–1 | 0–1 | 2–1 | 3–1 | 1–4 | 2–2 |
| Jong Essevee | 0–0 | 2–2 | 3–1 | 0–1 | 1–1 | 4–0 | — | 3–5 | 0–0 | 1–1 | 0–2 | 3–0 | 1–0 | 2–1 | 0–0 | 1–2 | 4–1 | 2–1 |
| Oudenaarde | 0–1 | 1–1 | 2–0 | 1–4 | 3–0 | 1–3 | 3–0 | — | 1–1 | 2–0 | 3–2 | 1–0 | 3–0 | 0–0 | 1–1 | 0–2 | 1–0 | 5–1 |
| Oostkamp | 0–4 | 2–1 | 1–1 | 2–2 | 1–2 | 2–2 | 1–5 | 2–0 | — | 1–3 | 2–1 | 1–2 | 2–1 | 2–1 | 1–1 | 3–1 | 3–1 | 2–3 |
| Racing Gent | 2–3 | 3–2 | 1–0 | 1–1 | 1–2 | 0–1 | 3–0 | 3–1 | 2–3 | — | 3–1 | 0–2 | 1–1 | 2–1 | 1–0 | 7–2 | 1–0 | 2–3 |
| Gullegem | 1–3 | 2–2 | 1–2 | 4–3 | 0–2 | 2–2 | 1–5 | 1–0 | 2–1 | 3–1 | — | 1–3 | 2–0 | 2–3 | 1–2 | 2–1 | 2–0 | 4–4 |
| Torhout | 3–2 | 1–0 | 3–4 | 2–1 | 2–1 | 4–1 | 0–3 | 0–0 | 2–3 | 2–1 | 0–1 | — | 0–6 | 1–1 | 2–1 | 3–1 | 0–0 | 4–1 |
| Zelzate | 1–3 | 4–7 | 1–3 | 1–2 | 1–0 | 1–1 | 3–2 | 1–3 | 4–3 | 1–2 | 1–2 | 1–1 | — | 4–0 | 1–2 | 2–2 | 3–1 | 6–0 |
| Olsa Brakel | 2–3 | 3–2 | 3–1 | 0–3 | 2–0 | 0–3 | 1–2 | 1–1 | 0–2 | 3–0 | 3–0 | 2–0 | 2–4 | — | 1–0 | 0–0 | 3–1 | 0–1 |
| Mandel United | 0–2 | 0–0 | 0–1 | 1–0 | 0–4 | 1–0 | 0–2 | 1–2 | 0–2 | 0–3 | 1–1 | 1–1 | 0–2 | 1–0 | — | 0–2 | 2–0 | 1–0 |
| Harelbeke | 1–0 | 1–1 | 1–1 | 2–0 | 0–3 | 4–0 | 2–1 | 2–2 | 2–2 | 2–1 | 2–3 | 2–0 | 1–2 | 1–1 | 0–1 | — | 2–2 | 0–1 |
| Petegem | 1–6 | 2–3 | 2–2 | 0–1 | 1–2 | 1–1 | 2–1 | 2–0 | 3–2 | 4–0 | 2–1 | 1–1 | 1–1 | 0–1 | 3–0 | 1–1 | — | 3–3 |
| Wetteren | 3–3 | 0–2 | 1–2 | 2–5 | 0–0 | 1–2 | 1–2 | 0–1 | 1–3 | 1–1 | 1–4 | 4–1 | 2–3 | 1–0 | 2–1 | 2–2 | 0–4 | — |

### Period Champions

* 1st Period: Aalst (20 Points (out of 30))
* 2nd Period: Oostkamp (25 Points (out of 36))
* 3rd Period: Aalst (24 Points (out of 36))

## Belgian Division 2 VV B
### League table

| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification or relegation |
| 1 | Belisia (C, P) | 34 | 21 | 8 | 5 | 71 | 37 | +34 | 71 | Promotion to the 2024–25 Belgian National Division 1 |
| 2 | Hasselt (O, P) | 34 | 21 | 4 | 9 | 67 | 37 | +30 | 67 | Qualification for the Promotion play-offs VV |
| 3 | Lyra-Lierse Berlaar (O, P) | 34 | 18 | 6 | 10 | 61 | 47 | +14 | 60 | Qualification for the Promotion play-offs VV |
| 4 | Rupel Boom | 34 | 18 | 6 | 10 | 62 | 58 | +4 | 60 | Qualification for the Promotion play-offs VV |
| 5 | Racing Mechelen | 34 | 16 | 7 | 11 | 61 | 46 | +15 | 55 | |
| 6 | Houtvenne | 34 | 15 | 10 | 9 | 48 | 43 | +5 | 55 | |
| 7 | Bocholt | 34 | 16 | 6 | 12 | 59 | 46 | +13 | 54 | |
| 8 | Tongeren | 34 | 14 | 6 | 14 | 50 | 48 | +2 | 48 | |
| 9 | Lebbeke | 34 | 13 | 8 | 13 | 49 | 53 | −4 | 47 | |
| 10 | Jong KV Mechelen | 34 | 13 | 7 | 14 | 57 | 49 | +8 | 46 | Qualification for the Promotion play-offs VV |
| 11 | Berchem | 34 | 12 | 10 | 12 | 44 | 43 | +1 | 46 | |
| 12 | Diegem | 34 | 13 | 6 | 15 | 62 | 63 | −1 | 45 | |
| 13 | Wezel | 34 | 12 | 7 | 15 | 59 | 67 | −8 | 43 | |
| 14 | Hades | 34 | 12 | 6 | 16 | 54 | 60 | −6 | 42 | |
| 15 | Lille | 34 | 11 | 7 | 16 | 48 | 60 | −12 | 40 | |
| 16 | Overijse (R) | 34 | 7 | 7 | 20 | 33 | 59 | −26 | 28 | Relegation to the 2024–25 Belgian Division 3 |
| 17 | City Pirates (R) | 34 | 7 | 4 | 23 | 41 | 86 | −45 | 25 | Relegation to the 2024–25 Belgian Division 3 |
| 18 | Londerzeel (R) | 34 | 6 | 7 | 21 | 34 | 58 | −24 | 25 | Relegation to the 2024–25 Belgian Division 3 |

### Results

| Home \ Away | BEL | HAS | LLB | RUP | RCM | HOU | BOC | TON | LEB | KVM | BER | DIE | WEZ | HAD | LIL | OVE | C-P | LON |
| Belisia | — | 1–1 | 1–1 | 2–0 | 4–2 | 2–0 | 2–1 | 3–0 | 1–0 | 1–0 | 2–1 | 2–1 | 3–2 | 4–1 | 1–1 | 3–0 | 4–0 | 2–1 |
| Hasselt | 2–1 | — | 2–0 | 4–1 | 3–0 | 1–1 | 1–0 | 1–0 | 5–0 | 1–1 | 2–0 | 0–2 | 4–1 | 3–1 | 0–2 | 3–0 | 3–1 | 0–3 |
| Lyra-Lierse Berlaar | 0–2 | 3–0 | — | 3–0 | 2–1 | 0–1 | 2–1 | 2–4 | 2–0 | 2–0 | 2–1 | 5–0 | 1–1 | 2–1 | 4–2 | 2–2 | 2–1 | 1–1 |
| Rupel Boom | 1–5 | 3–2 | 2–5 | — | 0–0 | 2–2 | 1–0 | 3–1 | 3–1 | 4–1 | 2–1 | 1–1 | 2–2 | 4–3 | 2–1 | 2–1 | 3–2 | 2–1 |
| Racing Mechelen | 1–1 | 0–1 | 4–1 | 0–2 | — | 3–1 | 3–0 | 1–1 | 0–1 | 2–5 | 3–0 | 1–0 | 3–0 | 2–4 | 1–0 | 1–0 | 2–3 | 1–0 |
| Houtvenne | 0–0 | 2–4 | 0–0 | 1–2 | 0–3 | — | 2–2 | 1–2 | 1–1 | 1–0 | 1–1 | 4–1 | 1–0 | 2–0 | 0–0 | 3–2 | 3–0 | 0–0 |
| Bocholt | 1–2 | 2–1 | 2–4 | 0–5 | 1–1 | 1–1 | — | 3–2 | 4–1 | 0–1 | 0–1 | 2–2 | 4–2 | 2–0 | 2–2 | 3–0 | 4–1 | 2–0 |
| Tongeren | 0–2 | 3–2 | 0–2 | 1–2 | 2–0 | 1–2 | 0–3 | — | 1–1 | 3–1 | 0–0 | 3–0 | 3–1 | 2–3 | 3–0 | 3–0 | 2–0 | 1–0 |
| Lebbeke | 2–2 | 1–3 | 1–2 | 2–1 | 1–2 | 5–1 | 2–0 | 0–0 | — | 1–1 | 0–0 | 2–1 | 3–2 | 2–2 | 2–1 | 3–0 | 2–2 | 3–2 |
| Jong KV Mechelen | 4–1 | 0–1 | 5–0 | 1–2 | 0–0 | 1–2 | 4–4 | 4–0 | 1–0 | — | 0–2 | 3–0 | 0–0 | 1–2 | 1–2 | 6–4 | 4–2 | 3–0 |
| Berchem | 1–1 | 1–1 | 0–1 | 3–0 | 1–1 | 2–3 | 0–3 | 2–0 | 2–0 | 1–3 | — | 1–1 | 2–2 | 3–2 | 1–1 | 2–0 | 4–0 | 1–0 |
| Diegem | 3–4 | 1–0 | 3–2 | 2–2 | 3–1 | 1–2 | 1–2 | 1–2 | 5–1 | 4–1 | 2–2 | — | 1–2 | 3–2 | 2–3 | 2–0 | 3–0 | 2–4 |
| Wezel | 3–0 | 2–3 | 4–1 | 1–0 | 2–5 | 2–1 | 1–3 | 1–5 | 0–2 | 2–0 | 4–1 | 0–1 | — | 1–0 | 3–1 | 2–2 | 4–3 | 2–0 |
| Hades | 2–1 | 2–1 | 2–2 | 3–1 | 1–4 | 1–3 | 0–1 | 1–1 | 2–3 | 0–0 | 1–2 | 3–3 | 3–2 | — | 3–1 | 0–0 | 2–1 | 0–1 |
| Lille | 2–0 | 1–2 | 1–0 | 4–3 | 1–3 | 0–3 | 0–1 | 1–0 | 0–3 | 2–2 | 0–2 | 2–0 | 5–3 | 2–1 | — | 1–1 | 1–2 | 3–2 |
| Overijse | 0–4 | 0–1 | 0–3 | 1–2 | 1–2 | 2–0 | 0–2 | 5–0 | 2–1 | 0–1 | 2–0 | 0–2 | 1–1 | 0–2 | 2–1 | — | 2–0 | 0–0 |
| City Pirates | 3–3 | 0–6 | 2–0 | 0–1 | 1–5 | 0–1 | 1–0 | 0–4 | 1–2 | 2–0 | 2–1 | 2–3 | 2–2 | 0–2 | 3–3 | 1–3 | — | 2–1 |
| Londerzeel | 0–4 | 1–3 | 0–2 | 1–1 | 3–3 | 1–2 | 0–3 | 0–0 | 1–0 | 1–2 | 1–2 | 2–5 | 1–2 | 0–2 | 2–1 | 0–0 | 4–1 | — |

### Period Champions

* 1st Period: Jong KV Mechelen (21 Points)
* 2nd Period: Hasselt (27 Points)
* 3rd Period: Belisia (29 Points)

## Belgian Division 2 ACFF
### League table

| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification or relegation |
| 1 | Mons (C, P) | 34 | 27 | 4 | 3 | 76 | 23 | +53 | 85 | Promotion to the 2024–25 Belgian National Division 1 |
| 2 | Rochefort (P) | 34 | 20 | 6 | 8 | 64 | 40 | +24 | 66 | Qualification for the Promotion play-offs ACFF |
| 3 | Tubize-Braine (O, P) | 34 | 19 | 9 | 6 | 64 | 35 | +29 | 66 | Qualification for the Promotion play-offs ACFF |
| 4 | Tournai (P) | 34 | 17 | 12 | 5 | 59 | 33 | +26 | 63 | Qualification for the Promotion play-offs ACFF |
| 5 | Binche (P) | 34 | 15 | 9 | 10 | 52 | 44 | +8 | 54 | Qualification for the Promotion play-offs ACFF |
| 6 | Meux | 34 | 12 | 14 | 8 | 51 | 45 | +6 | 50 | |
| 7 | Warnant (R) | 34 | 14 | 7 | 13 | 45 | 42 | +3 | 49 | Restarting at bottom of football pyramid |
| 8 | Stockay (P) | 34 | 13 | 8 | 13 | 59 | 50 | +9 | 47 | |
| 9 | La Calamine | 34 | 12 | 9 | 13 | 53 | 54 | −1 | 45 | |
| 10 | La Louvière Centre | 34 | 13 | 5 | 16 | 48 | 47 | +1 | 44 | |
| 11 | Union SG B (P) | 34 | 13 | 4 | 17 | 55 | 56 | −1 | 43 | |
| 12 | Verviers | 34 | 11 | 8 | 15 | 56 | 64 | −8 | 41 | |
| 13 | Verlaine | 34 | 11 | 7 | 16 | 50 | 59 | −9 | 40 | |
| 14 | Ganshoren | 34 | 10 | 9 | 15 | 44 | 57 | −13 | 39 | |
| 15 | Jette | 34 | 9 | 8 | 17 | 33 | 63 | −30 | 35 | |
| 16 | Acren-Lessines | 34 | 8 | 9 | 17 | 56 | 75 | −19 | 33 | |
| 17 | Hamoir (R) | 34 | 6 | 5 | 23 | 30 | 71 | −41 | 23 | Relegation to the 2024–25 Belgian Division 3 |
| 18 | Rebecq (R) | 34 | 3 | 13 | 18 | 43 | 80 | −37 | 22 | Relegation to the 2024–25 Belgian Division 3 |
* 1 2 After conclusion of the play-offs, Stockay and Union SG B were also promoted. Stockay as highest-placed finisher with a license not already promoted, Union SG B as highest eligible U23 team.

### Results

| Home \ Away | MON | ROC | TUB | TOU | WRN | BIN | LAL | S-W | MEU | LAC | USG | VER | VEV | GAN | JET | A-L | HAM | REB |
| Mons | — | 1–0 | 2–0 | 1–3 | 1–0 | 2–0 | 2–0 | 2–0 | 1–1 | 2–1 | 2–0 | 5–0 | 3–1 | 4–1 | 3–0 | 5–2 | 3–1 | 2–2 |
| Rochefort | 0–2 | — | 2–3 | 1–1 | 1–0 | 1–2 | 2–0 | 2–0 | 1–1 | 5–4 | 2–1 | 1–0 | 3–3 | 2–1 | 5–1 | 2–3 | 3–0 | 2–0 |
| Tubize-Braine | 0–1 | 0–1 | — | 1–1 | 2–0 | 2–1 | 2–0 | 2–2 | 0–1 | 2–1 | 2–0 | 3–0 | 4–1 | 2–2 | 2–0 | 1–0 | 4–1 | 2–1 |
| Tournai | 1–1 | 0–1 | 1–1 | — | 2–1 | 3–1 | 2–1 | 2–1 | 2–0 | 1–0 | 0–2 | 2–0 | 1–0 | 4–3 | 6–0 | 1–0 | 3–2 | 3–0 |
| Warnant | 0–2 | 1–0 | 1–0 | 1–2 | — | 3–2 | 0–2 | 1–0 | 3–0 | 1–1 | 0–0 | 1–1 | 2–1 | 5–0 | 4–0 | 3–0 | 3–1 | 2–2 |
| Binche | 0–3 | 1–3 | 1–1 | 2–1 | 2–2 | — | 2–0 | 2–2 | 3–4 | 0–0 | 3–2 | 3–2 | 4–1 | 1–0 | 0–0 | 0–2 | 0–0 | 0–0 |
| La Louvière Centre | 0–3 | 1–2 | 2–2 | 1–1 | 0–1 | 1–4 | — | 3–1 | 2–3 | 1–0 | 1–2 | 4–1 | 0–0 | 1–0 | 3–0 | 2–0 | 3–0 | 3–1 |
| Stockay | 1–5 | 2–2 | 2–2 | 2–2 | 2–0 | 1–2 | 1–0 | — | 0–0 | 3–2 | 3–0 | 1–1 | 0–1 | 3–1 | 2–0 | 5–1 | 4–0 | 3–1 |
| Meux | 2–1 | 1–4 | 1–1 | 2–2 | 5–0 | 0–0 | 0–4 | 1–1 | — | 2–1 | 2–3 | 1–1 | 3–1 | 1–0 | 2–3 | 1–1 | 5–0 | 3–1 |
| La Calamine | 1–3 | 2–1 | 0–2 | 1–1 | 2–1 | 2–0 | 2–1 | 1–2 | 0–0 | — | 0–0 | 1–0 | 1–4 | 2–0 | 1–1 | 5–0 | 2–1 | 3–1 |
| Union SG B | 1–3 | 3–4 | 1–3 | 0–2 | 4–0 | 0–2 | 3–1 | 1–4 | 0–0 | 4–0 | — | 0–1 | 4–5 | 0–2 | 1–3 | 1–2 | 4–0 | 5–0 |
| Verlaine | 3–1 | 2–1 | 1–3 | 3–1 | 0–2 | 1–2 | 0–1 | 4–2 | 1–2 | 2–2 | 6–0 | — | 1–3 | 2–2 | 5–3 | 3–1 | 0–2 | 2–2 |
| Verviers | 0–2 | 2–2 | 2–5 | 2–2 | 1–3 | 1–2 | 3–1 | 2–1 | 3–1 | 0–1 | 0–0 | 0–1 | — | 3–1 | 1–0 | 4–1 | 2–4 | 1–3 |
| Ganshoren | 0–3 | 0–3 | 1–0 | 2–0 | 1–1 | 0–0 | 1–1 | 2–0 | 2–2 | 4–1 | 1–2 | 3–0 | 1–1 | — | 2–1 | 3–2 | 1–1 | 2–2 |
| Jette | 0–1 | 0–1 | 1–4 | 0–0 | 0–0 | 0–1 | 2–1 | 1–0 | 0–0 | 2–3 | 1–5 | 1–0 | 1–0 | 2–1 | — | 3–2 | 1–0 | 2–2 |
| Acren-Lessines | 1–2 | 1–1 | 2–3 | 3–3 | 3–1 | 1–3 | 1–1 | 4–0 | 1–1 | 3–3 | 1–2 | 1–2 | 3–3 | 2–1 | 0–0 | — | 3–1 | 6–5 |
| Hamoir | 0–1 | 0–1 | 1–2 | 0–2 | 0–1 | 2–0 | 2–3 | 0–3 | 1–0 | 0–3 | 0–3 | 2–2 | 2–3 | 0–3 | 2–2 | 2–1 | — | 0–0 |
| Rebecq | 1–1 | 1–2 | 1–1 | 0–0 | 2–1 | 1–6 | 1–3 | 0–5 | 1–3 | 4–4 | 0–1 | 0–2 | 1–1 | 2–3 | 3–2 | 2–2 | 0–2 | — |

### Period Champions

* 1st Period: Mons (30 Points)
* 2nd Period: Mons (25 Points)
* 3rd Period: Mons (30 Points)

## Promotion play-offs
### Promotion play-offs VV

The play-offs feature eight teams, the two second-place finishers in divisions VV A and VV B as well as from each division the winners of each of the three periods (for periods won by overall champions or runners-up the highest team not yet qualified takes the spot instead). The eight teams play a knockout tournament, with all teams unseeded when setting up the draw. Due to the reform of the Belgian National Division 1 (into a separate VV and ACFF division) and uncertainty about the number of VV teams to be relegated from the Challenger Pro League, it was uncertain at the start of the playoffs how many teams would be promoted. In any case, at most one U23 team would be promoted.
Qualified teams:
* Hasselt (runner-up division VV B)
* Jong Cercle (highest place eligible finisher (5th) not directly qualified from division VV A)
* Jong Essevee (2nd highest place eligible finisher (9th) not directly qualified from division VV A)
* Jong KV Mechelen (winner period 1 division VV B)
* Lyra-Lierse Berlaar (highest place eligible finisher (3rd) not directly qualified from division VV B)
* Merelbeke (winner period 3 division VV A)
* Ninove (runner-up division VV A)
* Rupel Boom (highest place eligible finisher (4th) not directly qualified from division VV B)
| Round 1 | Round 1 | Round 1 | Round 2 | Round 2 | Placing 1st/2nd | Placing 1st/2nd | Placing 1st/2nd |
| 11 May 2024 | 11 May 2024 | 11 May 2024 | | | |
| Jong Cercle | Jong Cercle | 1 | | | |
| Jong KV Mechelen | Jong KV Mechelen | 0 | 23 May 2024 (Cancelled) | | |
| | Jong Cercle | Jong Cercle | | | |
| 11 May 2024 | 11 May 2024 | 11 May 2024 | Hasselt | Hasselt | |
| Hasselt | 1 | | | | | | |
| Ninove | Ninove | | 0 | | 26 May 2024 (Cancelled) | 26 May 2024 (Cancelled) | 26 May 2024 (Cancelled) |
| | | | Winner Round 2 Match 1 | Winner Round 2 Match 1 | |
| 12 May 2024 | 12 May 2024 | 12 May 2024 | Winner Round 2 Match 1 | | Winner Round 2 Match 2 | Winner Round 2 Match 2 | |
| Merelbeke | Merelbeke | 2 | | | | | |
| Jong Essevee | Jong Essevee | 1 | 23 May 2024 (Cancelled) | | | | |
| | | | Merelbeke | Merelbeke | Placing 3rd/4th | Placing 3rd/4th | Placing 3rd/4th |
| 12 May 2024 | 12 May 2024 | 12 May 2024 | Lyra-Lierse Berlaar | Lyra-Lierse Berlaar | 26 May 2024 (Cancelled) | 26 May 2024 (Cancelled) | 26 May 2024 (Cancelled) |
| Lyra-Lierse Berlaar | Lyra-Lierse Berlaar | 5 | | | Loser Round 2 Match 1 | Loser Round 2 Match 1 | |
| Rupel Boom | Rupel Boom | 0 | | | Loser Round 2 Match 2 | Loser Round 2 Match 2 | |

#### Round 1

After completion of round 1, it was nearly certain that the four winners would all be promoted, as six spots were available for VV teams with the first two spots taken by champions Eendracht Aalst and Belisia Bilzen, and the four round 1 winners included only one U23 team. On 17 May 2024, this was confirmed as Oostende would not be receiving a license to play in the Challenger Pro League (and thus be relegated), but would also not be receiving a license for the National Division 1, meaning it would directly relegate two levels meaning still six spots opened up, and the four round 1 winners were instantly promoted. Further rounds were thus canceled, as well as the consolation round for possible extra spots (where Jong Essevee had been drawn at home to Ninove, and Jong KV Mechelen was to host Rupel-Boom). A final twist followed a few days later when news was released that Division VV A winners Eendracht Aalst had been refused a license to be promoted and per the rules, this meant the automatic promoted shifted to the next highest eligible team Ninove, despite the fact they had lost the promotion playoffs a few days prior.
In the end, Hasselt, Jong Cercle, Lyra-Lierse Berlaar, Merelbeke and Ninove were promoted.

### Promotion play-offs ACFF

The play-offs feature four teams, the second-place finishers and the winners of each of the three periods (for periods won by overall champions or runners-up the highest team not yet qualified takes the spot instead). Overall champions Mons had won all three periods and hence the four highest eligible finishers were taking part:
Qualified teams:
* Binche (3rd highest place eligible finisher (5th) not directly qualified from division ACFF)
* Rochefort (runner-up division ACFF)
* Tournai (2nd highest place eligible finisher (4th) not directly qualified from division ACFF)
* Tubize-Braine (highest place eligible finisher (3rd) not directly qualified from division ACFF)
Going into the playoffs it was already certain that all teams would be promoted due to the reform of the National Division 1 which was split into a VV and ACFF division. The playoffs were played nevertheless.
| | | | | Semi-final | Semi-final | Semi-final | | Placing 1st/2nd | Placing 1st/2nd | Placing 1st/2nd |
| | 18 May 2024 | 18 May 2024 | 18 May 2024 | | | | | | | |
| Tournai | Tournai | | | 5 | | | | |
| | | | | Binche | 2 | | | |
| | | | | 24 May 2024 | 24 May 2024 | 24 May 2024 | | |
| | | | | Tournai | Tournai | | 1 |
| | | | | Tournai | Tournai | | | Tubize-Braine | Tubize-Braine | 4 |
| | 19 May 2024 | 19 May 2024 | 19 May 2024 | | | | | | | |
| | | | | Rochefort | Rochefort | 0 | | Placing 3rd/4th | Placing 3rd/4th | Placing 3rd/4th |
| | | | | Tubize-Braine | Tubize-Braine | 5 | | 26 May 2024 | 26 May 2024 | 26 May 2024 |
| | | | | | | | | Binche | Binche | 1 (4) |
| | | | | | | | | Rochefort | Rochefort | 1 (3) |

#### Round 1

All four teams were promoted.