14 – 20 Oct 2026 · Malaysia

Kota Bharu weekly air quality

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

84.4Weekly mean AQI · Moderate

Official DOE API mean: 69.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

168 eligible observations · 0 excluded.

-12.8 AQI compared with the previous week’s eligible mean of 97.2.

Peak AQI: 120 at Kota Bharu · 15 Oct 2026, 10:00 (UTC+8).

Daily US AQI (PM2.5)

Low 56High 120AQI
062.5125
14 Oct20 Oct
20 OctDaily mean · Peak 8777.9Avg AQI

Based on 24 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-1485.5Moderate10124 / 0
2026-10-15110.2Unhealthy for Sensitive Groups12024 / 0
2026-10-1691.1Moderate9924 / 0
2026-10-1785.6Moderate9024 / 0
2026-10-1880.1Moderate8824 / 0
2026-10-1960.3Moderate6724 / 0
2026-10-2077.9Moderate8724 / 0

Hourly means (UTC+8)

Day01234567891011121314151617181920212223
2026-10-14757777777775757575777880838790919396969799101101101
2026-10-15979910310510911111311511711812012011811811511511511111110710510310199
2026-10-16999997969699979696969493909088868384848383848687
2026-10-17908887868484838384838184888686868686848686878888
2026-10-18878788888786848484838180777878807878777775726865
2026-10-19646259585858585856575859585858585962626465656767
2026-10-20676868707274747577757575777881838484868684848687

Observation categories

Good: 0

Moderate: 144

Unhealthy for Sensitive Groups: 24

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 14 – 20 Oct 2026, air quality at Kota Bharu averaged an Air Pollutant Index (API) of 69.9 (Moderate). Readings peaked at 91.

Station weekly average

69.9API

Moderate · Sederhana

