Reported crime by district
In 2023 Malaysia recorded 1.57 reported crimes per 1,000 residents — 52,444 cases across 33 million people. That is down from 2.03 in 2020. Figures are per resident, so a district's size does not decide its place in the table.
2023 is the latest year PDRM has published. These figures arrive a year or more behind, so they describe that year rather than this one.
By district, 2023
Every figure is reported crime per 1,000 residents. Sort by any column. Where two or more districts are shown together it is because police report them as one — see below.
What this measures, and what it does not
Reported crime is not all crime. These are cases that reached the police. Reporting rates differ by place and by type of crime, so a low figure can mean little crime or little reporting, and the table cannot tell the two apart.
- Per resident, not per visitor. Crime against tourists, shoppers and commuters is counted where it happens, but only residents are in the denominator. Langkawi and the city centres read high partly for that reason.
- Not a safety score for a street. A district is a large area. Its rate says nothing about the difference between one taman and the next.
- Violent is PDRM's “assault” category — murder, rape, robbery and causing injury. Vehicle theft counts cars and lorries; PDRM does not publish motorcycles separately.
- Two older years disagree with themselves. In 2020 and 2021 PDRM's Selangor districts add up to more than PDRM's own Selangor total, by 320 and 369 cases. The district figures are used.2023 reconciles exactly.
Why some districts are shown together
Police report by police district, which is not the same area as an administrative district. Kuala Lumpur is one district and five police districts; Johor Bahru is five. Those are simply added up. The harder case runs the other way: a district carved out recently often has no police district of its own and is policed from its parent's, so its crime sits inside its neighbour's figure while its residents do not. A rate is only true when both counts cover the same area, so these are reported together:
- Kota Setar & Pokok Sena — Pokok Sena was carved from Kota Setar and has no IPD in 2016–2023, so its crime is inside Kota Setar's figure. Inferred from that history rather than confirmed in a directory.
- Bentong & Daerah Kecil Genting — Genting is a sub-district of Bentong with no IPD or population row of its own.
- Rompin & Daerah Kecil Muadzam Shah — Muadzam Shah is a sub-district of Rompin with no IPD or population row of its own.
- Hilir Perak & Bagan Datuk — Bagan Datuk was carved from Hilir Perak in 2016 and has no IPD in this data.
- Beaufort & Kuala Penyu — Balai Polis Kuala Penyu sits under IPD Beaufort.
- Keningau & Tambunan & Pensiangan — Balai Polis Tambunan sits under IPD Keningau. Pensiangan, seated at Nabawan, was carved from Keningau and has no IPD.
- Kota Marudu & Pitas — Pitas was carved from Kota Marudu and has no IPD.
- Penampang & Putatan — PDRM's directory lists the Putatan post under IPD Penampang.
- Bahagian Sarikei & Bahagian Sarikie — Division. The register also files 47 sales under the misspelling Sarikie; both point here. Meradong and Maradong are the police and DOSM spellings of one district.
- Petaling & Hulu Langat — Reported together because IPD Serdang straddles both districts — Seri Kembangan in Petaling, Balakong in Hulu Langat — and cannot be divided between them. Sungai Buloh was written Sg. Buloh to 2020; the years do not overlap.
- Kuala Terengganu & Kuala Nerus — Kuala Nerus was carved from Kuala Terengganu in 2014 and is policed from it. Without its people Kuala Terengganu's rate reads high.
Districts that match by name were checked too. Seremban matches exactly, but Nilai is a separate police district inside it; left out, Seremban's crime would shrink while its population did not, and its rate would read low. Every police district and every population district is used exactly once, and the totals add back up to PDRM's national figure in every year from 2016.
Source: PDRM via data.gov.my — crime_district, joined to DOSM — population by district. Built 2026-10-13. See methodology and data sources.