How HazeMY works.
HazeMY is an independent project, not a government service. It puts Malaysia's station readings, a short-range forecast and route planning in one place. This page lists where every number comes from and what the tools cannot tell you.
Where the numbers come from
- Station readings
- DOE Malaysia monitoring stations, through the World Air Quality Index (WAQI) projectChecked every few minutes. A station that has not reported for 6 hours is left out. WAQI may convert values to the US EPA scale, so a number here can differ from the official API.
- 3-hour PM2.5 forecast, gases, map points
- Copernicus Atmosphere Monitoring Service (CAMS), through Open-MeteoModel estimates for a location, not measurements.
- Weather
- Open-Meteo weather modelCurrent conditions and today's forecast at each station.
- Fires
- NASA FIRMS, VIIRS satellite detections from the last 24 hoursLow-confidence detections are left out.
- Health advice
- DOE Malaysia's API health guidance, and Ministry of Health and Ministry of Education haze adviceShown for the band a reading falls in.
- Routes and place search
- OpenStreetMap, through OSRM, Photon and NominatimRoad-level air is matched from the nearest reading, not measured on the road.
For the official Air Pollutant Index, always check APIMS by the Department of Environment.
The 3-hour PM2.5 forecast
The forecast was trained on 87,705 hourly CAMS PM2.5 records from five Klang Valley locations (January 2023 to December 2024). It was then tested on the last 13,160 hours, September to December 2024, which it never saw during training. Lower error is better; R² closer to 1 is better.
| Model | Mean error (µg/m³) | RMSE (µg/m³) | R² | Status |
|---|---|---|---|---|
| Persistence (value now = value in 3 h) | 12.19 | 17.42 | 0.203 | Baseline |
| Linear regression | 9.80 | 13.32 | 0.534 | Tested |
| Random forest | 7.60 | 10.79 | 0.695 | Tested |
| XGBoost | 7.46 | 10.56 | 0.707 | In use |
XGBoost cut the error of the simple baseline by 39%. On the held-out months it was typically off by about 7.5 µg/m³.
What it cannot tell you
- The forecast predicts the CAMS model's PM2.5, not what a station will measure, and it was trained on the Klang Valley only.
- The heat map fills the gaps between stations by distance. Far from a station, treat its colours as a rough guess. The research view shows how well it matches the stations right now.
- Route scores match each stretch of road to the nearest reading. They do not measure roadside air or the dose you breathe in.
- The risk score, rankings and alerts are HazeMY's own. They do not replace APIMS, DOE warnings or Ministry of Health advice.
Built in Malaysia by Phuah Hong Xuan. See also the privacy policy and terms.