Daily averages53.6 – 85.7 APIWed → Tue
Explore the week
Week's peak reading
91ModeratePeak during 7-day window
Rank in Kelantan
#2of 2 stationsState avg: 68.5 API
Good to Moderate air
100%of hourly readings168 readings recorded
National standing
#16of 68 stationsNational avg: 108.7 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 64Wed 01:00 MYT — API 65Wed 02:00 MYT — API 65Wed 03:00 MYT — API 65Wed 04:00 MYT — API 65Wed 05:00 MYT — API 64Wed 06:00 MYT — API 64Wed 07:00 MYT — API 64Wed 08:00 MYT — API 64Wed 09:00 MYT — API 65Wed 10:00 MYT — API 66Wed 11:00 MYT — API 67Wed 12:00 MYT — API 69Wed 13:00 MYT — API 72Wed 14:00 MYT — API 74Wed 15:00 MYT — API 75Wed 16:00 MYT — API 76Wed 17:00 MYT — API 78Wed 18:00 MYT — API 78Wed 19:00 MYT — API 79Wed 20:00 MYT — API 80Wed 21:00 MYT — API 81Wed 22:00 MYT — API 81Wed 23:00 MYT — API 81ThuThu 00:00 MYT — API 79Thu 01:00 MYT — API 80Thu 02:00 MYT — API 82Thu 03:00 MYT — API 83Thu 04:00 MYT — API 85Thu 05:00 MYT — API 86Thu 06:00 MYT — API 87Thu 07:00 MYT — API 88Thu 08:00 MYT — API 89Thu 09:00 MYT — API 90Thu 10:00 MYT — API 91Thu 11:00 MYT — API 91Thu 12:00 MYT — API 90Thu 13:00 MYT — API 90Thu 14:00 MYT — API 88Thu 15:00 MYT — API 88Thu 16:00 MYT — API 88Thu 17:00 MYT — API 86Thu 18:00 MYT — API 86Thu 19:00 MYT — API 84Thu 20:00 MYT — API 83Thu 21:00 MYT — API 82Thu 22:00 MYT — API 81Thu 23:00 MYT — API 80FriFri 00:00 MYT — API 80Fri 01:00 MYT — API 80Fri 02:00 MYT — API 79Fri 03:00 MYT — API 78Fri 04:00 MYT — API 78Fri 05:00 MYT — API 80Fri 06:00 MYT — API 79Fri 07:00 MYT — API 78Fri 08:00 MYT — API 78Fri 09:00 MYT — API 78Fri 10:00 MYT — API 77Fri 11:00 MYT — API 76Fri 12:00 MYT — API 74Fri 13:00 MYT — API 74Fri 14:00 MYT — API 73Fri 15:00 MYT — API 71Fri 16:00 MYT — API 69Fri 17:00 MYT — API 70Fri 18:00 MYT — API 70Fri 19:00 MYT — API 69Fri 20:00 MYT — API 69Fri 21:00 MYT — API 70Fri 22:00 MYT — API 71Fri 23:00 MYT — API 72SatSat 00:00 MYT — API 74Sat 01:00 MYT — API 73Sat 02:00 MYT — API 72Sat 03:00 MYT — API 71Sat 04:00 MYT — API 70Sat 05:00 MYT — API 70Sat 06:00 MYT — API 69Sat 07:00 MYT — API 69Sat 08:00 MYT — API 70Sat 09:00 MYT — API 69Sat 10:00 MYT — API 68Sat 11:00 MYT — API 70Sat 12:00 MYT — API 73Sat 13:00 MYT — API 71Sat 14:00 MYT — API 71Sat 15:00 MYT — API 71Sat 16:00 MYT — API 71Sat 17:00 MYT — API 71Sat 18:00 MYT — API 70Sat 19:00 MYT — API 71Sat 20:00 MYT — API 71Sat 21:00 MYT — API 72Sat 22:00 MYT — API 73Sat 23:00 MYT — API 73SunSun 00:00 MYT — API 72Sun 01:00 MYT — API 72Sun 02:00 MYT — API 73Sun 03:00 MYT — API 73Sun 04:00 MYT — API 72Sun 05:00 MYT — API 71Sun 06:00 MYT — API 70Sun 07:00 MYT — API 70Sun 08:00 MYT — API 70Sun 09:00 MYT — API 69Sun 10:00 MYT — API 68Sun 11:00 MYT — API 67Sun 12:00 MYT — API 65Sun 13:00 MYT — API 66Sun 14:00 MYT — API 66Sun 15:00 MYT — API 67Sun 16:00 MYT — API 66Sun 17:00 MYT — API 66Sun 18:00 MYT — API 65Sun 19:00 MYT — API 65Sun 20:00 MYT — API 64Sun 21:00 MYT — API 62Sun 22:00 MYT — API 59Sun 23:00 MYT — API 57MonMon 00:00 MYT — API 56Mon 01:00 MYT — API 55Mon 02:00 MYT — API 53Mon 03:00 MYT — API 52Mon 04:00 MYT — API 52Mon 05:00 MYT — API 52Mon 06:00 MYT — API 52Mon 07:00 MYT — API 52Mon 08:00 MYT — API 50Mon 09:00 MYT — API 51Mon 10:00 MYT — API 52Mon 11:00 MYT — API 53Mon 12:00 MYT — API 52Mon 13:00 MYT — API 52Mon 14:00 MYT — API 52Mon 15:00 MYT — API 52Mon 16:00 MYT — API 53Mon 17:00 MYT — API 55Mon 18:00 MYT — API 55Mon 19:00 MYT — API 56Mon 20:00 MYT — API 57Mon 21:00 MYT — API 57Mon 22:00 MYT — API 58Mon 23:00 MYT — API 58TueTue 00:00 MYT — API 58Tue 01:00 MYT — API 59Tue 02:00 MYT — API 59Tue 03:00 MYT — API 60Tue 04:00 MYT — API 62Tue 05:00 MYT — API 63Tue 06:00 MYT — API 63Tue 07:00 MYT — API 64Tue 08:00 MYT — API 65Tue 09:00 MYT — API 64Tue 10:00 MYT — API 64Tue 11:00 MYT — API 64Tue 12:00 MYT — API 65Tue 13:00 MYT — API 66Tue 14:00 MYT — API 68Tue 15:00 MYT — API 69Tue 16:00 MYT — API 70Tue 17:00 MYT — API 70Tue 18:00 MYT — API 71Tue 19:00 MYT — API 71Tue 20:00 MYT — API 70Tue 21:00 MYT — API 70Tue 22:00 MYT — API 71Tue 23:00 MYT — API 720003060912151821
0255075100APIBrighter cells ran hazier than the rest of this week (50 – 91 API)

Haziest hour of the week: Thu at 10:00 MYT, averaging API 91 nationwide.

View the hourly figures as a table
National average API by hour, Malaysia Time
Day000102030405060708091011121314151617181920212223
Wed646565656564646464656667697274757678787980818181
Thu798082838586878889909191909088888886868483828180
Fri808079787880797878787776747473716970706969707172
Sat747372717070696970696870737171717171707171727373
Sun727273737271707070696867656666676666656564625957
Mon565553525252525250515253525252525355555657575858
Tue585959606263636465646464656668697070717170707172

How the readings split

Pecahan bacaan mengikut kategori IPU

Good: 1% (1 readings)Moderate: 99% (167 readings)99%Moderate
  • GoodBaik1%1
  • ModerateSederhana99%167
  • UnhealthyTidak Sihat0%0
  • Very UnhealthySangat Tidak Sihat0%0
  • HazardousBerbahaya0%0

Based on 168 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