Calculated from DOE’s rounded PM2.5 API using a 24-hour average and US AQI breakpoints. Not an official all-pollutant US AQI or real-time NowCast. Calculation details
Good
1
Moderate
37
Unhealthy for Sensitive Groups
15
Unhealthy
15
Very Unhealthy
0
Hazardous
0
68 of 68 stations have convertible observations. Check each observation’s date.
Kota TinggiJohor · 12 Oct, 05:00 MYT175Official API 169Unhealthy
Pasir GudangJohor · 12 Oct, 05:00 MYT174Official API 168Unhealthy
PengerangJohor · 12 Oct, 05:00 MYT167Official API 163Unhealthy
LarkinJohor · 12 Oct, 05:00 MYT166Official API 162Unhealthy
SerembanNegeri Sembilan · 12 Oct, 05:00 MYT165Official API 161Unhealthy
Balok Baru KuantanPahang · 12 Oct, 05:00 MYT165Official API 161Unhealthy
NilaiNegeri Sembilan · 12 Oct, 05:00 MYT160Official API 158Unhealthy
KemamanTerengganu · 12 Oct, 05:00 MYT160Official API 158Unhealthy
RompinPahang · 12 Oct, 05:00 MYT159Official API 157Unhealthy
PakaTerengganu · 12 Oct, 05:00 MYT159Official API 157Unhealthy
Kuala TerengganuTerengganu · 12 Oct, 05:00 MYT159Official API 157Unhealthy
TangkakJohor · 12 Oct, 05:00 MYT158Official API 156Unhealthy
Batu PahatJohor · 12 Oct, 05:00 MYT154Official API 153Unhealthy
KluangJohor · 12 Oct, 05:00 MYT154Official API 153Unhealthy
Bukit RambaiMelaka · 12 Oct, 05:00 MYT151Official API 151Unhealthy
Indera Mahkota KuantanPahang · 12 Oct, 05:00 MYT150Official API 149Unhealthy for Sensitive Groups
SegamatJohor · 12 Oct, 05:00 MYT148Official API 142Unhealthy for Sensitive Groups
JOHAN SETIASelangor · 12 Oct, 05:00 MYT139Official API 104Unhealthy for Sensitive Groups
CherasWP Kuala Lumpur · 12 Oct, 05:00 MYT138Official API 100Unhealthy for Sensitive Groups
PutrajayaWP Putrajaya · 12 Oct, 05:00 MYT136Official API 99Unhealthy for Sensitive Groups
Alor GajahMelaka · 12 Oct, 05:00 MYT134Official API 98Unhealthy for Sensitive Groups
Port DicksonNegeri Sembilan · 12 Oct, 05:00 MYT132Official API 97Unhealthy for Sensitive Groups
Bandaraya MelakaMelaka · 12 Oct, 05:00 MYT132Official API 97Unhealthy for Sensitive Groups
IPD SerianSarawak · 12 Oct, 05:00 MYT128Official API 95Unhealthy for Sensitive Groups
MiriSarawak · 12 Oct, 05:00 MYT126Official API 94Unhealthy for Sensitive Groups
TawauSabah · 12 Oct, 05:00 MYT124Official API 93Unhealthy for Sensitive Groups
SamalajuSarawak · 12 Oct, 05:00 MYT111Official API 86Unhealthy for Sensitive Groups
SamarahanSarawak · 12 Oct, 05:00 MYT105Official API 83Unhealthy for Sensitive Groups
KuchingSarawak · 12 Oct, 05:00 MYT105Official API 83Unhealthy for Sensitive Groups
BantingSelangor · 12 Oct, 05:00 MYT101Official API 81Unhealthy for Sensitive Groups
LabuanWP Labuan · 12 Oct, 05:00 MYT99Official API 80Moderate
BintuluSarawak · 12 Oct, 05:00 MYT97Official API 79Moderate
KlangSelangor · 12 Oct, 05:00 MYT96Official API 78Moderate
BesutTerengganu · 12 Oct, 05:00 MYT96Official API 78Moderate
LimbangSarawak · 12 Oct, 05:00 MYT96Official API 78Moderate
Kota BharuKelantan · 12 Oct, 05:00 MYT91Official API 75Moderate
Batu MudaWP Kuala Lumpur · 12 Oct, 05:00 MYT88Official API 73Moderate
Tanah MerahKelantan · 12 Oct, 05:00 MYT88Official API 73Moderate
MukahSarawak · 12 Oct, 05:00 MYT88Official API 73Moderate
Shah AlamSelangor · 12 Oct, 05:00 MYT87Official API 72Moderate
ILP MiriSarawak · 12 Oct, 05:00 MYT86Official API 71Moderate
TemerlohPahang · 12 Oct, 05:00 MYT84Official API 70Moderate
SibuSarawak · 12 Oct, 05:00 MYT81Official API 68Moderate
SarikeiSarawak · 12 Oct, 05:00 MYT81Official API 68Moderate
Petaling JayaSelangor · 12 Oct, 05:00 MYT80Official API 67Moderate
KeningauSabah · 12 Oct, 05:00 MYT80Official API 67Moderate
KapitSarawak · 12 Oct, 05:00 MYT80Official API 67Moderate
Tanjung MalimPerak · 12 Oct, 05:00 MYT78Official API 66Moderate
Kuala SelangorSelangor · 12 Oct, 05:00 MYT77Official API 65Moderate
Kota KinabaluSabah · 12 Oct, 05:00 MYT77Official API 65Moderate
Tasek IpohPerak · 12 Oct, 05:00 MYT74Official API 63Moderate
Sri AmanSarawak · 12 Oct, 05:00 MYT72Official API 62Moderate
KimanisSabah · 12 Oct, 05:00 MYT71Official API 61Moderate
Pegoh IpohPerak · 12 Oct, 05:00 MYT70Official API 60Moderate
Alor SetarKedah · 12 Oct, 05:00 MYT67Official API 58Moderate
Seri ManjungPerak · 11 Oct, 11:00 MYT · Saved reading67Official API 58Moderate
Seberang JayaPulau Pinang · 12 Oct, 05:00 MYT65Official API 57Moderate
JerantutPahang · 12 Oct, 05:00 MYT65Official API 57Moderate
Sungai PetaniKedah · 12 Oct, 05:00 MYT62Official API 55Moderate
Seberang PeraiPulau Pinang · 12 Oct, 05:00 MYT62Official API 55Moderate
MindenPulau Pinang · 12 Oct, 05:00 MYT59Official API 53Moderate
TaipingPerak · 12 Oct, 05:00 MYT59Official API 53Moderate
Kulim Hi-TechKedah · 12 Oct, 05:00 MYT58Official API 52Moderate
SandakanSabah · 12 Oct, 05:00 MYT57Official API 51Moderate
KangarPerlis · 12 Oct, 05:00 MYT53Official API 43Moderate
Balik PulauPulau Pinang · 12 Oct, 05:00 MYT52Official API 40Moderate
LangkawiKedah · 12 Oct, 05:00 MYT38Official API 29Good
Official DOE API overview
Kualiti udara Malaysia hari ini · Indeks Pencemaran Udara (IPU)
68 of 68 DOE stations are reporting as of 05:00 MYT, 12 Oct 2026. The highest Air Pollutant Index in Malaysia is 169 (Unhealthy) at Kota Tinggi, Johor. 3 stations read good, 47 moderate and 18 unhealthy or worse.
68 daripada 68 stesen JAS melaporkan bacaan setakat 05:00 MYT, 12 Oct 2026. Bacaan IPU tertinggi di Malaysia ialah 169 (Tidak Sihat) di Kota Tinggi, Johor. 3 stesen baik, 47 sederhana dan 18 tidak sihat atau lebih teruk.
Stations reporting
68of 68
GoodBaik
3
ModerateSederhana
47
UnhealthyTidak Sihat
18
Very UnhealthySangat Tidak Sihat
0
HazardousBerbahaya
0
Latest observation 05:00 MYT, 12 Oct 2026. Source: Department of Environment Malaysia.
Limit prolonged outdoor activity. Children, older adults, pregnant women and people with respiratory or heart conditions should stay indoors where possible. A well-fitted N95 mask helps outdoors.
Hadkan aktiviti luar yang berpanjangan. Kanak-kanak, warga emas, ibu mengandung dan pesakit pernafasan atau jantung dinasihatkan berada di dalam bangunan. Pelitup muka N95 membantu di luar.
US AQI (PM2.5) by city
Values are calculated from DOE’s rounded API and a 24-hour PM2.5 average. Unknown or other dominant pollutants show as unavailable. How the conversion works
Malaysia weekly report · Laporan mingguan Malaysia
Ringkasan mingguan kualiti udara dan statistik jerebu kebangsaan
Looking for weekly trends? Explore Malaysia's 7-day national average API, peak readings, cleanest and most polluted monitoring stations, and major city comparisons.
The Air Pollutant Index (API), or Indeks Pencemaran Udara (IPU) in Bahasa Malaysia, is published by the Department of Environment. It follows Malaysia's own scale, which differs from the US AQI. Compare station readings and their observation times to understand conditions across the country.
Malaysia API scale · Skala IPU Malaysia
API
Category
Kategori
0–50
Good
Baik
51–100
Moderate
Sederhana
101–200
Unhealthy
Tidak Sihat
201–300
Very Unhealthy
Sangat Tidak Sihat
301+
Hazardous
Berbahaya
Malaysia
Malaysia air quality and haze today: Kuala Lumpur air quality and haze
The main number is PM2.5 US AQI calculated from Malaysia’s official Air Pollutant Index (API). We derive the 24-hour PM2.5 concentration from the rounded API and apply US thresholds. It is not an official all-pollutant AQI or a real-time NowCast.
The source API comes from the nearest DOE monitor within 75 km of the city centre. It is a station reading, not a city average. The app checks for updates every five minutes and shows the age of the observation.
The Petronas Twin Towers artwork is an illustration. The haze effect follows the API reading; it is not a camera view.