2024–25 Persian Gulf Pro League
24th season of Persian Gulf Pro League
From Wikipedia, the free encyclopedia
The 2024–25 Persian Gulf Pro League was the 42nd season of Iran's Football League and 24th as Persian Gulf Pro League since its establishment in 2001. The season started on 15 August 2024 and ended on 15 May 2025. On 2 May 2025, Tractor defeated Shams Azar 4–0 to secure their first title with 2 games to go.
Nassaji Mazandaran
| Season | 2024–25 |
|---|---|
| Dates | 15 August 2024 – 15 May 2025 |
| Champions | Tractor (1st title) |
| Relegated | Havadar Nassaji Mazandaran |
| AFC Champions League Elite | Tractor Sepahan |
| AFC Champions League Two | Esteghlal |
| Matches | 240 |
| Goals | 474 (1.98 per match) |
| Top goalscorer | Amirhossein Hosseinzadeh (14 goals) |
| Biggest home win | Sepahan 5–0 Havadar (27 December 2024) |
| Biggest away win | Havadar 0–5 Persepolis (1 January 2025) |
| Highest scoring | Aluminium Arak 4-2 Foolad (20 October 2024) Tractor 5–1 Mes Rafsanjan (21 January 2025) Esteghlal 5–1 Aluminium Arak (2 May 2025) Malavan 3-3 Zob Ahan (2 May 2025) Tractor 3-3 Nassaji (8 May 2025) |
| Longest winning run | Persepolis (7 matches) |
| Longest unbeaten run | Sepahan (21 matches) |
| Longest winless run | Nassaji Mazandaran (10 matches) |
| Longest losing run | Havadar Chadormalu persepolis (4 matches) |
| Highest attendance | 90,000 Tractor – Persepolis[1][2][3] (22 August 2024) Tractor – Esteghlal[4][5] (4 April 2025) |
| Lowest attendance | 0 (spectator ban) 6 matches |
| Total attendance | 2,043,600 |
| Average attendance | 8,733 (matches with spectator bans not included) |
← 2023–24 2025–26 →
All statistics correct as of 27 February 2025. | |
Teams
Promotion and relegation (pre-season)
A total of sixteen teams contest the league, including fourteen sides from the 2023–24 season and two promoted from the 2023–24 Azadegan League. This includes the two top teams from the Azadegan League. Kheybar Khorramabad and Chadormalou Ardakan (both were promoted to the top flight for the first time). They replaced Paykan Tehran and Sanat Naft Abadan, who were both relegated after eight seasons in the top flight.
Stadiums and locations
| Team | Location | Stadium | Capacity |
|---|---|---|---|
| Aluminium | Arak | Imam Khomeini | 15,000 |
| Chadormalou | Ardakan | Shahid Nassiri | 15,000 |
| Esteghlal | Tehran | Azadi | 78,116 |
| Esteghlal Khuzestan | Ahvaz | Takhti | 10,000 |
| Foolad | Ahvaz | Foolad Arena | 30,655 |
| Gol Gohar | Sirjan | Shahid Qasem Soleimani | 9,000[6] |
| Havadar | Tehran | Dastgerdi[7] | 8,250 |
| Kheybar | Khorramabad | Takhti Khorramabad | 8,000[8] |
| Malavan | Bandar-e Anzali | Sirous Ghayeghran | 9,000[9] |
| Mes Rafsanjan | Rafsanjan | Shohadaye Mes | 10,000[10] |
| Nassaji | Qaem Shahr | Vatani | 15,000 |
| Persepolis | Tehran | Azadi | 78,116 |
| Sepahan | Isfahan | Naghsh-e-Jahan | 75,000 |
| Shams Azar | Qazvin | Sardar Azadegan | 15,000 |
| Tractor | Tabriz | Yadegar-e Emam | 66,833 |
| Zob Ahan | Fooladshahr | Fooladshahr | 20,000 |
Number of teams by Province
| Province | Number of teams | Teams |
|---|---|---|
| Tehran | 3 | Esteghlal, Havadar, Persepolis |
| Isfahan | 2 | Sepahan, Zob Ahan |
| Kerman | 2 | Gol Gohar, Mes Rafsanjan |
| Khuzestan | 2 | Foolad, Esteghlal Khuzestan |
| East Azarbaijan | 1 | Tractor |
| Gilan | 1 | Malavan |
| Lorestan | 1 | Kheybar |
| Markazi | 1 | Aluminium |
| Mazandaran | 1 | Nassaji |
| Qazvin | 1 | Shams Azar |
| Yazd | 1 | Chadormalou |
Personnel and kits
Note: Flags indicate national team as has been defined under FIFA eligibility rules. Players may hold more than one non-FIFA nationality.
Managerial changes
| Team | Outgoing head coach | Manner of departure | Date of vacancy | Position in table | Incoming head coach | Date of appointment |
|---|---|---|---|---|---|---|
| Esteghlal | Resigned | 1 October 2024 | 10th | 1 October 2024 | ||
| End of caretaker spell | 18 October 2024 | 11th | 18 October 2024 | |||
| Sepahan | Resigned | 2 November 2024 | 1st | 18 October 2024 |
Foreign players
The number of foreign players is restricted to six per Persian Gulf Pro League team, including a slot for a player from AFC countries.[11][12][13][14]
In bold: Players that have been capped for their national team.
League table
| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification or relegation |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Tractor (C) | 30 | 21 | 5 | 4 | 57 | 19 | +38 | 68 | Qualification for the 2025–26 AFC Champions League Elite phase |
| 2 | Sepahan | 30 | 16 | 12 | 2 | 48 | 21 | +27 | 60[a] | Qualification for the 2025–26 AFC Champions League Elite qualifying play-offs |
| 3 | Persepolis | 30 | 18 | 6 | 6 | 42 | 20 | +22 | 60[a] | |
| 4 | Foolad | 30 | 15 | 8 | 7 | 36 | 30 | +6 | 53 | |
| 5 | Gol Gohar | 30 | 12 | 11 | 7 | 23 | 16 | +7 | 47 | |
| 6 | Zob Ahan | 30 | 10 | 12 | 8 | 32 | 28 | +4 | 42 | |
| 7 | Malavan | 30 | 10 | 9 | 11 | 33 | 33 | 0 | 39 | |
| 8 | Aluminium Arak | 30 | 7 | 14 | 9 | 30 | 31 | −1 | 35 | |
| 9 | Esteghlal[b] | 30 | 7 | 13 | 10 | 30 | 33 | −3 | 34[c] | Qualification for the 2025–26 AFC Champions League Two group stage |
| 10 | Chadormalou | 30 | 8 | 10 | 12 | 22 | 28 | −6 | 34[c] | |
| 11 | Kheybar | 30 | 8 | 9 | 13 | 24 | 31 | −7 | 33 | |
| 12 | Esteghlal Khuzestan | 30 | 6 | 13 | 11 | 19 | 30 | −11 | 31 | |
| 13 | Shams Azar | 30 | 7 | 8 | 15 | 23 | 41 | −18 | 29 | |
| 14 | Mes Rafsanjan | 30 | 6 | 10 | 14 | 24 | 38 | −14 | 28 | |
| 15 | Nassaji (R) | 30 | 3 | 14 | 13 | 15 | 28 | −13 | 23 | Relegation to 2025–26 Azadegan League |
| 16 | Havadar (R) | 30 | 4 | 10 | 16 | 17 | 48 | −31 | 22 |
Rules for classification: 1) Points; 2) Head-to-head points; 3) Head-to-head goal difference; 4) Total goal difference; 5) Total goals scored; 6) Fair-play points.
(Note: Head-to-head record is used only after all the matches between the teams in question have been played).[15][16]
(C) Champions; (R) Relegated
Notes:
- Sepahan finished ahead of Persepolis on head-to-head points: Sepahan 6, Persepolis 0
- Esteghlal qualified to the AFC Champions League Two as 2024–25 Hazfi Cup champions.
- Esteghlal finished ahead of Chadormalou on Total goal difference. Head-to-head points: Esteghlal 2, Chadormalou 2. Total goal difference: Esteghlal −3, Chadormalou −6.
Results
Positions by round
The table lists the positions of teams after each week of matches. In order to preserve chronological evolvements, any postponed matches are not included to the round at which they were originally scheduled, but added to the full round they were played immediately afterwards.
| Leader : 2025–26 AFC Champions League Elite Group stage | |
| AFC Champions League Elite Play-off stage | |
| Relegation to 2025–26 Azadegan League |
Season statistics
Top scorers

