Across 144 districts, Malaysia runs from 82.9 to 182.4 men per 100 women aged 20–39. 68 sit at 115 or above and 7 at 95 or below. Summed across every district on this page the figure is 117.2; the published national figure is 116.6 (different source and vintage).
Most women-heavy districts
Lowest men-per-100-women, 20–39. Showing 30 of 144 with at least 300 people in the band.
| District | State | Men per 100 women | Population |
|---|---|---|---|
| W.P. Putrajaya | W.P. Putrajaya | 82.9 | 109k |
| Samarahan | Sarawak | 87.8 | 128k |
| Julau | Sarawak | 90 | 15k |
| Song | Sarawak | 91.7 | 10k |
| Seberang Perai Selatan | Pulau Pinang | 93.7 | 184k |
| Barat Daya | Pulau Pinang | 93.8 | 238k |
| Kuala Penyu | Sabah | 94.9 | 24k |
| Kota Belud | Sabah | 95.3 | 108k |
| Tambunan | Sabah | 96.3 | 32k |
| Tumpat | Kelantan | 96.4 | 180k |
| Tuaran | Sabah | 97 | 136k |
| Saratok | Sarawak | 97 | 24k |
| Bachok | Kelantan | 98.3 | 157k |
| Kubang Pasu | Kedah | 99.2 | 238k |
| Kapit | Sarawak | 100 | 36k |
| Maradong | Sarawak | 100 | 20k |
| Sarikei | Sarawak | 100 | 44k |
| Pasir Mas | Kelantan | 100.6 | 230k |
| Kudat | Sabah | 100.6 | 87k |
| Ranau | Sabah | 100.7 | 85k |
| Tenom | Sabah | 101.2 | 51k |
| Keningau | Sabah | 101.5 | 151k |
| Beaufort | Sabah | 101.6 | 76k |
| Kota Setar | Kedah | 101.8 | 374k |
| Putatan | Sabah | 101.8 | 69k |
| Yan | Kedah | 102.6 | 73k |
| Kota Marudu | Sabah | 102.6 | 70k |
| Machang | Kelantan | 102.7 | 110k |
| W.P. Labuan | W.P. Labuan | 102.9 | 96k |
| Pasir Puteh | Kelantan | 103 | 136k |
Most men-heavy districts
Highest men-per-100-women, 20–39. Showing 30 of 144 with at least 300 people in the band. Units housing an institution (prison, barracks, camp) read high here; the figure is correct, the dating signal is not.
| District | State | Men per 100 women | Population |
|---|---|---|---|
| Cameron Highlands | Pahang | 182.4 | 39k |
| Bentong | Pahang | 168.2 | 117k |
| Belaga | Sarawak | 160 | 22k |
| Hilir Perak | Perak | 150.8 | 142k |
| Muar | Johor | 150.7 | 315k |
| Kluang | Johor | 147.7 | 324k |
| Pekan | Pahang | 147.5 | 121k |
| Rompin | Pahang | 146.4 | 98k |
| Tampin | Negeri Sembilan | 145.9 | 88k |
| Manjung | Perak | 145.1 | 247k |
| Matu | Sarawak | 143.5 | 16k |
| Tatau | Sarawak | 139.6 | 32k |
| Bera | Pahang | 139.1 | 98k |
| Hulu Terengganu | Terengganu | 138.3 | 70k |
| Jasin | Melaka | 138.1 | 152k |
| Jelebu | Negeri Sembilan | 137.3 | 46k |
| Daro | Sarawak | 137 | 20k |
| Pokok Sena | Kedah | 135.7 | 50k |
| Kulai | Johor | 134.2 | 329k |
| Jerantut | Pahang | 133.9 | 96k |
| Pontian | Johor | 132.7 | 173k |
| Gua Musang | Kelantan | 132.2 | 102k |
| Batang Padang | Perak | 131 | 124k |
| Klang | Selangor | 130.3 | 1.1M |
| Lundu | Sarawak | 130.2 | 33k |
| Raub | Pahang | 130.1 | 96k |
| Lipis | Pahang | 129.9 | 97k |
| Kinabatangan | Sabah | 128.2 | 143k |
| Bintulu | Sarawak | 127.8 | 178k |
| Kota Tinggi | Johor | 127 | 223k |
By state
Every state in Malaysia, aggregated from the districts above.
| State | Men per 100 women, 20–39 | Population | Districts |
|---|---|---|---|
| W.P. Putrajaya | 82.9 | 109k | 1 |
| W.P. Labuan | 102.9 | 96k | 1 |
| Kelantan | 104.2 | 1.8M | 10 |
| Perlis | 104.4 | 285k | 1 |
| Pulau Pinang | 106.6 | 1.7M | 5 |
| Sabah | 107.9 | 3.3M | 25 |
| Sarawak | 111 | 2.2M | 31 |
| Kedah | 111.7 | 2.1M | 12 |
| Terengganu | 114 | 1.0M | 7 |
| Negeri Sembilan | 116.9 | 1.2M | 7 |
| Selangor | 120.1 | 7.0M | 9 |
| W.P. Kuala Lumpur | 120.6 | 2.0M | 1 |
| Melaka | 125.1 | 999k | 3 |
| Perak | 126.1 | 2.3M | 10 |
| Pahang | 127 | 1.6M | 11 |
| Johor | 129.4 | 4.0M | 10 |
Census age-by-sex counts. Data updated July 27, 2026. A ratio is a supply number, not a measure of dating success.
Need the full Malaysia model?
The deep-dive adds the interactive district map, every row sortable, the dating-pool model, and the research workspace.
Unlock Malaysia deep-dive