2024–25 Belgian Pro League#Promotion/relegation play-offs
{{short description|121st season of top-tier football in Belgium}}
{{Infobox football league season
|competition = Belgian Pro League
|season = 2024–25
|dates = 26 July 2024 – 29 May 2025
|winners = Union SG
12th title
|relegated = Beerschot
Kortrijk
|continentalcup1 = Champions League
|continentalcup1 qualifiers = Union SG
Club Brugge
|continentalcup2 = Europa League
|continentalcup2 qualifiers = Genk
Anderlecht
|continentalcup3 = Europa Conference League
|continentalcup3 qualifiers = Charleroi
|league topscorer = Tolu Arokodare
(20 goals)
|matches = 292
|total goals = 839
|biggest home win =
|biggest away win =
|highest scoring =
|longest wins =
|longest unbeaten =
|longest winless =
|longest losses =
|highest attendance =
|lowest attendance =
|attendance =
|average attendance =
|prevseason = 2023–24
|nextseason = 2025–26
|updated = 18 May 2025
}}The 2024–25 Belgian Pro League (officially known as the Jupiler Pro League due to sponsorship reasons) is the 122nd season of top-tier football in Belgium.
Teams
Beerschot and Dender EH were promoted respectively as champions and runners-up of the 2023–24 Challenger Pro League. Beerschot returned to the top level after just two seasons, while Dender EH needed 15 seasons to return (including four seasons playing at the third level). They replaced Eupen and RWD Molenbeek who were relegated at the end of the previous season.
=Stadiums and locations=
{{location map+|Belgium
|float=right|width=450
|caption=Locations of the 2024–25 Belgian Pro League teams
|places=
{{location map~|Belgium|lat=50.833333 |long=4.333333 |label=
|position=right}}{{location map~|Belgium|lat=51.232406 |long=4.472086 |label=
|position=right}}{{location map~|Belgium|lat=51.185 |long=4.382222 |label=Beerschot|position=left}}
{{location map~|Belgium|lat=51.216667 |long=3.233333 |label=
{{location map~|Belgium|lat=50.4 |long=4.433333 |label=Charleroi}}
{{location map~|Belgium|lat=50.883984 |long=4.071061 |label=Dender EH── |position=left}}
{{location map~|Belgium|lat=50.966667 |long=5.5 |label=Genk |position=right}}
{{location map~|Belgium|lat=51.05 |long=3.733333 |label=
|position=left}}{{location map~|Belgium|lat=50.833333 |long=3.266667 |label=
|position=left}}{{location map~|Belgium|lat=51.056667 |long=4.386667 |label=Mechelen |position=left}}
{{location map~|Belgium|lat=50.633333 |long=5.566667 |label=Standard Liège |position=left}}
{{location map~|Belgium|lat=50.883333 |long=4.7 |label=
}}{{location map~|Belgium|lat=50.833333 |long=5.2 |label=
}}{{location map~|Belgium|lat=50.817778 |long=4.329167 |label=
|position=left}}{{location map~|Belgium|lat=51.083333 |long=4.916667 |label=Westerlo|position=right}}
{{Location map~ |Europe |mark=TransparentPlaceholder.png |marksize=1 |lat=48 |long=0 |label_size=80 |label=
{{nowrap|Bruges teams}}
{{nowrap|8px Cercle Brugge
|position=bottom}}
}}
class="wikitable sortable" |
Matricule
! Club ! Location ! Venue ! Capacity |
---|
35
| {{sort|Anderlecht|Anderlecht}} | style="text-align: center;" | 21,500 |
1
| {{sort|Antwerp|Antwerp}} | rowspan="2" | Antwerp | style="text-align: center;" | 16,144 |
13
| {{sort|Beerschot|Beerschot}} | style="text-align: center;" | 12,771 |
12
| {{sort|Cercle Brugge|Cercle Brugge}} | Bruges | style="text-align: center;" | 29,042 |
22
| {{sort|Charleroi|Charleroi}} | style="text-align: center;" | 14,000 |
3
| {{sort|Club Brugge|Club Brugge}} | Bruges | style="text-align: center;" | 29,042 |
3900
| {{sort|Dender EH|Dender EH}} | style="text-align: center;" | {{0}}6,429 |
322
| {{sort|Genk|Genk}} | Genk | style="text-align: center;" | 24,956 |
7
| {{sort|Gent|Gent}} | Ghent | style="text-align: center;" | 20,000 |
19
| {{sort|Kortrijk|Kortrijk}} | Kortrijk | style="text-align: center;" | {{0}}9,399 |
25
| {{sort|Mechelen|Mechelen}} | Mechelen | AFAS-stadion Achter de Kazerne | style="text-align: center;" | 16,700 |
18
| {{sort|Leuven|OH Leuven}} | Leuven | style="text-align: center;" | 10,000 |
373
| {{sort|Sint-Truiden|Sint-Truiden}} | Stayen | style="text-align: center;" | 14,600 |
16
| {{sort|Standard|Standard Liège}} | Liège | style="text-align: center;" | 30,023 |
10
| {{sort|Union SG|Union SG}} | style="text-align: center;" | {{0}}9,400 |
2024
| {{sort|Westerlo|Westerlo}} | Westerlo | style="text-align: center;" | {{0}}8,035 |
= Number of teams by area =
class="wikitable sortable" style="text-align:center" | ||
{{abbr|#|Number of teams}}
! Province or region ! Team(s) | ||
---|---|---|
rowspan=1|4
|align="left"|{{#invoke:flag | Antwerp}} | {{sort|Antwerp|Antwerp}}, {{sort|Beerschot|Beerschot}}, {{sort|Mechelen|Mechelen}} and {{sort|Westerlo|Westerlo}} |
rowspan=1|3
|align="left"|{{#invoke:flag | West Flanders}} | {{sort|Cercle Brugge|Cercle Brugge}}, {{sort|Club Brugge|Club Brugge}} and {{sort|Kortrijk|Kortrijk}} |
rowspan=3|2
|align="left"|{{#invoke:flag | Brussels}} | {{sort|Anderlecht|Anderlecht}} and {{sort|Union SG|Union SG}} |
align="left"|{{#invoke:flag | East Flanders}} | {{sort|Dender EH|Dender EH}} and {{sort|Gent|Gent}} |
align="left"|{{#invoke:flag | Limburg (Belgium)|name=Limburg}} | {{sort|Genk|Genk}} and {{sort|Sint-Truiden|Sint-Truiden}} |
rowspan=3|1
|align="left"|{{#invoke:flag | Flemish Brabant}} | {{sort|Leuven|Oud-Heverlee Leuven}} |
align="left"|{{#invoke:flag | Liège}} | {{sort|Standard|Standard Liège}} |
align="left"|{{#invoke:flag | Hainaut}} | {{sort|Charleroi|Charleroi}} |
=Personnel and kits=
class="wikitable sortable" style="text-align: left;" |
Club
! Manager ! Captain ! Kit Manufacturer ! Shirt sponsors (front) !Shirt sponsors (back) !Shirt sponsors (sleeve) !Shorts sponsor |
---|
Anderlecht
| {{#invoke:flag|icon|ALB}} Besnik Hasi {{#tag:ref|{{#invoke:flag|icon|DEN}} Brian Riemer was the manager for matchdays 1 through 7, {{#invoke:flag|icon|BEL}} David Hubert managed the club for matchdays 8 through 30.|group=n}} | {{#invoke:flag|icon|BEL}} Jan Vertonghen | Joma | Napoleon Sports & Casino |None |None |None |
Antwerp
| {{#invoke:flag|icon|NED}} Andries Ulderink {{#tag:ref|{{#invoke:flag|icon|BEL}} Jonas De Roeck was the manager for matchdays 1 through 28.|group=n}} | {{#invoke:flag|icon|BEL}} Toby Alderweireld | Jako | betFIRST |Heylen Vastgoed, Ghelamco |AntwerpFirst, betFIRST |None |
Beerschot
| {{#invoke:flag|icon|NED}} Dirk Kuyt | {{#invoke:flag|icon|BEL}} Ryan Sanusi | Erreà | Star Casino, Wolf Lubricants |Yelo Rent a Car, Mystershirt |Wolf Lubricants |Yelo Rent a Car, Green House Solutions |
Cercle Brugge
| {{#invoke:flag|icon|GER}} Bernd Storck {{#tag:ref|{{#invoke:flag|icon|AUT}} Miron Muslic was the manager for matchdays 1 through 16, {{#invoke:flag|icon|BEL}} Jimmy De Wulf acted as caretaker manager on matchday 17, and {{#invoke:flag|icon|AUT}} Ferdinand Feldhofer was the manager for the rest of the regular season. {{#invoke:flag|icon|BEL}} Jimmy De Wulf then managed the club during the relegation playoffs, leaving the Promotion/relegation play-offs for Storck.|group=n}} | {{#invoke:flag|icon|BEL}} Thibo Somers | Kappa | Golden Palace Casino Sports, Volvo Automobilia |Liantis, Callant Insurance |Golden Palace Casino Sports |Autoverhuur Meerschaert, Rodenbach |
Charleroi
| {{#invoke:flag|icon|BEL}} Rik De Mil | {{#invoke:flag|icon|ALG}} Adem Zorgane | Kipsta | Unibet, R-Aqua, Cairox |QNT Sport |None |
Club Brugge
| {{#invoke:flag|icon|BEL}} Nicky Hayen | {{#invoke:flag|icon|BEL}} Hans Vanaken | Castore | Unibet |None |
Dender EH
| {{#invoke:flag|icon|BEL}} Vincent Euvrard | {{#invoke:flag|icon|BEL}} Lennard Hens | Jako | Star Casino, Valckenier |None |None |None |
Genk
| {{#invoke:flag|icon|GER}} Thorsten Fink | {{#invoke:flag|icon|BEL}} Bryan Heynen | Nike | Beobank, ITZU Foreign |Wilms NV, Carglass |ACEG |
Gent
| {{#invoke:flag|icon|BIH}} Danijel Milićević (caretaker) {{#tag:ref|{{#invoke:flag|icon|BEL}} Wouter Vrancken was the manager for matchdays 1 through 22.|group=n}} | {{#invoke:flag|icon|BEL}} Sven Kums | Craft | Bâloise/Hamann International Logistics (in UEFA matches) |Circus Belgium, Vdk bank |APF Autoparts, Vdk bank |
Kortrijk
| {{#invoke:flag|icon|GER}} Bernd Storck {{#tag:ref|{{#invoke:flag|icon|ISL}} Freyr Alexandersson was the manager for matchdays 1 through 18, {{#invoke:flag|icon|BEL}} Yves Vanderhaeghe managed the club for matchdays 19 through 26.|group=n}} {{#tag:ref|After conclusion of the relegation play-offs, with Kortrijk relegated and their season over, {{#invoke:flag|icon|GER}} Bernd Storck took charge of Cercle Brugge who still needed to play promotion/relegation play-offs, hence Storkc is listed as manager of both Cercle Brugge and Kortrijk at the end of the season.|group=n}} | {{#invoke:flag|icon|POR}} João Silva | Erreà | AGO Jobs & HR, Unibet |Brustor, EARTH Solar Solution, Caps Fuel Card |NOVY |Unibet, Caps Fuel Card |
Mechelen
| {{#invoke:flag|icon|BEL}} Frederik Vanderbiest (caretaker) {{#tag:ref|{{#invoke:flag|icon|ALB}} Besnik Hasi was the manager for matchdays 1 through 28.|group=n}} | {{#invoke:flag|icon|BEL}} Rob Schoofs | Telenet, Groep Verelst, Play Sports, AFAS Software |AFAS Software, EnergyKing |Golden Palace Casino Sports |Arco Information, Golden Palace Casino Sports |
OH Leuven
| {{#invoke:flag|icon|WAL}} Chris Coleman {{#tag:ref|{{#invoke:flag|icon|ESP}} Óscar García was the manager for matchdays 1 through 14, {{#invoke:flag|icon|BEL}} Hans Somers was caretaker manager on matchdays 15 and 16.|group=n}} | {{#invoke:flag|icon|BEL}} Mathieu Maertens | Stanno | Star Casino |Banqup, Tegel Concept |Star Casino |None |
Sint-Truiden
| {{#invoke:flag|icon|BEL}} Wouter Vrancken {{#tag:ref|{{#invoke:flag|icon|ITA}} Christian Lattanzio was the manager for matchdays 1 through 6, {{#invoke:flag|icon|BEL}} Felice Mazzù was the manager for the rest of the regular competition (matchdays 7-30) and the first two matchdays of the relegation playoffs, {{#invoke:flag|icon|BEL}} Frédéric De Meyer was caretaker manager for the third match of the relegation playoffs.|group=n}} | {{#invoke:flag|icon|BEL}} Bruno Godeau | Olympic Sportswear | Maruhan, DMM.com, Oliverhood, Crafty Inc. |Asahi Kasei, Maruhan |Pauli Beton, SEPTENI, Shin Takarajima Holdings, All Ads Inc. |
Standard Liège
| {{#invoke:flag|icon|CRO}} Ivan Leko | {{#invoke:flag|icon|BEL}} Arnaud Bodart | Adidas | Circus Belgium |None |None |None |
Union SG
| {{#invoke:flag|icon|BEL}} Sébastien Pocognoli | {{#invoke:flag|icon|LUX}} Anthony Moris | Nike | Loterie Nationale/Hey! Telecom (in UEFA matches) |None |
Westerlo
| {{#invoke:flag|icon|BEL}} Timmy Simons | {{#invoke:flag|icon|TUR}} Sinan Bolat | Nike | Soudal |Casino777, Arma Global |Keukens Vanlommel, Voetbalshop.be |Soloya |
=Managerial changes=
class="wikitable sortable" style="text-align: left;" |
Team
! Outgoing manager ! Manner of departure ! Date of vacancy ! Position ! Replaced by ! Date of appointment |
---|
Gent
| {{#invoke:flag|icon|BEL}} Hein Vanhaezebrouck | End of contract |rowspan=7 | 30 June 2024{{cite news |date=2024-05-14 |title=Afscheid van Hein Vanhaezebrouck bij Gent is nu officieel: "Ik vertrek absoluut niet in onmin" |trans-title=Hein Vanhaezebrouck's farewell to Gent is now official: "I am definitely not leaving in discord" |url=https://sporza.be/nl/2024/05/14/afscheid-van-hein-vanhaezebrouck-bij-gent-is-nu-officieel-ik-vertrek-absoluut-niet-in-onmin~1715663016958/ |publisher=sporza.be |language=nl}}{{cite news |date=2024-06-27 |title="Bouwbedrijf" Union mag op zoek naar nieuwe architect: St. Pauli plukt coach Alexander Blessin weg |trans-title="Construction company" Union looking for new architect: St. Pauli snatches manager Alexander Blessin |url=https://sporza.be/nl/2024/06/26/-bouwbedrijf-union-mag-op-zoek-naar-nieuwe-architect-st-pauli-plukt-coach-alexander-blessin-weg~1719397708647/ |publisher=sporza.be |lang=nl}} |rowspan=7 | Pre-season | {{#invoke:flag|icon|BEL}} Wouter Vrancken |
Genk
| {{#invoke:flag|icon|BEL}} Domenico Olivieri |rowspan=2 | End of caretaker spell | {{#invoke:flag|icon|GER}} Thorsten Fink |
Westerlo
| {{#invoke:flag|icon|BEL}} Bart Goor | {{#invoke:flag|icon|BEL}} Timmy Simons | 23 May 2024{{cite news |date=2024-05-23 |title=Westerlo verwelkomt Timmy Simons als T1: "Een van de meest veelbelovende coaches" |trans-title=Westerlo welcomes Timmy Simons as manager: "One of the most promising coaches"|language=nl |publisher=sporza.be |url=https://sporza.be/nl/2024/05/23/westerlo-verwelkomt-timmy-simons-als-t1-een-van-de-meest-veelbelovende-coaches~1716453075548/}}{{#tag:ref|While the announcement of Timmy Simons's signature at Westerlo was already made on 23 May 2024, Bart Goor remained in charge as caretaker manager for the last match of the season and Simons thus only officially took up the position as soon as the 2023–24 season ended.|group=n|name=simonsdate}} |
Dender
| {{#invoke:flag|icon|BEL}} Timmy Simons | Signed by Westerlo | {{#invoke:flag|icon|BEL}} Vincent Euvrard |
Antwerp
| {{#invoke:flag|icon|NED}} Mark van Bommel | End of contract | {{#invoke:flag|icon|BEL}} Jonas De Roeck |
Sint-Truiden
| {{#invoke:flag|icon|GER}} Thorsten Fink | Signed by Genk | {{#invoke:flag|icon|ITA}} Christian Lattanzio |
Union SG
| {{#invoke:flag|icon|GER}} Alexander Blessin | Signed by St. Pauli | {{#invoke:flag|icon|BEL}} Sébastien Pocognoli |
Sint-Truiden
| {{#invoke:flag|icon|ITA}} Christian Lattanzio | rowspan="3" | Sacked | 15th | {{#invoke:flag|icon|BEL}} Felice Mazzù |
Anderlecht
| {{#invoke:flag|icon|DEN}} Brian Riemer | 4th | {{#invoke:flag|icon|BEL}} David Hubert{{#tag:ref|David Hubert was initially appointed as caretaker manager, but on 10 October 2024 it was confirmed he was appointed as full time manager.{{cite news |date=2024-10-10 |lang=nl |title=De kogel is door de kerk: Anderlecht geeft David Hubert het vertrouwen om aan te blijven als hoofdcoach |trans-title=The decision has been made: Anderlecht gives David Hubert the confidence to remain as manager |publisher=sporza.be |url=https://sporza.be/nl/2024/10/10/de-kogel-is-door-de-kerk-anderlecht-geeft-david-hubert-het-vertrouwen-om-aan-te-blijven-als-hoofdcoach~1728552690997/}}|group=n|name=hubertstatus}} |
rowspan=2|OH Leuven
| {{#invoke:flag|icon|ESP}} Óscar García | 13th | {{#invoke:flag|icon|BEL}} Hans Somers (caretaker) |
{{#invoke:flag|icon|BEL}} Hans Somers (caretaker)
| End of caretaker spell | 13th | {{#invoke:flag|icon|WAL}} Chris Coleman |
rowspan="2" | Cercle Brugge
| {{#invoke:flag|icon|AUT}} Miron Muslić | Sacked | 15th | {{#invoke:flag|icon|BEL}} Jimmy De Wulf (caretaker) |
{{#invoke:flag|icon|BEL}} Jimmy De Wulf
| End of caretaker spell | 15th | {{#invoke:flag|icon|AUT}} Ferdinand Feldhofer |
Kortrijk
| {{#invoke:flag|icon|ISL}} Freyr Alexandersson | Sacked | 14th | {{#invoke:flag|icon|BEL}} Yves Vanderhaeghe |
Gent
| {{#invoke:flag|icon|BEL}} Wouter Vrancken | Mutual consent | 6th | {{#invoke:flag|icon|BIH}} Danijel Milićević (caretaker) |
Kortrijk
| {{#invoke:flag|icon|BEL}} Yves Vanderhaeghe | rowspan="4" | Sacked | 15th | {{#invoke:flag|icon|GER}} Bernd Storck |
Antwerp
| {{#invoke:flag|icon|BEL}} Jonas De Roeck | 5th | {{#invoke:flag|icon|NED}} Andries Ulderink |
Mechelen
| {{#invoke:flag|icon|ALB}} Besnik Hasi | 10th | {{#invoke:flag|icon|BEL}} Frederik Vanderbiest (caretaker) |
Cercle Brugge
| {{#invoke:flag|icon|AUT}} Ferdinand Feldhofer | 13th | {{#invoke:flag|icon|BEL}} Jimmy De Wulf |
Anderlecht
| {{#invoke:flag|icon|BEL}} David Hubert | Replaced | 4th | {{#invoke:flag|icon|ALB}} Besnik Hasi |
rowspan=2|Sint-Truiden
| {{#invoke:flag|icon|BEL}} Felice Mazzù | Sacked | 2nd (relegation play-offs) | {{#invoke:flag|icon|BEL}} Frédéric De Meyer (caretaker) |
{{#invoke:flag|icon|BEL}} Frédéric De Meyer (caretaker)
| End of caretaker spell | 1st (relegation play-offs) | {{#invoke:flag|icon|BEL}} Wouter Vrancken |
Kortrijk
| {{#invoke:flag|icon|GER}} Bernd Storck | Signed by Cercle Brugge | 3rd (relegation play-offs) | colspan=2 align="center"|not replaced (season ended) |
Cercle Brugge
| {{#invoke:flag|icon|BEL}} Jimmy De Wulf | Replaced | 2nd (relegation play-offs) | {{#invoke:flag|icon|GER}} Bernd Storck |
Regular season
=League table=
|section=Regular season
|source=[https://www.proleague.be/jpl-ranking Jupiler Pro League] {{in lang|nl}}, [https://int.soccerway.com/national/belgium/pro-league/20242025/regular-season/r83046 Soccerway]
|team_order = GNK, CLU, USG, AND, ANT, GNT, STA, MEC, WES, CHA, OHL, DEN, CER, STR, KOR, BEE
|result1=RW |result2=CHPO |result3=CHPO |result4=CHPO |result5=CHPO |result6=CHPO |result7=EUPO |result8=EUPO |result9=EUPO |result10=EUPO |result11=EUPO |result12=EUPO |result13=REPO |result14=REPO |result15=REPO |result16=REPO
|update=complete
|win_AND=15|draw_AND=6 |loss_AND=9 |gf_AND=50|ga_AND=27
|win_ANT=12|draw_ANT=10 |loss_ANT=8 |gf_ANT=47|ga_ANT=32
|win_BEE=3 |draw_BEE=9 |loss_BEE=18|gf_BEE=26|ga_BEE=60
|win_CER=7 |draw_CER=11|loss_CER=12|gf_CER=29|ga_CER=44
|win_CHA=10|draw_CHA=7 |loss_CHA=13|gf_CHA=36|ga_CHA=36
|win_CLU=17|draw_CLU=8 |loss_CLU=5 |gf_CLU=65|ga_CLU=36
|win_DEN=8 |draw_DEN=8 |loss_DEN=14|gf_DEN=33|ga_DEN=51
|win_GNK=21|draw_GNK=5 |loss_GNK=4 |gf_GNK=55|ga_GNK=33
|win_GNT=11|draw_GNT=12|loss_GNT=7 |gf_GNT=41|ga_GNT=33
|win_KOR=7 |draw_KOR=5 |loss_KOR=18|gf_KOR=28|ga_KOR=55
|win_MEC=10 |draw_MEC=8 |loss_MEC=12|gf_MEC=45|ga_MEC=40
|win_OHL=8 |draw_OHL=13|loss_OHL=9 |gf_OHL=28|ga_OHL=33
|win_STR=7 |draw_STR=10|loss_STR=13|gf_STR=41|ga_STR=56
|win_STA=10|draw_STA=9 |loss_STA=11|gf_STA=22|ga_STA=35
|win_USG=15|draw_USG=10|loss_USG=5 |gf_USG=49|ga_USG=25
|win_WES=10 |draw_WES=7 |loss_WES=13|gf_WES=50|ga_WES=49
|name_AND=Anderlecht
|name_ANT=Antwerp
|name_BEE=Beerschot
|name_CER=Cercle Brugge
|name_CHA=Charleroi
|name_CLU=Club Brugge
|name_DEN=Dender EH
|name_GNK=Genk
|name_GNT=Gent
|name_KOR=Kortrijk
|name_MEC=Mechelen
|name_OHL=OH Leuven
|name_USG=Union SG
|name_STR=Sint-Truiden
|name_STA=Standard Liège
|name_WES=Westerlo
|show_limit=5
|class_rules=1) Points; 2) Matches won; 3) Goal difference; 4) Goals scored; 5) Away matches won; 6) Away goal difference; 7) Away goals scored; 8) Play-off.{{cite web|url=https://belgianfootball.s3.eu-central-1.amazonaws.com/s3fs-public/rbfa/docs/pdf/reglement/bondsreglement_reglement_federal/KBVB_bondsreglement_Boek_B_Titel_7_Competities.pdf|title=Bondsreglement Titel 7: Competities|trans-title=Association Rules Title 7: Competitions|publisher=Royal Belgian Football Association|page=19|archive-date=13 September 2020|archive-url=https://web.archive.org/web/20200913050709/https://belgianfootball.s3.eu-central-1.amazonaws.com/s3fs-public/rbfa/docs/pdf/reglement/bondsreglement_reglement_federal/KBVB_bondsreglement_Boek_B_Titel7_Competities.pdf|url-status=dead}}
|res_col_header=QR
|col_RW=green1
|text_RW=Qualification for the Champions' Play-offs
|note_res_RW=The regular season winner will qualify for the 2025–26 UEFA Europa League if not earning 2025–26 UEFA Champions League in the playoff.
|col_CHPO=green2 |text_CHPO=Qualification for the Champions' play-offs
|col_EUPO=blue1 |text_EUPO=Qualification for the Europe play-offs
|col_REPO=red1 |text_REPO=Qualification for the Relegation play-offs
}}
= Positions by round =
The table lists the positions of teams after the completion of each round, with postponed matches and points deductions only included when occurring. Teams with fewer matches played are shown with their position underlined, with each line representing one fewer match.
- Due to their taking parts in the qualifying rounds for European football, several matches of matchday 5 were postponed: Anderlecht vs Genk and Cercle Brugge vs Gent. The first match was rescheduled for the midweek of 17 September, in between matchdays 7 and 8. The second match was rescheduled for the midweek of 26 September, in between matchdays 8 and 9.
Colored cells refer to being in Champions' Play-offs (green), in Europe Play-offs (blue) or Relegation play-offs (red).
{{#invoke:Sports rbr table|table
| sortable = y
| labelnowrap = y
| source = [https://www.vbal4.be/p010103.htm vbal4.be]
| update = complete
|color_1=green1
|color_2-6=green2
|color_7-12=blue1
|color_13-16=red1
|color_1 = green1
|color_2 = green2
|color_3 = green2
|color_4 = green2
|color_5 = green2
|color_6 = green2
|color_7 = blue1
|color_8 = blue1
|color_9 = blue1
|color_10 = blue1
|color_11 = blue1
|color_12 = blue1
|color_13 = red1
|color_14 = red1
|color_15 = red1
|color_16 = red1
| pos_AND = 4/2/3/1/1/2/4/6/7/4/6/6/5/4/4/4/3/3/3/3/5/4/4/5/4/4/4/4/4/4
| pos_ANT = 2/9/4/6/10/11/8/3/2/2/2/2/3/2/3/3/4/4/4/4/4/5/5/4/5/5/5/5/5/5
| pos_BEE = 7/13/15/15/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16/16
| pos_CER = 16/16/10/12/14/14/15/15/14/15/15/15/11/14/15/15/15/15/13/13/12/11/10/9/11/13/12/12/13/13
| pos_CHA = 13/7/5/8/3/7/3/5/5/9/11/12/13/10/11/10/10/12/8/7/9/8/8/8/8/8/8/8/8/10
| pos_CLU = 6/11/14/13/8/3/1/4/4/5/4/3/2/3/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2/2
| pos_DEN = 7/5/2/3/4/1/6/11/10/7/7/7/9/12/10/11/11/8/9/9/7/9/9/11/9/11/11/11/12/12
| pos_GNK = 7/13/9/5/7/5/2/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1/1
| pos_GNT = 2/9/11/7/11/12/9/2/3/3/3/5/6/5/6/6/5/5/5/6/6/6/7/6/6/6/6/6/6/6
| pos_KOR = 13/8/12/9/12/13/13/14/15/12/13/13/14/15/15/14/14/14/14/15/15/15/15/15/15/15/15/15/15/15
| pos_MEC = 5/12/13/14/13/9/12/9/11/8/5/4/4/6/5/5/6/7/7/8/10/10/11/12/13/10/10/10/9/8
| pos_OHL = 7/3/6/10/9/6/10/10/12/14/12/11/12/13/13/13/12/11/12/11/11/12/12/10/12/9/9/9/11/11
| pos_STR = 13/15/16/16/15/15/14/13/13/13/14/14/15/11/12/12/13/13/15/14/14/14/14/14/14/14/14/14/14/14
| pos_STA = 7/6/7/11/6/10/7/7/9/11/9/9/8/9/8/9/8/9/10/10/8/7/6/7/7/7/7/7/7/7
| pos_USG = 7/3/8/4/5/8/11/12/8/10/10/10/10/7/9/7/7/6/6/5/3/3/3/3/3/3/3/3/3/3
| pos_WES = 1/1/1/2/2/4/5/8/6/6/8/8/7/8/7/8/9/10/11/12/13/13/13/13/10/12/13/13/10/9
|team1=GNK |team2=CLU |team3=USG |team4=AND |team5=ANT |team6=GNT |team7=STA |team8=MEC |team9=WES |team10=CHA |team11=OHL |team12=DEN |team13=CER |team14=STR |team15=KOR |team16=BEE
|name_AND=Anderlecht
|name_ANT=Antwerp
|name_BEE=Beerschot
|name_CER=Cercle Brugge
|name_CHA=Charleroi
|name_CLU=Club Brugge
|name_DEN=Dender EH
|name_GNK=Genk
|name_GNT=Gent
|name_KOR=Kortrijk
|name_MEC=Mechelen
|name_OHL=OH Leuven
|name_STR=Sint-Truiden
|name_STA=Standard Liège
|name_USG=Union SG
|name_WES=Westerlo
}}
= Results =
{{#invoke:Sports results|main
|show_matches=true
|matches_style=FBR
|solid_cell=grey
|update=16 March 2025
|source=[https://www.proleague.be/jpl-kalender Kalender Pro League 2024-25]
|team_order = GNK, CLU, USG, AND, ANT, GNT, STA, MEC, WES, CHA, OHL, DEN, CER, STR, KOR, BEE
|name_AND=Anderlecht
|name_ANT=Antwerp
|name_BEE=Beerschot
|name_CER=Cercle Brugge
|name_CHA=Charleroi
|name_CLU=Club Brugge
|name_DEN=Dender EH
|name_GNK=Genk
|name_GNT=Gent
|name_KOR=Kortrijk
|name_MEC=Mechelen
|name_OHL=OH Leuven
|name_STR=Sint-Truiden
|name_STA=Standard Liège
|name_USG=Union SG
|name_WES=Westerlo
|match_AND_ANT=2–0
|match_AND_BEE=2–1
|match_AND_CER=3–0
|match_AND_CHA=0–0
|match_AND_CLU=0-3
|match_AND_DEN=2–3
|match_AND_GNK=0–2
|match_AND_GNK_note = The match Anderlecht-Genk of matchday 5 (23 August) was postponed to 17 September (between matchdays 7 and 8) due to Anderlecht taking part in the qualifying rounds for European football.
|match_AND_GNT=6–0
|match_AND_KOR=4–0
|match_AND_MEC=4–1
|match_AND_OHL=1–1
|match_AND_STA=3–0
|match_AND_STR=1–0
|match_AND_USG=0–2
|match_AND_WES=2–2
|match_ANT_AND=1–2
|match_ANT_BEE=5–0
|match_ANT_BEE_note = The match Antwerp-Beerschot of matchday 9 (29 September) was abandoned at a score of 4–0 with 75 minutes played as the away fans kept throwing flares on the pitch.{{Cite web|url=https://sporza.be/nl/matches/voetbal/jupiler-pro-league/2024-2025/regulier/09/antwerp-beerschot-antwerpse-derby-definitief-gestaakt-na-75-minuten-misnoegde-beerschot-fans-leggen-match-stil-bij-4-0-achterstand~1718274604637/|title=Antwerpse derby definitief gestaakt na 75 minuten: misnoegde Beerschot-fans leggen match stil bij 4-0-achterstand | sporza}} As per the rules of the Pro League, the match would have been continued behind closed doors on 30 September or 1 October, but Beerschot decided to forfeit the match, handing Antwerp a 5–0 win.{{Cite web|url=https://sporza.be/nl/2024/09/29/antwerpse-derby-wordt-niet-meer-uitgespeeld-beerschot-geeft-forfait-voor-laatste-15-minuten~1727626310907/|title=Antwerpse derby wordt niet meer uitgespeeld: Beerschot geeft forfait voor laatste 15 minuten | sporza}} On 30 September, the Pro League fined Beerschot 50.000 € for the irregularities{{Cite web|url=https://sporza.be/nl/2024/09/30/pro-league-legt-beerschot-boete-van-50-000-euro-op-na-gestaakte~1727710533382/|title=Pro League legt Beerschot boete van 50.000 euro op na gestaakte derby tegen Antwerp | sporza}} and on 4 October 2024 the Prosecutor's Office of the Belgian FA also fined the club an additional 10.000 €, and additionally prohibited Beerschot from bringing away fans in their three next away fixtures (at Kortrijk, Mechelen, and Anderlecht).{{Cite web|url=https://sporza.be/nl/2024/10/04/beerschot-kent-straf-na-stopgezette-derby-10000-euro-boete-en-3-uitwedstrijden-zonder-fans~1728055179843/|title=Beerschot kent straf na stopgezette derby: 10.000 euro boete en 3 uitwedstrijden zonder fans | sporza}}
|match_ANT_CER=3–0
|match_ANT_CHA=1–3
|match_ANT_CLU=2–1
|match_ANT_DEN=1–1
|match_ANT_GNK=2–2
|match_ANT_GNT=0–1
|match_ANT_KOR=2–1
|match_ANT_MEC=0–1
|match_ANT_OHL=2–2
|match_ANT_STA=3–0
|match_ANT_STR=6–1
|match_ANT_USG=2–0
|match_ANT_WES=3–2
|match_BEE_AND=2–1
|match_BEE_ANT=1–1
|match_BEE_CER=3–2
|match_BEE_CHA=1–1
|match_BEE_CLU=2–2
|match_BEE_DEN=1–2
|match_BEE_GNK=3–4
|match_BEE_GNT=0–0
|match_BEE_KOR=2–2
|match_BEE_MEC=1–0
|match_BEE_OHL=0–0
|match_BEE_STA=0-0
|match_BEE_STR=0–3
|match_BEE_USG=0–4
|match_BEE_WES=1–2
|match_CER_AND=0–5
|match_CER_ANT=0–0
|match_CER_BEE=4–1
|match_CER_CHA=2–0
|match_CER_CLU=1–3
|match_CER_DEN=0–0
|match_CER_GNK=2–3
|match_CER_GNT=2–1
|match_CER_GNT_note = The match Cercle Brugge-Gent of matchday 5 (24 August) was postponed to 26 September (between matchdays 8 and 9) due to both clubs taking part in the qualifying rounds for European football.{{cite web | url=https://sporza.be/nl/matches/voetbal/jupiler-pro-league/2024-2025/regulier/05/cercle-brugge-kaa-gent-europese-deelnemers-cercle-brugge-en-kaa-gent-zien-onderling-jpl-duel-van-speeldag-5-uitgesteld~1720024334420/ | title=Europese deelnemers Cercle Brugge en KAA Gent zien onderling JPL-duel van speeldag 5 uitgesteld| trans-title=European participants Cercle Brugge and KAA Gent see JPL-duel of matchday 5 postponed }}
|match_CER_KOR=1–2
|match_CER_MEC=1–0
|match_CER_OHL=1–0
|match_CER_STA=1–1
|match_CER_STR=1–1
|match_CER_USG=0–0
|match_CER_WES=1–1
|match_CHA_AND=0–1
|match_CHA_ANT=0–1
|match_CHA_BEE=3–0
|match_CHA_CER=1–1
|match_CHA_CLU=1–1
|match_CHA_DEN=5–0
|match_CHA_GNK=1–1
|match_CHA_GNT=1–0
|match_CHA_KOR=1–0
|match_CHA_MEC=0–1
|match_CHA_OHL=0–2
|match_CHA_STA=1–1
|match_CHA_STR=2–1
|match_CHA_USG=1–2
|match_CHA_WES=1–0
|match_CLU_AND=2–1
|match_CLU_ANT=1–0
|match_CLU_BEE=4–2
|match_CLU_CER=3–0
|match_CLU_CHA=4–2
|match_CLU_DEN=4–1
|match_CLU_GNK=2–0
|match_CLU_GNT=2–4
|match_CLU_KOR=1–1
|match_CLU_MEC=1–1
|match_CLU_OHL=1–0
|match_CLU_STA=1–2
|match_CLU_STR=7–0
|match_CLU_USG=1–1
|match_CLU_WES=4–3
|match_DEN_AND=1–1
|match_DEN_ANT=1–3
|match_DEN_BEE=0–0
|match_DEN_CER=0–1
|match_DEN_CHA=1–0
|match_DEN_CLU=1–2
|match_DEN_GNK=0–1
|match_DEN_GNT=0–0
|match_DEN_KOR=4–1
|match_DEN_MEC=2–5
|match_DEN_OHL=1–1
|match_DEN_STA=0–2
|match_DEN_STR=2–1
|match_DEN_USG=0–0
|match_DEN_WES=1–0
|match_GNK_AND=2–0
|match_GNK_ANT=2–0
|match_GNK_BEE=1–0
|match_GNK_CER=2–1
|match_GNK_CHA=3–0
|match_GNK_CLU=3–2
|match_GNK_DEN=4–0
|match_GNK_GNT=0–0
|match_GNK_KOR=3–2
|match_GNK_MEC=2–1
|match_GNK_OHL=2–0
|match_GNK_STA=0–0
|match_GNK_STR=3–2
|match_GNK_USG=2–1
|match_GNK_WES=1–0
|match_GNT_AND=1–0
|match_GNT_ANT=1–1
|match_GNT_BEE=3–2
|match_GNT_CER=1–1
|match_GNT_CHA=1–1
|match_GNT_CLU=1–1
|match_GNT_DEN=1–2
|match_GNT_GNK=0–2
|match_GNT_KOR=1–2
|match_GNT_MEC=2–0
|match_GNT_OHL=3–0
|match_GNT_STA=5–0
|match_GNT_STR=2–0
|match_GNT_USG=1–3
|match_GNT_WES=4–1
|match_KOR_AND=0–2
|match_KOR_ANT=1–2
|match_KOR_BEE=1–0
|match_KOR_CER=1–1
|match_KOR_CHA=0–1
|match_KOR_CLU=0–3
|match_KOR_DEN=0–3
|match_KOR_GNK=2–1
|match_KOR_GNT=0–1
|match_KOR_MEC=3–1
|match_KOR_OHL=2–0
|match_KOR_STA=1–0
|match_KOR_STR=1–1
|match_KOR_USG=1–2
|match_KOR_WES=1–2
|match_MEC_AND=1–3
|match_MEC_ANT=1–1
|match_MEC_BEE=3–0
|match_MEC_CER=2–0
|match_MEC_CHA=5–2
|match_MEC_CLU=1–2
|match_MEC_DEN=2–1
|match_MEC_GNK=1–2
|match_MEC_GNT=3–3
|match_MEC_KOR=3–0
|match_MEC_OHL=5–0
|match_MEC_STA=0–0
|match_MEC_STR=1–1
|match_MEC_USG=1–1
|match_MEC_WES=2–4
|match_OHL_AND=0–0
|match_OHL_ANT=1–1
|match_OHL_BEE=2–0
|match_OHL_CER=1–1
|match_OHL_CHA=1-0
|match_OHL_CLU=0–1
|match_OHL_DEN=3–2
|match_OHL_GNK=3–1
|match_OHL_GNT=0–0
|match_OHL_KOR=1–1
|match_OHL_MEC=1-0
|match_OHL_STA=2–0
|match_OHL_STR=3–2
|match_OHL_USG=1–1
|match_OHL_WES=0–0
|match_STA_AND=0–2
|match_STA_ANT=0–0
|match_STA_BEE=1–0
|match_STA_CER=1–0
|match_STA_CHA=2–1
|match_STA_CLU=1–0
|match_STA_DEN=1–0
|match_STA_GNK=1–2
|match_STA_GNT=0–1
|match_STA_KOR=1–0
|match_STA_MEC=0–0
|match_STA_OHL=1–1
|match_STA_STR=2–1
|match_STA_USG=0–0
|match_STA_WES=1–2
|match_STR_AND=0–2
|match_STR_ANT=1–1
|match_STR_BEE=2–0
|match_STR_CER=1–1
|match_STR_CHA=1–4
|match_STR_CLU=2–2
|match_STR_DEN=3–3
|match_STR_GNK=2–2
|match_STR_GNT=1–1
|match_STR_KOR=4–2
|match_STR_MEC=2–1
|match_STR_OHL=2–1
|match_STR_STA=1–2
|match_STR_USG=0–0
|match_STR_WES=2–0
|match_USG_AND=0–0
|match_USG_ANT=2–1
|match_USG_BEE=3–1
|match_USG_CER=1–3
|match_USG_CHA=1–0
|match_USG_CLU=2–2
|match_USG_DEN=4–1
|match_USG_GNK=4–0
|match_USG_GNT=0–0
|match_USG_KOR=3–0
|match_USG_MEC=0–1
|match_USG_OHL=1–0
|match_USG_STA=3–0
|match_USG_STR=2–1
|match_USG_WES=3–1
|match_WES_AND=2–0
|match_WES_ANT=1–2
|match_WES_BEE=2–2
|match_WES_CER=3–0
|match_WES_CHA=1–3
|match_WES_CLU=1–2
|match_WES_DEN=2–0
|match_WES_GNK=1–2
|match_WES_GNT=2–2
|match_WES_KOR=4–0
|match_WES_MEC=1–1
|match_WES_OHL=1–1
|match_WES_STA=4–2
|match_WES_STR=1–2
|match_WES_USG=4–3
}}
Play-offs
=Champions' play-offs=
The champions' play-offs decided the overall league champion. The top six teams of the regular season qualified and played a round-robin tournament, with each team starting with half the points obtained during the regular season. The starting points were rounded up, and in case of ties in standings at the end of the champions' play-offs, any half points gained at the start were deducted first.
The points of Club Brugge, Union SG, Anderlecht and Gent were rounded up, and thus in the event of a tie on points, Genk and Antwerp would always be ranked ahead of those four teams.
The teams finishing in the top three positions after conclusion of the champions' play-offs qualified for European football, with the team in position four facing the winner of the Europe play-offs for the final ticket, unless the winner of the Belgian Cup finished in one of the top four positions, in which case the fifth team took part instead.
|section=Champions' play-offs
|source=[https://www.proleague.be/jpl-ranking Jupiler Pro League] {{in lang|nl}}, [https://int.soccerway.com/national/belgium/pro-league/20222023/championship-round/r70293/ Soccerway]
|team_order = USG, CLU, GNK, AND, ANT, GNT
|result1=CLLS |result2=CL3Q |result3=ELPO |result4=EL2Q |result5=EUPO
|update=complete
|win_GNK=4 |draw_GNK=1 |loss_GNK=5 |gf_GNK=14|ga_GNK=11 |status_GNK=
|win_CLU=7 |draw_CLU=2 |loss_CLU=1 |gf_CLU=21|ga_CLU=6 |status_CLU=
|win_USG=9 |draw_USG=1 |loss_USG=0 |gf_USG=22|ga_USG=3 |status_USG=C
|win_AND=3 |draw_AND=1 |loss_AND=6 |gf_AND=12|ga_AND=13 |status_AND=
|win_ANT=2 |draw_ANT=3 |loss_ANT=5 |gf_ANT=10|ga_ANT=18 |status_ANT=
|win_GNT=1 |draw_GNT=0 |loss_GNT=9 |gf_GNT=4 |ga_GNT=32 |status_GNT=
|status_text_T=Qualified, but not yet for the particular phase indicated
|status_text_X=Assured of at least Europa League
|status_text_Y=Assured of at least European play-off
|name_GNK=Genk
|name_CLU=Club Brugge
|name_USG=Union SG
|name_AND=Anderlecht
|name_ANT=Antwerp
|name_GNT=Gent
|adjust_points_GNK=34
|adjust_points_CLU=30
|adjust_points_USG=28
|adjust_points_AND=26
|adjust_points_ANT=23
|adjust_points_GNT=23
|show_matches=true
|matches_style=FBR
|solid_cell=grey
| match_GNK_CLU = 0–2
| match_GNK_USG = 1–2
| match_GNK_AND = 2–1
| match_GNK_ANT = 0–1
| match_GNK_GNT = 4–0
| match_CLU_GNK = 1–0
| match_CLU_USG = 0–1
| match_CLU_AND = 2–0
| match_CLU_ANT = 1–1
| match_CLU_GNT = 4–1
| match_USG_GNK = 1–0
| match_USG_CLU = 0–0
| match_USG_AND = 2–0
| match_USG_ANT = 5–1
| match_USG_GNT = 3–1
| match_AND_GNK = 1–2
| match_AND_CLU = 1–3
| match_AND_USG = 0–1
| match_AND_ANT = 0–0
| match_AND_GNT = 5–0
| match_ANT_GNK = 1–1
| match_ANT_CLU = 2–3
| match_ANT_USG = 0–4
| match_ANT_AND = 1–3
| match_ANT_GNT = 0–1
| match_GNT_GNK = 1–4
| match_GNT_CLU = 0–5
| match_GNT_USG = 0–3
| match_GNT_AND = 0–1
| match_GNT_ANT = 0–3
|class_rules=1) Points; 2) Points without (possible) half points added due to rounding; 3) Regular season finishing position.{{cite web |url=https://belgianfootball.s3.eu-central-1.amazonaws.com/s3fs-public/rbfa/docs/pdf/reglement/bondsreglement_reglement_federal/KBVB_bondsreglement_Boek_P_proleague.pdf |title=BOEK P |trans-title=BOOK P |publisher=Belgian FA|access-date=3 May 2021}}
|res_col_header=QR
|col_CLLS=green1 |text_CLLS={{nowrap|Qualification for the Champions League league phase}}
|col_CL3Q=green2 |text_CL3Q={{nowrap|Qualification for the Champions League third qualifying round}}
|col_ELPO=blue1 |text_ELPO={{nowrap|Qualification for the Europa League play-off round}}
|col_EL2Q=blue2 |text_EL2Q={{nowrap|Qualification for the Europa League second qualifying round}}
|col_EUPO=yellow1 |text_EUPO={{nowrap|Qualification for the European competition play-off}}
|note_res_ELPO=Club Brugge won the 2024–25 Belgian Cup and qualified for the Champions League through finishing second, the Europa League play-off round berth was therefore transferred to regular season winners Genk.
}}
=Europe play-offs=
The Europe play-offs were played by the teams in positions 7 through 12 at the conclusion of the regular season. Teams
played a round-robin tournament, with each team starting with half the points obtained during the regular season. The starting points were rounded up, and in case of ties in standings at the end of the Europe play-offs, any half points gained at the start were deducted first.
The points of Standard, Westerlo, Charleroi and OH Leuven were rounded up, and thus in the event of a tie on points, Mechelen and Dender EH would always be ranked ahead of those three teams.
The winner of the Europe play-offs faced the team finishing fourth in the champions' play-offs to decide which team qualified for European football.
|section=Europe play-offs
|source=[https://www.proleague.be/jpl-ranking Jupiler Pro League] {{in lang|nl}}, [https://int.soccerway.com/national/belgium/pro-league/20222023/championship-round/r70293/ Soccerway]
|team_order= CHA, WES, MEC, DEN, STA, OHL
|result1=EUPO
|status_CHA=O
|update=complete
|win_STA=0 |draw_STA=7 |loss_STA=3 |gf_STA=5 |ga_STA=8
|win_MEC=2 |draw_MEC=6 |loss_MEC=2 |gf_MEC=17|ga_MEC=17
|win_WES=3 |draw_WES=5 |loss_WES=2 |gf_WES=19|ga_WES=16
|win_CHA=6 |draw_CHA=3 |loss_CHA=1 |gf_CHA=19|ga_CHA=10
|win_OHL=1 |draw_OHL=5 |loss_OHL=4 |gf_OHL=11|ga_OHL=19
|win_DEN=3 |draw_DEN=4 |loss_DEN=3 |gf_DEN=20|ga_DEN=21
|name_STA=Standard Liège
|name_MEC=Mechelen
|name_WES=Westerlo
|name_CHA=Charleroi
|name_OHL=OH Leuven
|name_DEN=Dender EH
|adjust_points_STA=20
|adjust_points_MEC=19
|adjust_points_WES=19
|adjust_points_CHA=19
|adjust_points_OHL=19
|adjust_points_DEN=16
|show_matches=true
|matches_style=FBR
|solid_cell=grey
| match_STA_MEC = 2–2
| match_STA_WES = 1–1
| match_STA_CHA = 0–1
| match_STA_OHL = 0–1
| match_STA_DEN = 0–0
| match_MEC_STA = 0–0
| match_MEC_WES = 2–3
| match_MEC_CHA = 1–1
| match_MEC_OHL = 1–1
| match_MEC_DEN = 5–2
| match_WES_STA = 0-0
| match_WES_MEC = 2–2
| match_WES_CHA = 2–2
| match_WES_OHL = 2–2
| match_WES_DEN = 4–2
| match_CHA_STA = 1–0
| match_CHA_MEC = 3–0
| match_CHA_WES = 4–3
| match_CHA_OHL = 2-1
| match_CHA_DEN = 4–1
| match_OHL_STA = 1–1
| match_OHL_MEC = 1–2
| match_OHL_WES = 0–2
| match_OHL_CHA = 0–0
| match_OHL_DEN = 4–4
| match_DEN_STA = 1–1
| match_DEN_MEC = 2-2
| match_DEN_WES = 1–0
| match_DEN_CHA = 2–1
| match_DEN_OHL = 5–0
|class_rules=1) Points; 2) Points without (possible) half points added due to rounding; 3) Regular season finishing position.{{cite web |url=https://belgianfootball.s3.eu-central-1.amazonaws.com/s3fs-public/rbfa/docs/pdf/reglement/bondsreglement_reglement_federal/KBVB_bondsreglement_Boek_P_proleague.pdf |title=BOEK P |trans-title=BOOK P |publisher=Belgian FA|access-date=3 May 2021}}
|res_col_header=QR
|col_EUPO=yellow1 |text_EUPO=Qualification for the European competition play-off
}}
=European competition play-off=
A single match was played between Antwerp, the fifth place finisher of the Champions' play-offs, and Charleroi, the winner of the Europe play-offs, with home advantage to the team from the Champions' play-offs. The winner qualified for European football.
Normally the fourth team of the champions' play-offs would have faced the winner of the Europe play-offs, but as Club Brugge won the 2024–25 Belgian Cup on 4 May 2025 and was already guaranteed of finishing in the top four, instead the fifth-placed team of the champions' play-offs faced Charleroi.
{{#invoke:football box|main
|date = {{Start date|2025|05|29|df=y}}
|time = 18:30 CEST
|team1 = Antwerp
|score = 1–2
|report = https://www.proleague.be/wedstrijden/seizoen-2024-2025-jupiler-pro-league-41-r-antwerp-fc-vs-sporting-charleroi
|team2 = Charleroi
|goals1 =
- Bayo {{goal|86}}
|goals2 =
|stadium = Bosuilstadion, Antwerp
|attendance = 14,008
|referee = Erik Lambrechts
}}
=Relegation play-offs=
The bottom four teams after the regular season played the relegation play-offs, a round-robin tournament in which they started with the full points obtained during the regular season. The teams finishing in third and fourth at the conclusion of the relegation play-offs were relegated to the 2025–26 Challenger Pro League, and the team finishing in second place had to play the winner of the promotion play-offs, with the winner of that match playing in the 2025–26 Belgian Pro League.
|section=Relegation play-offs
|source=[https://www.proleague.be/jpl-ranking Jupiler Pro League] {{in lang|nl}}, [https://int.soccerway.com/national/belgium/pro-league/20222023/championship-round/r70293/ Soccerway]
|team_order=STR, CER, KOR, BEE
|result2=RELPO |result3=REL |result4=REL
|update=complete
|win_CER=2 |draw_CER=1 |loss_CER=3 |gf_CER=10|ga_CER=13|status_CER=O
|win_STR=3 |draw_STR=1 |loss_STR=2 |gf_STR=9 |ga_STR=10
|win_KOR=3 |draw_KOR=2 |loss_KOR=1 |gf_KOR=12|ga_KOR=8 |status_KOR=R
|win_BEE=2 |draw_BEE=0 |loss_BEE=4 |gf_BEE=10|ga_BEE=10|status_BEE=R
|name_CER=Cercle Brugge
|name_STR=Sint-Truiden
|name_KOR=Kortrijk
|name_BEE=Beerschot
|adjust_points_CER=32
|adjust_points_STR=31
|adjust_points_KOR=26
|adjust_points_BEE=18
|show_matches=true
|matches_style=FBR
|solid_cell=grey
| match_CER_STR = 3-1
| match_CER_KOR = 0-2
| match_CER_BEE = 2-1
| match_STR_CER = 3-1
| match_STR_KOR = 0-3
| match_STR_BEE = 2-1
| match_KOR_CER = 2-2
| match_KOR_STR = 2-2
| match_KOR_BEE = 3-2
| match_BEE_CER = 4-2
| match_BEE_STR = 0-1
| match_BEE_KOR = 2-0
|class_rules=1) Points; 2) Regular season finishing position.{{cite web |url=https://belgianfootball.s3.eu-central-1.amazonaws.com/s3fs-public/rbfa/docs/pdf/reglement/bondsreglement_reglement_federal/KBVB_bondsreglement_Boek_P_proleague.pdf |title=BOEK P |trans-title=BOOK P |publisher=Belgian FA|access-date=3 May 2021}}
|res_col_header=QR
|col_RELPO=red2 |text_RELPO=Qualification for the promotion/relegation play-offs
|col_REL=red1 |text_REL=Relegation to Challenger Pro League
}}
{{2024–25 Challenger Pro League play-offs}}
Season statistics
{{updated|19 May 2025}}
Despite teams not playing the same amount of matches due to the play-offs, goals during the play-offs do count in determining the top scorer.
=Top goalscorers=
class="wikitable" style="text-align:center" |
Rank
!Player !Club |
---|
rowspan="2" |1
|align="left" |{{#invoke:flag|icon|BEL}} Adriano Bertaccini |align="left" |Sint-Truiden |rowspan="2" |21 |
align="left" |{{#invoke:flag|icon|NGA}} Tolu Arokodare
|align="left" |Genk |
3
|align="left" |{{#invoke:flag|icon|DEN}} Kasper Dolberg |align="left" |Anderlecht |18 |
4
|align="left" |{{#invoke:flag|icon|CAN}} Promise David |align="left" |Union SG |17 |
5
|align="left" |{{#invoke:flag|icon|SRB}} Nikola Stulic |align="left" |Charleroi |16 |
rowspan="2"|6
|align="left" |{{#invoke:flag|icon|CRO}} Franjo Ivanović |align="left" |Union SG |rowspan="2"|15 |
align="left" |{{#invoke:flag|icon|GRE}} Christos Tzolis
|align="left" |Club Brugge |
rowspan="2"|8
|align="left" |{{#invoke:flag|icon|SUR}} Tjaronn Chery |align="left" |Antwerp |rowspan="2"|14 |
align="left" |{{#invoke:flag|icon|BEL}} Daan Heymans
|align="left" |Charleroi |
rowspan="2"|10
|align="left" |{{#invoke:flag|icon|BEL}} Benito Raman |align="left" |Mechelen |rowspan="2"|13 |
align="left" |{{#invoke:flag|icon|CRO}} Matija Frigan
|align="left" |Westerlo |
==Hat-tricks==
class="wikitable" | ||||
Player | For | Against | Result | Date |
---|---|---|---|---|
{{#invoke:flag|icon|SWE}} Jacob Ondrejka
|Antwerp |Sint-Truiden |11 August 2024 | ||||
{{#invoke:flag|icon|DEN}} Kasper Dolberg
|Anderlecht |Cercle Brugge |10 November 2024 | ||||
{{#invoke:flag|icon|GRE}} Christos Tzolis4
|Club Brugge |Sint-Truiden |23 November 2024 | ||||
{{#invoke:flag|icon|DEN}} Kasper Dolberg4
|Anderlecht |Cercle Brugge |23 April 2025 |
:Note: 4 – player scored 4 goals
= Clean sheets =
class="wikitable" style="text-align:center" |
Rank
!Player !Club |
---|
1
|align="left" |{{#invoke:flag|icon|LUX}} Anthony Moris |align="left" |Union SG |20 |
2
|align="left" |{{#invoke:flag|icon|BEL}} Colin Coosemans |align="left" |Anderlecht |17 |
rowspan="2" |3
|align="left" |{{#invoke:flag|icon|BEL}} Davy Roef |align="left" |Gent |rowspan="2" |11 |
align="left" |{{#invoke:flag|icon|BEL}} Tobe Leysen
|align="left" |OH Leuven |
rowspan="3" |5
|align="left" |{{#invoke:flag|icon|BEL}} Matthieu Epolo |align="left" |Standard Liege |rowspan="3" |10 |
align="left" |{{#invoke:flag|icon|BEL}} Simon Mignolet
|align="left" |Club Brugge |
align="left" |{{#invoke:flag|icon|BEL}} Ortwin De Wolf
|align="left" |Mechelen |
8
|align="left" |{{#invoke:flag|icon|BEL}} Senne Lammens |align="left" |Antwerp |9 |
rowspan="2" |9
|align="left" |{{#invoke:flag|icon|BEL}} Hendrik van Crombrugge |align="left" |Genk |rowspan="2" |8 |
align="left" |{{#invoke:flag|icon|NED}} Michael Verrips
|align="left" |Dender EH |
= Discipline =
== Player ==
- Most yellow cards: 12{{Cite web |title=FotMob • Yellow cards – Belgian Pro League 2024/2025 stats |url=https://www.fotmob.com/leagues/40/stats/season/23650/players/yellow_card/first-division-players |access-date=2024-09-15 |website=FotMob |language=en}}
- {{#invoke:flag|icon|BEL}} Birger Verstraete (OH Leuven)
- Most red cards: 2{{Cite web |title=FotMob • Red cards – Belgian Pro League 2024/2025 stats |url=https://www.fotmob.com/leagues/40/stats/season/23650/players/red_card/first-division-players |access-date=2024-09-15 |website=FotMob |language=en}}
- 6 players
== Club ==
- Most yellow cards: 96{{Cite web |title=FotMob • Yellow cards by club • Belgian Pro League 2024/2025 stats |url=https://www.fotmob.com/leagues/40/stats/season/23650/teams/total_yel_card_team/first-division-teams |access-date=2024-09-15 |website=FotMob |language=en}}
- Westerlo
- Fewest yellow cards: 54
- Genk
- Most red cards: 7{{Cite web |title=FotMob • Red cards by club • Belgian Pro League 2024/2025 stats |url=https://www.fotmob.com/leagues/40/stats/season/23650/teams/total_red_card_team/first-division-teams |access-date=2024-09-15 |website=FotMob |language=en}}
- Beerschot
- OH Leuven
- Fewest red cards: 2
- 3 clubs
Notes
{{reflist|group=n}}
See also
References
{{Belgian Pro League}}
{{2024–25 in Belgian football}}
{{2024–25 in European football (UEFA)}}
{{DEFAULTSORT:Belgian Pro League 2024-25}}