21 – 27 Oct 2026 · Malaysia

Kota Bharu weekly air quality

US AQI · PM2.5 · 24-hour source averages

64.6Weekly mean AQI · Moderate

Official DOE API mean: 53.9. Calculated separately from reported official observations.

Each DOE observation identified as PM2.5 is converted using the published API formula and US AQI breakpoints. This is not an official all-pollutant AQI or NowCast. Calculation details

150 eligible observations · 0 excluded.

-19.8 AQI compared with the previous week’s eligible mean of 84.4.

Peak AQI: 91 at Kota Bharu · 22 Oct 2026, 11:00 (UTC+8).

Daily US AQI (PM2.5)

Low 29High 91AQI
050100
21 Oct27 Oct
27 OctDaily mean · Peak 5350.3Avg AQI

Based on 6 hourly readings.

Daily and hourly means use eligible observations across the selected locations. Each observation uses a 24-hour PM2.5 average.

Export AQI CSV

Means and peaks use only converted observations. Missing days remain gaps.

DayMean AQIPeak AQIEligible / excluded
2026-10-2180.1Moderate8724 / 0
2026-10-2285.2Moderate9124 / 0
2026-10-2369.9Moderate7824 / 0
2026-10-2454.3Moderate6124 / 0
2026-10-2556.6Moderate6124 / 0
2026-10-2645.1Good5824 / 0
2026-10-2750.3Moderate536 / 0

Hourly means (UTC+8)

Day01234567891011121314151617181920212223
2026-10-21878686848483838180787880787878808078777577777778
2026-10-22808386848486868787909091918887848384848481838180
2026-10-23787575757574747474747271717170686764646264626262
2026-10-24615959585858575654525151515152535354545352515252
2026-10-25525252525252535353555657585961616161616161595958
2026-10-26585857565555555555535149454036322929312931364245
2026-10-27454851525353——————————————————

Observation categories

Good: 15

Moderate: 135

Unhealthy for Sensitive Groups: 0

Unhealthy: 0

Very Unhealthy: 0

Hazardous: 0

US AQI scale
AQICategory
0–50Good
51–100Moderate
101–150Unhealthy for Sensitive Groups
151–200Unhealthy
201–300Very Unhealthy
301+Hazardous
View the official DOE API report

Kota Bharu air quality.
Weekly station review.

7 days · Kelantan

Laporan mingguan Indeks Pencemaran Udara (IPU) bagi stesen Kota Bharu, Kelantan

During the week of 21 – 27 Oct 2026, air quality at Kota Bharu averaged an Air Pollutant Index (API) of 53.9 (Moderate). Readings peaked at 75.

Station weekly average

53.9API

Moderate · Sederhana

Daily averages36.4 – 70.7 APIWed → Tue
Explore the week
Week's peak reading
75ModeratePeak during 7-day window
Rank in Kelantan
#1of 2 stationsState avg: 54.6 API
Good to Moderate air
100%of hourly readings150 readings recorded
National standing
#11of 68 stationsNational avg: 83.4 API

The week, hour by hour

Bacaan setiap jam dari tengah malam hingga 11 malam

Read each row from midnight to 11pm, in Malaysia Time. Hourly air quality at Kota Bharu shows local patterns like traffic peaks and afternoon haze accumulation.

