All 25 Government Seats inside six points lost, and still 9 clear of the Majority line.
The Government Coalition is projected 34 seats clear of a Majority. 25 of the Seats it holds are inside six points; losing every one would still hold a Majority, leaving it 9 clear.
Seats run from the safest Government Seat at the left to the safest Non-government Seat at the right. Hollow rings are Seats inside six points — too close to call. Each is where a uniform Swing puts that Seat against its GE15 result, not a judgement about the constituency.
Seats stacked by Coalition, Government Coalitions first. The line marks the 112 needed for a Majority — which Seats are too close to call is in the ledger below.
Today, the count crosses 112 at Sri Gading (Johor). A uniform swing of 8.3 points would move the Majority line to the other side of it.
This states a position in a sort, not a claim about Sri Gading itself — the same arithmetic applied to any Seat at this position in the ordering.
| Seat | State | Coalition | Margin (points) | Certainty |
|---|---|---|---|---|
| Igan | Sarawak | GPS | 88.9 | Safe |
| Kepong | W.P. Kuala Lumpur | PH | 84.4 | Safe |
| Santubong | Sarawak | GPS | 77.1 | Safe |
| Seputeh | W.P. Kuala Lumpur | PH | 76.6 | Safe |
| Tanjong | Pulau Pinang | PH | 76.0 | Safe |
| Cheras | W.P. Kuala Lumpur | PH | 75.9 | Safe |
| Tanjong Manis | Sarawak | GPS | 75.4 | Safe |
| Bukit Gelugor | Pulau Pinang | PH | 74.5 | Safe |
| Bukit Bintang | W.P. Kuala Lumpur | PH | 73.3 | Safe |
| Bagan | Pulau Pinang | PH | 73.1 | Safe |
| Damansara | Selangor | PH | 72.9 | Safe |
| Ipoh Barat | Perak | PH | 71.9 | Safe |
| Batu Gajah | Perak | PH | 71.9 | Safe |
| Segambut | W.P. Kuala Lumpur | PH | 69.9 | Safe |
| Bukit Bendera | Pulau Pinang | PH | 69.8 | Safe |
| Batang Sadong | Sarawak | GPS | 68.7 | Safe |
| Subang | Selangor | PH | 66.2 | Safe |
| Bukit Mertajam | Pulau Pinang | PH | 63.7 | Safe |
| Petra Jaya | Sarawak | GPS | 62.0 | Safe |
| Batu Kawan | Pulau Pinang | PH | 60.1 | Safe |
| Mukah | Sarawak | GPS | 58.6 | Safe |
| Kapit | Sarawak | GPS | 58.5 | Safe |
| Klang | Selangor | PH | 57.4 | Safe |
| Ipoh Timor | Perak | PH | 56.3 | Safe |
| Jelutong | Pulau Pinang | PH | 55.9 | Safe |
| Kota Samarahan | Sarawak | GPS | 55.5 | Safe |
| Batang Lupar | Sarawak | GPS | 55.5 | Safe |
| Kota Kinabalu | Sabah | PH | 53.3 | Safe |
| Limbang | Sarawak | GPS | 52.6 | Safe |
| Rasah | Negeri Sembilan | PH | 50.9 | Safe |
| Puchong | Selangor | PH | 47.0 | Safe |
| Beruas | Perak | PH | 46.1 | Safe |
| Bandar Kuching | Sarawak | PH | 44.7 | Safe |
| Betong | Sarawak | GPS | 43.3 | Safe |
| Pandan | Selangor | PH | 42.8 | Safe |
| Kota Tinggi | Johor | BN | 42.8 | Safe |
| Serian | Sarawak | GPS | 42.3 | Safe |
| Sembrong | Johor | BN | 41.6 | Safe |
| Bayan Baru | Pulau Pinang | PH | 39.9 | Safe |
| Kota Melaka | Melaka | PH | 38.6 | Safe |
| Kota Raja | Selangor | PH | 38.4 | Safe |
| Ranau | Sabah | GRS | 38.2 | Safe |
| Pengerang | Johor | BN | 37.0 | Safe |
| Sibuti | Sarawak | GPS | 36.5 | Safe |
| Petaling Jaya | Selangor | PH | 35.5 | Safe |
| Sandakan | Sabah | PH | 34.8 | Safe |
| Hulu Rajang | Sarawak | GPS | 33.9 | Safe |
| Bintulu | Sarawak | GPS | 33.8 | Safe |
| Lawas | Sarawak | GPS | 31.6 | Safe |
| Taiping | Perak | PH | 30.9 | Safe |
| Tenggara | Johor | BN | 30.8 | Safe |
| Bera | Pahang | BN | 30.7 | Safe |
| Libaran | Sabah | BN | 30.5 | Safe |
| Bangi | Selangor | PH | 29.3 | Safe |
| Ampang | Selangor | PH | 29.2 | Safe |
| Papar | Sabah | GRS | 28.5 | Safe |
| Parit Sulong | Johor | BN | 28.2 | Safe |
| Port Dickson | Negeri Sembilan | PH | 28.1 | Safe |
| Puncak Borneo | Sarawak | GPS | 27.8 | Safe |
| Pontian | Johor | BN | 27.8 | Safe |
| Penampang | Sabah | PH | 27.4 | Safe |
| Gopeng | Perak | PH | 26.9 | Safe |
| Baram | Sarawak | GPS | 26.4 | Safe |
| Batu | W.P. Kuala Lumpur | PH | 26.2 | Safe |
| Seremban | Negeri Sembilan | PH | 25.7 | Safe |
| Tanjung Piai | Johor | BN | 24.3 | Safe |
| Teluk Intan | Perak | PH | 24.3 | Safe |
| Wangsa Maju | W.P. Kuala Lumpur | PH | 22.9 | Safe |
| Kampar | Perak | PH | 22.7 | Safe |
| Iskandar Puteri | Johor | PH | 22.1 | Safe |
| Ayer Hitam | Johor | BN | 21.2 | Safe |
| Nibong Tebal | Pulau Pinang | PH | 21.1 | Safe |
| Lanang | Sarawak | PH | 20.7 | Safe |
| Rembau | Negeri Sembilan | BN | 20.6 | Safe |
| Jelebu | Negeri Sembilan | BN | 20.3 | Safe |
| Mersing | Johor | BN | 19.9 | Safe |
| Lipis | Pahang | BN | 19.6 | Safe |
| Simpang Renggam | Johor | BN | 19.0 | Safe |
| Kalabakan | Sabah | BN | 18.9 | Safe |
| Selangau | Sarawak | GPS | 18.9 | Safe |
| Batu Sapi | Sabah | GRS | 18.5 | Safe |
| Tebrau | Johor | PH | 17.0 | Safe |
| Selayang | Selangor | PH | 16.8 | Safe |
| Setiawangsa | W.P. Kuala Lumpur | PH | 16.7 | Safe |
| Pensiangan | Sabah | BN | 16.7 | Safe |
| Kulai | Johor | PH | 16.6 | Safe |
| Lembah Pantai | W.P. Kuala Lumpur | PH | 16.5 | Safe |
| Sipitang | Sabah | GRS | 16.4 | Safe |
| Mas Gading | Sarawak | PH | 16.3 | Safe |
| Keningau | Sabah | GRS | 16.3 | Safe |
| Cameron Highlands | Pahang | BN | 16.0 | Safe |
| Kuala Pilah | Negeri Sembilan | BN | 15.6 | Safe |
| Kinabatangan | Sabah | BN | 15.3 | Safe |
| Shah Alam | Selangor | PH | 13.7 | Safe |
| Tapah | Perak | BN | 13.7 | Safe |
| Pulai | Johor | PH | 13.6 | Safe |
| Kluang | Johor | PH | 12.9 | Safe |
| Sri Aman | Sarawak | GPS | 12.8 | Safe |
| Pekan | Pahang | BN | 11.9 | Likely |
| Sarikei | Sarawak | GPS | 11.7 | Likely |
| Bakri | Johor | PH | 11.6 | Likely |
| Sekijang | Johor | BN | 11.2 | Likely |
| Hulu Langat | Selangor | PH | 11.2 | Likely |
| Bandar Tun Razak | W.P. Kuala Lumpur | PH | 10.9 | Likely |
| Sibu | Sarawak | PH | 10.5 | Likely |
| Kimanis | Sabah | BN | 10.5 | Likely |
| Jempol | Negeri Sembilan | BN | 10.4 | Likely |
| Titiwangsa | W.P. Kuala Lumpur | BN | 9.8 | Likely |
| Beaufort | Sabah | BN | 9.3 | Likely |
| Tawau | Sabah | GRS | 9.0 | Likely |
| Stampin | Sarawak | PH | 8.5 | Likely |
| Sri Gading | Johor | BN | 8.3 | Likely |
| Sepanggar | Sabah | PH | 8.1 | Likely |
| Pasir Gudang | Johor | PH | 8.0 | Likely |
| Gombak | Selangor | PH | 8.0 | Likely |
| Hang Tuah Jaya | Melaka | PH | 7.3 | Likely |
| Sepang | Selangor | PH | 6.7 | Likely |
| Labis | Johor | BN | 6.7 | Likely |
| Miri | Sarawak | PH | 6.6 | Likely |
| Raub | Pahang | PH | 6.5 | Likely |
| Batu Pahat | Johor | PH | 6.3 | Likely |
| Pagoh | Johor | BN | 5.4 | Too close |
| Lenggong | Perak | BN | 5.4 | Too close |
| Paya Besar | Pahang | BN | 4.3 | Too close |
| Tampin | Negeri Sembilan | BN | 4.2 | Too close |
| Tanjong Malim | Perak | PH | 4.1 | Too close |
| Segamat | Johor | BN | 3.6 | Too close |
| Tambun | Perak | PH | 3.2 | Too close |
| Bagan Datuk | Perak | BN | 2.9 | Too close |
| Muar | Johor | BN | 2.8 | Too close |
| Kanowit | Sarawak | GPS | 2.7 | Too close |
| Balik Pulau | Pulau Pinang | PH | 2.6 | Too close |
| Ledang | Johor | BN | 2.6 | Too close |
| Putatan | Sabah | BN | 2.3 | Too close |
| Johor Bahru | Johor | PH | 2.2 | Too close |
| Gua Musang | Kelantan | BN | 1.8 | Too close |
| Jasin | Melaka | BN | 1.7 | Too close |
| Sungai Siput | Perak | PH | 1.6 | Too close |
| Lumut | Perak | BN | 1.6 | Too close |
| Tuaran | Sabah | GRS | 1.0 | Too close |
| Sungai Petani | Kedah | PH | 1.0 | Too close |
| Bentong | Pahang | BN | 1.0 | Too close |
| Kuala Selangor | Selangor | BN | 0.8 | Too close |
| Alor Gajah | Melaka | BN | 0.8 | Too close |
| Lubok Antu | Sarawak | GPS | 0.5 | Too close |
| Sungai Buloh | Selangor | PH | 0.1 | Too close |
| Kuala Krau | Pahang | PN | 0.1 | Too close |
| Rompin | Pahang | PN | 0.1 | Too close |
| Labuan | W.P. Labuan | PN | 0.4 | Too close |
| Hulu Selangor | Selangor | PN | 1.2 | Too close |
| Kuala Langat | Selangor | PN | 1.4 | Too close |
| Gerik | Perak | PN | 2.0 | Too close |
| Kepala Batas | Pulau Pinang | PN | 2.1 | Too close |
| Tanjong Karang | Selangor | PN | 2.2 | Too close |
| Maran | Pahang | PN | 2.4 | Too close |
| Beluran | Sabah | PN | 3.5 | Too close |
| Parit | Perak | PN | 3.8 | Too close |
| Kuantan | Pahang | PN | 4.2 | Too close |
| Putrajaya | W.P. Putrajaya | PN | 4.3 | Too close |
| Kudat | Sabah | BEBAS | 4.4 | Too close |
| Tenom | Sabah | BEBAS | 4.6 | Too close |
| Temerloh | Pahang | PN | 5.0 | Too close |
| Sungai Besar | Selangor | PN | 5.4 | Too close |
| Julau | Sarawak | PBM | 5.9 | Too close |
| Masjid Tanah | Melaka | PN | 6.1 | Likely |
| Permatang Pauh | Pulau Pinang | PN | 6.1 | Likely |
| Pasir Salak | Perak | PN | 6.9 | Likely |
| Lahad Datu | Sabah | WARISAN | 7.0 | Likely |
| Kapar | Selangor | PN | 7.5 | Likely |
| Kota Belud | Sabah | WARISAN | 7.9 | Likely |
| Kuala Kangsar | Perak | PN | 8.1 | Likely |
| Padang Rengas | Perak | PN | 8.3 | Likely |
| Indera Mahkota | Pahang | PN | 9.1 | Likely |
| Tangga Batu | Melaka | PN | 9.7 | Likely |
| Jerantut | Pahang | PN | 10.3 | Likely |
| Parit Buntar | Perak | PN | 10.3 | Likely |
| Sabak Bernam | Selangor | PN | 10.5 | Likely |
| Alor Setar | Kedah | PN | 13.1 | Safe |
| Machang | Kelantan | PN | 13.8 | Safe |
| Kangar | Perlis | PN | 14.6 | Safe |
| Bukit Gantang | Perak | PN | 16.1 | Safe |
| Kota Marudu | Sabah | KDM | 16.4 | Safe |
| Tasek Gelugor | Pulau Pinang | PN | 16.6 | Safe |
| Padang Serai | Kedah | PN | 18.1 | Safe |
| Kulim-Bandar Baharu | Kedah | PN | 18.9 | Safe |
| Hulu Terengganu | Terengganu | PN | 20.2 | Safe |
| Besut | Terengganu | PN | 20.3 | Safe |
| Larut | Perak | PN | 20.8 | Safe |
| Setiu | Terengganu | PN | 20.8 | Safe |
| Merbok | Kedah | PN | 20.9 | Safe |
| Padang Terap | Kedah | PN | 20.9 | Safe |
| Kemaman | Terengganu | PN | 22.5 | Safe |
| Baling | Kedah | PN | 25.2 | Safe |
| Padang Besar | Perlis | PN | 26.2 | Safe |
| Langkawi | Kedah | PN | 27.0 | Safe |
| Jeli | Kelantan | PN | 27.6 | Safe |
| Saratok | Sarawak | PN | 28.0 | Safe |
| Bagan Serai | Perak | PN | 28.2 | Safe |
| Kuala Kedah | Kedah | PN | 28.5 | Safe |
| Kota Bharu | Kelantan | PN | 29.5 | Safe |
| Tumpat | Kelantan | PN | 31.9 | Safe |
| Bachok | Kelantan | PN | 32.1 | Safe |
| Kuala Nerus | Terengganu | PN | 32.6 | Safe |
| Rantau Panjang | Kelantan | PN | 32.8 | Safe |
| Pasir Puteh | Kelantan | PN | 34.7 | Safe |
| Ketereh | Kelantan | PN | 35.5 | Safe |
| Dungun | Terengganu | PN | 36.1 | Safe |
| Pokok Sena | Kedah | PN | 36.8 | Safe |
| Marang | Terengganu | PN | 37.0 | Safe |
| Kuala Krai | Kelantan | PN | 37.7 | Safe |
| Jerlun | Kedah | PN | 38.0 | Safe |
| Kubang Pasu | Kedah | PN | 38.5 | Safe |
| Jerai | Kedah | PN | 39.1 | Safe |
| Pendang | Kedah | PN | 40.2 | Safe |
| Kuala Terengganu | Terengganu | PN | 41.2 | Safe |
| Sik | Kedah | PN | 41.4 | Safe |
| Pasir Mas | Kelantan | PN | 46.1 | Safe |
| Pengkalan Chepa | Kelantan | PN | 48.2 | Safe |
| Arau | Perlis | PN | 48.6 | Safe |
| Kubang Kerian | Kelantan | PN | 49.2 | Safe |
| Semporna | Sabah | WARISAN | 54.2 | Safe |
| Tanah Merah | Kelantan | PN | 63.2 | Safe |
| Coalition | Projected | GE15 | Swing | Too close |
|---|---|---|---|---|
| Pakatan Harapan PH | 72 | 81 | −9 | 7 |
| Barisan Nasional BN | 44 | 30 | +14 | 15 |
| Gabungan Parti Sarawak GPS | 23 | 23 | ±0 | 2 |
| Gabungan Rakyat Sabah GRS | 7 | 6 | +1 | 1 |
| Government total | 146 | — | — | 25 |
| Perikatan Nasional PN | 69 | 74 | −5 | 15 |
| Parti Warisan WARISAN | 3 | 3 | ±0 | 0 |
| Independents BEBAS | 2 | 2 | ±0 | 2 |
| Parti Kesejahteraan Demokratik Masyarakat KDM | 1 | 1 | ±0 | 0 |
| Parti Bangsa Malaysia PBM | 1 | 1 | ±0 | 1 |
| Parti Muda MUDA | 0 | 1 | −1 | 0 |
All 25 Government Seats inside six points lost, and still 9 clear of the Majority line.
The 18 Seats inside six points on the other side fall to the Government Coalition instead.
Government Seats that would have to change hands before the Majority goes.
Seats moved by a state election result rather than by Sentiment alone — Johor (26). Every other state is untouched by it.
The same Projection, recomputed at other values of an unfitted model constant — not a range of likely outcomes.
| Sentiment sensitivity | Government Coalition total |
|---|---|
| 0.05 | 146 |
| 0.10 | 146 |
| 0.20 | 150 |
The Swing Model moves each state uniformly (ADR 0001/0003) — this is that structure, not a claim about any one Seat, and never drawn as a map (a choropleth would let a state's land area dominate its actual seat weight).
| State | Seats | GE15 | Projected | Swing | Signal |
|---|---|---|---|---|---|
| Johor | 26 | BN 9 · MUDA 1 · PH 14 · PN 2 | BN 17 · PH 9 | BN +13.0 · PH −1.8 · PN −11.8 | State result |
| Kedah | 15 | PH 1 · PN 14 | PH 1 · PN 14 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Kelantan | 14 | PN 14 | BN 1 · PN 13 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Melaka | 6 | PH 3 · PN 3 | BN 2 · PH 2 · PN 2 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Negeri Sembilan | 8 | BN 5 · PH 3 | BN 5 · PH 3 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Pahang | 14 | BN 5 · PH 2 · PN 7 | BN 6 · PH 1 · PN 7 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Perak | 24 | BN 3 · PH 11 · PN 10 | BN 4 · PH 11 · PN 9 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Perlis | 3 | PN 3 | PN 3 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Pulau Pinang | 13 | PH 10 · PN 3 | PH 10 · PN 3 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Sabah | 25 | BEBAS 2 · BN 7 · GRS 6 · KDM 1 · PH 5 · PN 1 · WARISAN 3 | BEBAS 2 · BN 7 · GRS 7 · KDM 1 · PH 4 · PN 1 · WARISAN 3 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Sarawak | 31 | GPS 23 · PBM 1 · PH 6 · PN 1 | GPS 23 · PBM 1 · PH 6 · PN 1 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Selangor | 22 | PH 16 · PN 6 | BN 1 · PH 15 · PN 6 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| Terengganu | 8 | PN 8 | PN 8 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| W.P. Kuala Lumpur | 11 | BN 1 · PH 10 | BN 1 · PH 10 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| W.P. Labuan | 1 | PN 1 | PN 1 | BN +0.6 · PH −1.4 · PN −1.5 | — |
| W.P. Putrajaya | 1 | PN 1 | PN 1 | BN +0.6 · PH −1.4 · PN −1.5 | — |