| Rank | Player | Club | Goals |
|---|---|---|---|
| 1 | Tractor | 14 | |
| 2 | Persepolis | 12 | |
| 3 | Esteghlal | 10 | |
| 4 | Sepahan | 9 | |
| Aluminium | |||
| 6 | Tractor | 8 | |
| Malavan | |||
| Tractor | |||
| Tractor | |||
| 10 | Zob Ahan | 7 | |
| Sepahan | |||
| Foolad | |||
Hat-tricks
| Player | For | Against | Result | Date |
|---|---|---|---|---|
| Sepahan | Havadar | 5–0 (H) | 27 December 2024 | |
| Persepolis | Havadar | 5–0 (A) | 1 January 2025 | |
Top assists

| Rank | Player | Club | Assists |
|---|---|---|---|
| 1 | Tractor | 9 | |
| 2 | Tractor | 8 | |
| 3 | Foolad | 7 | |
| Sepahan | |||
| Persepolis | |||
| 6 | Tractor | 6 | |
| Aluminium | |||
| Sepahan | |||
| Nassaji | |||
| 10 | Zob Ahan | 5 | |
| Chadormalou | |||
| Aluminium | |||
| Gol Gohar | |||
Clean sheets

| Rank | Player | Club | Clean sheets |
|---|---|---|---|
| 1 | Tractor | 16 | |
| 2 | Gol Gohar | 14 | |
| Persepolis | |||
| 4 | Zob Ahan | 12 | |
| Foolad | |||
| 6 | Esteghlal Khuzestan | 11 | |
| Chadormalou | |||
| 8 | Aluminium | 10 | |
| Mes Rafsanjan | |||
| Nassaji | |||
Attendances
Average home attendances
| Pos | Team | Total | High | Low | Average | Change |
|---|---|---|---|---|---|---|
| 1 | Tractor | 617,000 | 90,000 | 0 | 44,071 | +38.1% |
| 2 | Persepolis | 251,500 | 50,000 | 3,000 | 16,767 | −49.9% |
| 3 | Sepahan | 216,000 | 45,000 | 4,000 | 14,400 | −20.3% |
| 4 | Foolad | 150,200 | 40,000 | 1,000 | 10,013 | +39.7% |
| 5 | Nassaji | 136,500 | 15,000 | 2,000 | 9,100 | +10.5% |
| 6 | Chadormalou | 116,200 | 13,000 | 0 | 8,300 | n/a |
| 7 | Malavan | 104,000 | 10,000 | 2,000 | 6,933 | −1.9% |
| 8 | Esteghlal | 101,000 | 12,000 | 2,000 | 6,733 | −80.3% |
| 9 | Kheybar | 79,000 | 9,000 | 0 | 5,643 | n/a |
| 10 | Shams Azar | 60,500 | 12,000 | 500 | 4,033 | −30.3% |
| 11 | Esteghlal Khuzestan | 58,050 | 20,000 | 250 | 3,870 | −4.7% |
| 12 | Gol Gohar | 38,800 | 9,000 | 300 | 2,587 | −36.9% |
| 13 | Aluminium Arak | 35,900 | 8,000 | 300 | 2,393 | −36.2% |
| 14 | Mes Rafsanjan | 31,600 | 10,000 | 300 | 2,107 | −4.5% |
| 15 | Zob Ahan | 27,750 | 9,000 | 0 | 1,982 | −25.1% |
| 16 | Havadar | 19,600 | 8,000 | 0 | 1,400 | +600.0% |
| League total | 2,043,600 | 90,000 | 0 | 8,733 | −19.3% |
Updated to games played on 15 May 2025
Source: Iranleague.ir
Notes:
Matches with spectator bans are not included in average attendances
Chadormalou and Kheybar played in the previous season in the Azadegan League
Attendances by round
| Team/Round | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | Average |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Aluminium Arak | A | 1,000[17] | A | 1,000[18] | A | 5,000[19] | A | 2,000 | A | A | 400[20] | A | 8,000 | A | 1,000[21] | 700 | A | 500[22] | A | 6,000[23] | A | 2,000[24] | A | 6,000[25] | 1,500 | A | 500[26] | A | 300[27] | A | 2,393 |
| Chadormalou | A | NC[28] | A | 8,000[29] | A | 10,000[30][31][32] | A | 7,000[33] | A | 10,000[34][35] | A | 6,000[36] | A | 13,000[37] | A | 12,000[38] | A | 8,200[39] | A | 5,000[40] | A | 12,000[41] | A | 5,000[42] | A | 12,000[43] | A | 3,000[44] | A | 5,000[45] | 8,300 |
| Esteghlal | A | 12,000[46] | A | 5,000[47] | A | 10,000[48] | A | 5,000[49] | A | 10,000[50] | A | 2,000[51] | A | A | 8,000 | 8,000[52] | A | 5,000[53] | A | 5,000[54][55][56] | A | 6,000[57] | A | 8,000[58] | A | 7,000 | A | 5,000[59] | 5,000[60] | A | 6,733 |
| Esteghlal Khuzestan | 500[61][62] | A | 20,000[63] | A | 1,000[64] | A | 2,000[65] | 1,000[66] | A | 20,000[67][68] | A | 1,000[69] | A | 7,000[70] | A | A | 1,000[71] | A | 500[72] | A | 300[73] | A | A | 1,000 | A | 500[74] | A | 250 | A | 2,000[75] | 3,870 |
| Foolad | A | 2,000[76] | A | 5,000 | A | 7,200[77] | A | A | 10,000[78] | A | 25,000[79] | A | 5,000[80] | A | 7,000[81] | 6,000[82][83] | A | 40,000[84][85] | A | 6,000[86] | A | 25,000[87] | 2,000[88] | A | 4,000[89] | A | 5,000[90] | A | 1,000 | A | 10,013 |
| Gol Gohar | A | 2,000 | A | 9,000[91] | A | 3,000[92] | A | 3,000[93] | A | 2,000[94] | A | A | 2,000[95] | A | NC[96] | 3,000[97] | A | 2,000[98] | A | 2,000[99] | A | 500[100] | A | 300 | A | 500 | 9,000[101] | A | 500 | A | 2,587 |
| Havadar | 1,500[102] | A | 8,000 | A | 100[103] | A | 5,000[104] | A | 200 | A | 500[105] | A | NC[106] | A | 2,000[107] | A | 200[108] | A | 300[109] | A | 200[110] | A | 300 | A | 300[111] | A | 200[112][113][114] | A | 800[115] | A | 1,400 |
| Kheybar | A | 8,000[116][117] | 7,000[118] | A | NC[119] | A | 4,000[120] | A | 8,000[8][121] | A | 2,000[122] | A | 6,000 | A | 6,000 | 3,000[123] | A | A | 8,000[124] | A | 5,000[125] | A | 5,000[126] | A | 2,000[127] | A | 6,000[128] | A | 9,000[129] | A | 5,643 |
| Malavan | 5,000[130] | A | 9,000[131] | A | 7,000[132] | 10,000[133] | A | 10,000[134] | A | 10,000[135] | A | 8,000[136] | A | 7,000[137] | A | A | 8,000[138] | A | 2,000[139] | A | A | 8,000[140] | A | 7,000[141] | A | 3,000[142] | A | 6,000[143] | A | 4,000[144] | 6,933 |
| Mes Rafsanjan | 2,000[145] | A | 1,000[146] | A | 3,000[147] | A | 2,000[148] | A | 2,000[149] | A | 1,000[150] | 500[151] | A | 1,000[152] | A | A | 1,000[153] | A | 5,000[154] | A | 500[155] | A | 300 | A | 2,000[156] | A | A | 10,000 | A | 300[157] | 2,107 |
| Nassaji | 7,000[158] | A | 10,000[159] | A | 10,000[160] | A | 8,000[161] | A | 6,000[162] | 10,000[163] | A | 7,000[164] | A | 15,000 | A | A | 10,000 | A | 5,000[165] | A | 12,000[166] | A | 15,000[167] | A | A | 15,000[168] | A | 2,000 | A | 4,500[169] | 9,100 |
| Persepolis | 8,000[170] | A | 15,000[171] | A | 9,000[172] | A | 9,000[173] | A | 6,000[174] | A | 6,000[175] | A | 3,000[176] | 8,500 | A | A | 50,000[177] | A | 7,000[178] | A | 50,000[179] | A | 30,000[180] | A | 10,000[181] | A | 20,000[182] | A | A | 20,000 | 16,767 |
| Sepahan | 9,000[183][184] | A | 4,000[185] | 10,000[186] | A | 4,000[187] | A | 4,000[188] | A | 5,000[189] | A | 45,000[190] | A | 13,000[191][192] | A | A | 10,000[193][194] | A | A | 31,000[195] | A | 16,000[196] | A | 15,000[197] | A | 10,000[198] | A | 15,000[199] | A | 25,000 | 14,400 |
| Shams Azar | 10,000 | A | A | 3,000[200] | A | 2,000[201] | A | 1,500[202] | A | 2,000[203] | A | 1,500[204] | A | 2,500[205] | A | A | 1,000[206] | 7,000[207] | A | 3,000[208] | A | 1,000[209] | A | 12,000 | A | 1,500[210] | A | 12,000 | A | 500[211] | 4,033 |
| Tractor | A | 90,000[1][2][3] | A | 40,000[212][213] | A | A | 25,000[214] | A | 10,000[215][216] | A | 5,000[217] | A | 7,000[218] | A | 30,000[219] | 10,000[220] | A | 50,000[221] | A | NC[222] | 70,000[223] | A | 40,000[224] | A | 90,000[4][5] | A | 80,000[225][226] | A | 70,000[227][228] | A | 44,071 |
| Zob Ahan | A | NC[229] | A | A | 6,000[230][231] | A | 1,000[232] | A | 200[233] | A | 300[234] | A | 500 | A | 200 | 9,000[235] | A | 500 | 2,000[236] | A | 1,000[237] | A | 6,000[238] | A | 500[239] | A | 300 | A | 250 | A | 1,982 |
| Total | 43,000 | 115,000 | 74,000 | 81,000 | 36,100 | 51,200 | 56,000 | 33,500 | 42,400 | 69,000 | 40,200 | 71,000 | 31,500 | 67,000 | 54,200 | 51,700 | 81,200 | 113,200 | 29,800 | 58,000 | 139,000 | 70,500 | 98,600 | 54,300 | 110,300 | 49,500 | 121,000 | 53,250 | 86,850 | 61,300 | 2,043,600 |
| Average | 5,375 | 19,167 | 9,250 | 10,125 | 5,157 | 6,400 | 7,000 | 4,188 | 5,300 | 8,625 | 5,025 | 8,875 | 4,500 | 8,375 | 7,743 | 6,463 | 10,150 | 14,150 | 3,725 | 8,286 | 17,375 | 8,813 | 12,325 | 6,788 | 13,788 | 6,188 | 15,125 | 6,656 | 10,856 | 7,663 | 8,733 |
Notes:
Updated to games played on 15 May 2025. Source: Iranleague.ir
Matches with spectator bans are not included in average attendances
Highest attendances
| Rank | Home team | Score | Away team | Attendance | Date | Week | Stadium |
|---|---|---|---|---|---|---|---|
| 1 | Tractor | 1–1 | Persepolis | 90,000[2] | 22 August 2024 | 2 | Sahand |
| Tractor | 2–1 | Esteghlal | 90,000[240] | 4 April 2025 | 25 | Sahand | |
| 3 | Tractor | 3–0 | Malavan | 80,000[225] | 18 April 2025 | 27 | Sahand |
| 4 | Tractor | 0–0 | Sepahan | 70,000[241] | 27 February 2025 | 21 | Sahand |
| Tractor | 3–3 | Nassaji | 70,000[242] | 8 May 2025 | 29 | Sahand | |
| 6 | Persepolis | 2–0 | Tractor | 50,000[243] | 26 January 2025 | 17 | Azadi |
| Tractor | 4–0 | Havadar | 50,000[244] | 1 February 2025 | 18 | Sahand | |
| Persepolis | 2–1 | Esteghlal | 50,000[245] | 27 February 2025 | 21 | Azadi | |
| 9 | Sepahan | 2–1 | Persepolis | 45,000[246] | 16 December 2024 | 12 | Naghsh-e Jahan |
| 10 | Tractor | 0–1 | Zob Ahan | 40,000[212] | 13 September 2024 | 4 | Sahand |
Notes:
Updated to games played on 15 May 2025. Source: Iranleague.ir
Additional information
Due to renovations at Azadi Stadium, Tehran's rivals Esteghlal and Persepolis had to play their home matches at other stadiums for several months. This led to a significant decline in their attendance.[247]
On 16 December 2024, the Iranian El Clásico[248] between Sepahan and Persepolis was played at the Naghsh-e Jahan Stadium without the presence of male fans. Instead, only female fans were allowed to attend the match. A total of 45,000 women attended the match and saw Sepahan win 2–1 at home.[249][250][251] FIFA President Gianni Infantino then expressed his gratitude for the high number of female spectators at a top match in the Iranian professional league.[252] The return match on 18 April 2025 was also played exclusively in front of female spectators.[253]
The match on matchday 17 between Nassaji and Aluminium Arak also took place in front of an exclusively female audience of 10,000.[254] 10,000 exclusively female spectators also attended the match between Persepolis and Esteghlal Khuzestan on matchday 25.[255][256] For the match between Chadormalou and Foolad on matchday 28, only women were allowed to purchase tickets, with the host offering discounted tickets.[257] Also, on the same match day, Nassaji played only in front of a female audience again.[258][259]
The match between Tractor and Esteghlal on matchday 25 was officially attended by 90,000 spectators in the overcrowded Yadegar-e Emam (Sahand) Stadium. Several thousand more fans gathered around the stadium to watch the game. Including the 90,000 spectators inside the stadium, a total of approximately 100,000 to 120,000 people were on or near the stadium area.[240][260][261] The large number of people around the game also attracted international attention.[262][263] Previously, 90,000 fans were present at the match against Persepolis on the second matchday.[2] On matchday 27, the stadium was once again overcrowded. 80,000 fans watched the match between Tractor and Malavan.[225][226]
Foolad also experienced significant overcrowding in one match. On Matchday 18, around 40,000 fans attended the home game against Persepolis in the 30,655-seat Shohadaye Foolad Khuzestan stadium.[84][264]