WedWed 00:00 MYT — API 72Wed 01:00 MYT — API 71Wed 02:00 MYT — API 71Wed 03:00 MYT — API 70Wed 04:00 MYT — API 70Wed 05:00 MYT — API 69Wed 06:00 MYT — API 69Wed 07:00 MYT — API 68Wed 08:00 MYT — API 67Wed 09:00 MYT — API 66Wed 10:00 MYT — API 66Wed 11:00 MYT — API 67Wed 12:00 MYT — API 66Wed 13:00 MYT — API 66Wed 14:00 MYT — API 66Wed 15:00 MYT — API 67Wed 16:00 MYT — API 67Wed 17:00 MYT — API 66Wed 18:00 MYT — API 65Wed 19:00 MYT — API 64Wed 20:00 MYT — API 65Wed 21:00 MYT — API 65Wed 22:00 MYT — API 65Wed 23:00 MYT — API 66ThuThu 00:00 MYT — API 67Thu 01:00 MYT — API 69Thu 02:00 MYT — API 71Thu 03:00 MYT — API 70Thu 04:00 MYT — API 70Thu 05:00 MYT — API 71Thu 06:00 MYT — API 71Thu 07:00 MYT — API 72Thu 08:00 MYT — API 72Thu 09:00 MYT — API 74Thu 10:00 MYT — API 74Thu 11:00 MYT — API 75Thu 12:00 MYT — API 75Thu 13:00 MYT — API 73Thu 14:00 MYT — API 72Thu 15:00 MYT — API 70Thu 16:00 MYT — API 69Thu 17:00 MYT — API 70Thu 18:00 MYT — API 70Thu 19:00 MYT — API 70Thu 20:00 MYT — API 68Thu 21:00 MYT — API 69Thu 22:00 MYT — API 68Thu 23:00 MYT — API 67FriFri 00:00 MYT — API 66Fri 01:00 MYT — API 64Fri 02:00 MYT — API 64Fri 03:00 MYT — API 64Fri 04:00 MYT — API 64Fri 05:00 MYT — API 63Fri 06:00 MYT — API 63Fri 07:00 MYT — API 63Fri 08:00 MYT — API 63Fri 09:00 MYT — API 63Fri 10:00 MYT — API 62Fri 11:00 MYT — API 61Fri 12:00 MYT — API 61Fri 13:00 MYT — API 61Fri 14:00 MYT — API 60Fri 15:00 MYT — API 59Fri 16:00 MYT — API 58Fri 17:00 MYT — API 56Fri 18:00 MYT — API 56Fri 19:00 MYT — API 55Fri 20:00 MYT — API 56Fri 21:00 MYT — API 55Fri 22:00 MYT — API 55Fri 23:00 MYT — API 55SatSat 00:00 MYT — API 54Sat 01:00 MYT — API 53Sat 02:00 MYT — API 53Sat 03:00 MYT — API 52Sat 04:00 MYT — API 52Sat 05:00 MYT — API 52Sat 06:00 MYT — API 51Sat 07:00 MYT — API 49Sat 08:00 MYT — API 45Sat 09:00 MYT — API 40Sat 10:00 MYT — API 39Sat 11:00 MYT — API 39Sat 12:00 MYT — API 38Sat 13:00 MYT — API 39Sat 14:00 MYT — API 40Sat 15:00 MYT — API 42Sat 16:00 MYT — API 43Sat 17:00 MYT — API 44Sat 18:00 MYT — API 44Sat 19:00 MYT — API 42Sat 20:00 MYT — API 40Sat 21:00 MYT — API 39Sat 22:00 MYT — API 40Sat 23:00 MYT — API 40SunSun 00:00 MYT — API 40Sun 01:00 MYT — API 41Sun 02:00 MYT — API 41Sun 03:00 MYT — API 40Sun 04:00 MYT — API 40Sun 05:00 MYT — API 41Sun 06:00 MYT — API 42Sun 07:00 MYT — API 42Sun 08:00 MYT — API 43Sun 09:00 MYT — API 47Sun 10:00 MYT — API 49Sun 11:00 MYT — API 51Sun 12:00 MYT — API 52Sun 13:00 MYT — API 53Sun 14:00 MYT — API 54Sun 15:00 MYT — API 54Sun 16:00 MYT — API 54Sun 17:00 MYT — API 54Sun 18:00 MYT — API 54Sun 19:00 MYT — API 54Sun 20:00 MYT — API 54Sun 21:00 MYT — API 53Sun 22:00 MYT — API 53Sun 23:00 MYT — API 52MonMon 00:00 MYT — API 52Mon 01:00 MYT — API 52Mon 02:00 MYT — API 51Mon 03:00 MYT — API 49Mon 04:00 MYT — API 48Mon 05:00 MYT — API 47Mon 06:00 MYT — API 46Mon 07:00 MYT — API 46Mon 08:00 MYT — API 46Mon 09:00 MYT — API 42Mon 10:00 MYT — API 38Mon 11:00 MYT — API 37Mon 12:00 MYT — API 34Mon 13:00 MYT — API 30Mon 14:00 MYT — API 27Mon 15:00 MYT — API 24Mon 16:00 MYT — API 22Mon 17:00 MYT — API 22Mon 18:00 MYT — API 23Mon 19:00 MYT — API 22Mon 20:00 MYT — API 23Mon 21:00 MYT — API 27Mon 22:00 MYT — API 32Mon 23:00 MYT — API 34TueTue 00:00 MYT — API 34Tue 01:00 MYT — API 36Tue 02:00 MYT — API 38Tue 03:00 MYT — API 40Tue 04:00 MYT — API 42Tue 05:00 MYT — API 42Tue 06:00 — no readingTue 07:00 — no readingTue 08:00 — no readingTue 09:00 — no readingTue 10:00 — no readingTue 11:00 — no readingTue 12:00 — no readingTue 13:00 — no readingTue 14:00 — no readingTue 15:00 — no readingTue 16:00 — no readingTue 17:00 — no readingTue 18:00 — no readingTue 19:00 — no readingTue 20:00 — no readingTue 21:00 — no readingTue 22:00 — no readingTue 23:00 — no reading0003060912151821
020406080APIBrighter cells ran hazier than the rest of this week (22 – 75 API)

Haziest hour of the week: Thu at 11:00 MYT, averaging API 75 nationwide.

View the hourly figures as a table
National average API by hour, Malaysia Time
Day000102030405060708091011121314151617181920212223
Wed727171707069696867666667666666676766656465656566
Thu676971707071717272747475757372706970707068696867
Fri666464646463636363636261616160595856565556555555
Sat545353525252514945403939383940424344444240394040
Sun404141404041424243474951525354545454545454535352
Mon525251494847464646423837343027242222232223273234
Tue343638404242——————————————————

How the readings split

Pecahan bacaan mengikut kategori IPU

Good: 37% (55 readings)Moderate: 63% (95 readings)63%Moderate
  • GoodBaik37%55
  • ModerateSederhana63%95
  • UnhealthyTidak Sihat0%0
  • Very UnhealthySangat Tidak Sihat0%0
  • HazardousBerbahaya0%0

Based on 150 hourly station readings.

What it meant for this area

Panduan kesihatan mengikut kategori kualiti udara

Air quality is acceptable. People with asthma, heart or lung conditions should reduce prolonged or heavy outdoor exertion.

Kualiti udara sederhana. Pesakit asma, jantung atau paru-paru dinasihatkan mengurangkan aktiviti berat di luar bangunan.

Malaysia API scale · Skala IPU Malaysia
APICategoryKategori
0–50GoodBaik
51–100ModerateSederhana
101–200UnhealthyTidak Sihat
201–300Very UnhealthySangat Tidak Sihat
301+HazardousBerbahaya

Nearby monitoring stations around Kota Bharu

Perbandingan purata mingguan dengan stesen berhampiran