Johor DUN forecast

post-PRN 2026 viewrun #11156 seatsmajority 29
PRN Johor 2026 (11 July): BN landslide — 48 of 56 seats on 59.7% of the vote; PH 8; PN wiped out. Per-seat data from the MECo corpus. The next PRN is ~5 years out, so treat this as a composition view with maximal uncertainty bands.
P(gov ≥ 29)
98%
BN working majority
P(hung)
1%
no bloc reaches 29
P(gov ≥ 2/3)
88%
two-thirds line
Largest bloc
BN
most likely to hold most seats
Gov seats (BN)
46
median forecast
Toss-ups
7
top bloc below 60%

Seat forecast by most-likely winner

Majority line — 29 seatsMAJ 2956SEATSJOHOR-N.039 — BN 100%JOHOR-N.053 — BN 100%JOHOR-N.036 — BN 100%JOHOR-N.038 — BN 100%JOHOR-N.037 — BN 100%JOHOR-N.026 — BN 100%JOHOR-N.020 — BN 99%JOHOR-N.034 — BN 99%JOHOR-N.018 — BN 99%JOHOR-N.035 — BN 99%JOHOR-N.033 — BN 99%JOHOR-N.031 — BN 99%JOHOR-N.025 — BN 99%JOHOR-N.022 — BN 98%JOHOR-N.056 — BN 98%JOHOR-N.001 — BN 97%JOHOR-N.055 — BN 97%JOHOR-N.027 — BN 97%JOHOR-N.017 — BN 97%JOHOR-N.054 — BN 96%JOHOR-N.050 — BN 96%JOHOR-N.044 — BN 96%JOHOR-N.003 — BN 95%JOHOR-N.043 — BN 94%JOHOR-N.029 — BN 94%JOHOR-N.030 — BN 94%JOHOR-N.007 — BN 93%JOHOR-N.047 — BN 93%JOHOR-N.016 — BN 93%JOHOR-N.040 — BN 92%JOHOR-N.009 — BN 91%JOHOR-N.011 — BN 90%JOHOR-N.024 — BN 88%JOHOR-N.006 — BN 88%JOHOR-N.008 — BN 87%JOHOR-N.005 — BN 86%JOHOR-N.021 — BN 84%JOHOR-N.049 — BN 84%JOHOR-N.019 — BN 82%JOHOR-N.014 — BN 80%JOHOR-N.032 — BN 75%JOHOR-N.004 — BN 74%JOHOR-N.010 — BN 70%JOHOR-N.042 — BN 66%JOHOR-N.002 — BN 55%JOHOR-N.015 — BN 53%JOHOR-N.046 — BN 52%JOHOR-N.051 — BN 51%JOHOR-N.012 — PH 89%JOHOR-N.048 — PH 84%JOHOR-N.023 — PH 68%JOHOR-N.028 — PH 68%JOHOR-N.052 — PH 64%JOHOR-N.041 — PH 56%JOHOR-N.045 — PH 52%JOHOR-N.013 — PH 49%GOVERNMENT · 48OPPOSITION · 8
BN48PH8toss-up (7, <60%)

Seats by bloc (median, 80% interval)

Pakatan Harapan
9[3–18]▲1
Barisan Nasionalgov
46[37–53]▼2
Gabungan Parti Sarawak
0[0–0]
Gabungan Rakyat Sabah
0[0–0]
Warisan
0[0–0]
Others / Independents
0[0–0]
Perikatan Nasional
0[0–2]

Who can form the government?

Probability each coalition reaches 29 seats across 10,000 simulated outcomes — arithmetic on the seat maps, not an endorsement.

BN + PH100%
BN98%

Constituency map — forecast lean (click a seat)

JOHOR-N.001 N.01 Buloh Kasap — 97%JOHOR-N.002 N.02 Jementah — 55%JOHOR-N.003 N.03 Pemanis — 95%JOHOR-N.004 N.04 Kemelah — 74%JOHOR-N.005 N.05 Tenang — 86%JOHOR-N.006 N.06 Bekok — 88%JOHOR-N.007 N.07 Bukit Kepong — 93%JOHOR-N.008 N.08 Bukit Pasir — 87%JOHOR-N.009 N.09 Gambir — 91%JOHOR-N.010 N.10 Tangkak — 70%JOHOR-N.011 N.11 Serom — 90%JOHOR-N.012 N.12 Bentayan — 89%JOHOR-N.013 N.13 Simpang Jeram — 49%JOHOR-N.014 N.14 Bukit Naning — 80%JOHOR-N.015 N.15 Maharani — 53%JOHOR-N.016 N.16 Sungai Balang — 93%JOHOR-N.017 N.17 Semerah — 97%JOHOR-N.018 N.18 Sri Medan — 99%JOHOR-N.019 N.19 Yong Peng — 82%JOHOR-N.020 N.20 Semarang — 99%JOHOR-N.021 N.21 Parit Yaani — 84%JOHOR-N.022 N.22 Parit Raja — 98%JOHOR-N.023 N.23 Penggaram — 68%JOHOR-N.024 N.24 Senggarang — 88%JOHOR-N.025 N.25 Rengit — 99%JOHOR-N.026 N.26 Machap — 100%JOHOR-N.027 N.27 Layang-Layang — 97%JOHOR-N.028 N.28 Mengkibol — 68%JOHOR-N.029 N.29 Mahkota — 94%JOHOR-N.030 N.30 Paloh — 94%JOHOR-N.031 N.31 Kahang — 99%JOHOR-N.032 N.32 Endau — 75%JOHOR-N.033 N.33 Tenggaroh — 99%JOHOR-N.034 N.34 Panti — 99%JOHOR-N.035 N.35 Pasir Raja — 99%JOHOR-N.036 N.36 Sedili — 100%JOHOR-N.037 N.37 Johor Lama — 100%JOHOR-N.038 N.38 Penawar — 100%JOHOR-N.039 N.39 Tanjung Surat — 100%JOHOR-N.040 N.40 Tiram — 92%JOHOR-N.041 N.41 Puteri Wangsa — 56%JOHOR-N.042 N.42 Johor Jaya — 66%JOHOR-N.043 N.43 Permas — 94%JOHOR-N.044 N.44 Larkin — 96%JOHOR-N.045 N.45 Stulang — 52%JOHOR-N.046 N.46 Perling — 52%JOHOR-N.047 N.47 Kempas — 93%JOHOR-N.048 N.48 Skudai — 84%JOHOR-N.049 N.49 Kota Iskandar — 84%JOHOR-N.050 N.50 Bukit Permai — 96%JOHOR-N.051 N.51 Bukit Batu — 51%JOHOR-N.052 N.52 Senai — 64%JOHOR-N.053 N.53 Benut — 100%JOHOR-N.054 N.54 Pulai Sebatang — 96%JOHOR-N.055 N.55 Pekan Nanas — 97%JOHOR-N.056 N.56 Kukup — 98%Constituency boundaries (MECo-maps) — faded seats are toss-ups (top bloc < 60%)