| Season | 1947–48 |
|---|---|
| Champions | Dinamo Zagreb (1st title) |
| Relegated | Vardar Spartak Sarajevo |
| Matches played | 90 |
| Goals scored | 286 (3.18 per match) |
| Top goalscorer | Franjo Wölfl (22) |
← 1946–47 1948–49 → | |
| Team | Home city | Republic | Stadium | Position in 1946–47 |
|---|---|---|---|---|
| Crvena zvezda | Belgrade | 3rd | ||
| Dinamo Zagreb | Zagreb | 2nd | ||
| Hajduk Split | Split | Stadion Stari plac | 4th | |
| Lokomotiva | Zagreb | 7th | ||
| Metalac | Belgrade | 5th | ||
| Partizan | Belgrade | 1st | ||
| Ponziana | Trieste | | 11th | |
| Sarajevo | Sarajevo | Stadion Koševo | ||
| Spartak | Subotica | 6th | ||
| Vardar [A] [B] | Skopje | Gradski stadion Skopje | ||
| Pos | Team | Pld | W | D | L | GF | GA | GR | Pts | Qualification or relegation |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Dinamo Zagreb (C) | 18 | 14 | 1 | 3 | 56 | 20 | 2.800 | 29 | |
| 2 | Hajduk Split | 18 | 11 | 2 | 5 | 40 | 15 | 2.667 | 24 | |
| 3 | Partizan | 18 | 10 | 4 | 4 | 46 | 22 | 2.091 | 24 | |
| 4 | Lokomotiva | 18 | 7 | 5 | 6 | 21 | 18 | 1.167 | 19 | |
| 5 | Red Star Belgrade | 18 | 5 | 6 | 7 | 24 | 25 | 0.960 | 16 | |
| 6 | Metalac Belgrade | 18 | 4 | 8 | 6 | 16 | 24 | 0.667 | 16 | |
| 7 | Ponziana | 18 | 6 | 4 | 8 | 21 | 45 | 0.467 | 16 | |
| 8 | Vardar (R) | 18 | 5 | 4 | 9 | 22 | 39 | 0.564 | 14 | Qualification for relegation play-offs [a] |
| 9 | Spartak Subotica (R) | 18 | 5 | 1 | 12 | 21 | 38 | 0.553 | 11 | Relegation to Yugoslav Second League |
| 10 | Sarajevo (R) | 18 | 2 | 7 | 9 | 19 | 40 | 0.475 | 11 |
Champions:
players (league matches/league goals):
1 og
| Rank | Player | Club | Goals |
|---|---|---|---|
| 1 | | Dinamo Zagreb | 22 |
| 2 | | Partizan | 16 |
| 3 | | Hajduk Split | 14 |
| 4 | | Dinamo Zagreb | 12 |
| 5 | | Hajduk Split | 8 |
| 6 | | Partizan | 7 |
| Home team | Score | Away team |
|---|---|---|
| Partizan Beograd | 3 - 2 | Proleter Osijek |
| NK Zagreb | 3 - 4 | Dinamo Zagreb |
| Hajduk Split | 0 - 2 | Budućnost Titograd |
| Metalac Beograd | 1 - 1 (coin flip) | Metalac Zagreb |
| Napredak Krusevac | (coin flip) 1 - 1 | Poncijana Trieste |
| Sloga Novi Sad | 4 - 8 (aet) | Naša Krila Zemun |
| Sarajevo | 0 - 0 (coin flip) | Lokomotiva Zagreb |
| Crvena Zvezda Beograd | 5 - 1 | Spartak Subotica |
Crvena Zvezda Beograd x - x X
Partizan Beograd 2 - 0 Lokomotiva Zagreb
X x - x X
Dinamo Zagreb x - x X
Crvena Zvezda Beograd x - x X
Partizan Beograd 3 - 3 Dinamo Zagreb
Partizan 0 - 3 Crvena Zvezda
Stadium: Stadion Crvene Zvezde
Attendance: 30,000
Referee: Lemesic (Split)
Partizan: Franjo Šoštarić, Vladimir Firm, M.Petrovic, Zlatko Čajkovski, Milorad Jovanović, Lajčo Jakovetić, Prvoslav Mihajlović, Božidar Drenovac, Stjepan Bobek, Aleksandar Atanacković, Kiril Simonovski
Crvena zvezda: Srđan Mrkušić, Branko Stanković, Milenko Drakulić, Dimitrije Tadić, Milivoje Đurđević, Predrag Đajić, Cokic, Rajko Mitić, Kosta Tomašević, Bela Palfi, Branislav Vukosavljević