Stateof Malaysia

Malaysia's Climate Today

01

Malaysia is warmer than normal today.

A daily read on the country's climate — how hot, how wet, how clean the air, how high the rivers, and how far each of those sits from what used to be normal.

Updated Monday, 12 October 2026

Above the 1991–2020 average

+0.7°C

The national mean today is 26.9°C, against a historical normal of 26.2°C for this date. Every state is running warmer than its own average.

PENINSULAR MALAYSIAEAST MALAYSIA (BORNEO)Johor: +0.4Kedah: +0.8Kelantan: +0.6Kuala Lumpur: +0.7Melaka: +0.1Negeri Sembilan: +0.6Pahang: +0.8Penang: +0.7Perak: +1.5Perlis: +0.3Sabah: +1.8Sarawak: +0.4Selangor: +0.4Terengganu: +1.0JHR+0.4KDH+0.8KTN+0.6KUL+0.7MLK+0.1NSN+0.6PHG+0.8PNG+0.7PRK+1.5PLS+0.3SBH+1.8SWK+0.4SGR+0.4TRG+1.0Panels shown at different scales.

Temperature anomaly

+0.1+1.8

Today in Malaysia

02

The briefing.

The country's climate at a glance — what the live feeds read today, and the forces behind them. Every tile links to the data underneath it.

Live data

ERA5 reanalysis (ECMWF / Copernicus) via Open-Meteo · retrieved 2026-10-12 22:43 UTC

Composed from the live temperature, rainfall and air-quality feeds.

Did you know

A “normal” is exactly thirty years long.

The World Meteorological Organization defines a climatological normal as a 30-year average, refreshed each decade. Every anomaly on this page is measured against the current one, 1991–2020.

World Meteorological Organization, WMO-No. 1203

Anomalies travel further than temperatures.

Absolute temperature changes sharply with altitude and distance from the coast, but the departure from normal stays similar across hundreds of kilometres. That is why climate records are kept as anomalies, not degrees.

NASA Goddard Institute for Space Studies

Reanalysis is not a forecast.

ERA5 runs a modern weather model over past observations, producing a physically consistent record of what the atmosphere actually did. It is the standard way to build a climate baseline where stations are sparse.

ECMWF / Copernicus Climate Change Service

Deep data

02.3

Before you trust any of that, here is where it came from.

Most of this page is a live reading of a physical model constrained by satellites and stations. Some of it is not, and the difference matters more than any number on it. Every section carries a chip saying which it is.

Reference points

14

one per state, at its capital — not a station network

Baseline

1991–2020

ERA5 reanalysis · national mean 26.38°C, 2611 mm/yr

Feeds live

4 of 5

temperature, rainfall, air quality and UV. River levels are not

Baseline built

2026-07-08

35 years of daily ERA5, reduced offline to day-of-year normals

The network behind the numbers

Temperature, rainfall and UV come from Open-Meteo, read at one point per state — the state capital. Anomalies are measured against a 1991–2020 ERA5 baseline we computed once, offline, from 35 years of daily reanalysis. Air quality is CAMS. River levels have no open feed anywhere, so they are the only illustrative figures here.

MetricSourcePointsFreshness
TemperatureOpen-Meteo forecast (ICON/GFS)14≤15 min
RainfallOpen-Meteo observed + ERA5 normals14≤30 min
UV indexOpen-Meteo daily maximum14≤15 min
Air qualityCAMS (ECMWF) via Open-Meteo9hourly
Baseline (1991–2020)ERA5 reanalysis (Copernicus)14Static
River levelsNo open feed — illustrative——

Malaysia's own agencies — METMalaysia, DOE and JPS — publish this data on web pages rather than open APIs. Where an official feed exists (METMalaysia forecasts, via data.gov.my), it covers forecasts rather than the observations this page needs.

Fourteen points, not a network

One reference point per state, at its capital. That is enough to see a national anomaly and far too coarse to see a thunderstorm.

Reanalysis, not thermometers

ERA5 and CAMS are physical models pinned to observations. They are the standard tool for climate baselines, and they are not the reading on a station in Kuala Krai.

The gaps are the point

River levels are illustrative because nobody publishes them openly. A page that hid that would be worse than one that shows it.

Live data

ERA5 reanalysis (ECMWF / Copernicus) via Open-Meteo · retrieved 2026-10-12 22:43 UTC

Climate Score

03

One number for the whole country.

We compress heat, rainfall, air quality, flood risk and UV into a single daily stress index. Zero is a calm day; one hundred is a national emergency. The inputs are measured. The weights are ours.

31/ 100

Mild climate stress

Factor

Stress / 100

Heat

23

+0.7°C against the 1991–2020 baseline

Rainfall

3

96% of normal over the last 14 days

Air quality

71

0% of monitored city-dwellers in the Good band

Flood risk

42

Illustrative — no open flood telemetry exists

UV

40

midday UV index averages 8.4 across the country

Computed

State of Malaysia composite index, from live ERA5/CAMS factors · retrieved 2026-10-12 22:43 UTC

The inputs are measured; the weights and cutoffs are an editorial choice. The flood factor is illustrative.

Did you know

An air-quality index reports its worst pollutant, not its average.

Malaysia's API and the US AQI both take the maximum of the per-pollutant sub-indices. One bad pollutant sets the number; the other five vanish from the headline.

Department of Environment Malaysia; US Environmental Protection Agency

Weighting is a value judgement, not a technical step.

The OECD's handbook on composite indicators devotes a chapter to it. Whatever weights an index picks, it is asserting what matters — which is why ours are published in the table below.

OECD / JRC, Handbook on Constructing Composite Indicators (2008)

No body defines a national climate index.

Air quality has the AQI, drought has the SPI, and both are standardised internationally. A single number for a country's whole climate stress has no such standard — every one you meet was invented by whoever published it.

World Meteorological Organization

Deep data

03.3

31 is not a measurement. It is an editorial choice.

Any index is an argument about what counts, dressed as a number. Four of the five factors are live measurements; the flood factor is not, and it carries a quarter of the weight. Here is the whole thing: the weight each factor holds, the reading behind it, and how many of the 31 points it contributes. Disagree with the weights and you get a different country.

Biggest driver

Flood risk

contributes 10.5 of the 31 points

Smallest driver

Rainfall

contributes just 0.6 points

Weights

Ours

heat 30% · flood 25% · rainfall 20% · UV 15% · air 10%

Flood factor

Illustrative

the one input with no open feed — it moves the score by a quarter

The heat factor, last 30 days

A 30-day history of the composite would need 30 days of every factor, and only temperature reaches that far back. So this is the heat factor alone — the largest single component, at 30% of the score — measured each day against that day's own 1991–2020 normal.

2026-09-13 · 572026-10-12 · 23

How the 31 is built

Each factor is normalised to 0–100, multiplied by its weight, and summed. The cutoffs are ours too: a +3°C anomaly counts as maximum heat stress, an AQI of 150 as maximum air stress. Reasonable people would pick different ones.

FactorWeightReadingPoints of 31
Flood risk25%illustrative index
10.5
Air quality10%mean AQI 107
7.1
Heat30%+0.7°C anomaly
6.9
UV15%UV index 8.4
6.0
Rainfall20%96% of normal
0.6

Weights are fixed; contributions move with the live readings, and sum to the composite.

Computed

State of Malaysia composite index · retrieved 2026-10-12 22:43 UTC

Weights are published above so the index can be argued with.

Temperature

04

The heat, hour by hour.

Every reading here is measured against the same day of the year in 1991–2020, so a hot July day is judged against other July days — not against the annual mean.

+0.7°C

above the 1991–2020 average for this day of the year

Today

Historical average

Sabah is the hottest state today, at +1.8°C. Melaka is the coolest, at +0.1°C.

PENINSULAR MALAYSIAEAST MALAYSIA (BORNEO)Johor: +0.4Kedah: +0.8Kelantan: +0.6Kuala Lumpur: +0.7Melaka: +0.1Negeri Sembilan: +0.6Pahang: +0.8Penang: +0.7Perak: +1.5Perlis: +0.3Sabah: +1.8Sarawak: +0.4Selangor: +0.4Terengganu: +1.0JHR+0.4KDH+0.8KTN+0.6KUL+0.7MLK+0.1NSN+0.6PHG+0.8PNG+0.7PRK+1.5PLS+0.3SBH+1.8SWK+0.4SGR+0.4TRG+1.0Panels shown at different scales.

Temperature anomaly

+0.1+1.8
StateAnomaly vs average
Sabahnow 25.9°C · high 31.8°C
+1.8°C
Peraknow 24.9°C · high 31.6°C
+1.5°C
Terengganunow 25.6°C · high 30.4°C
+1.0°C
Kedahnow 25.7°C · high 31.4°C
+0.8°C
Pahangnow 27.1°C · high 30.7°C
+0.8°C
Penangnow 25.1°C · high 31.6°C
+0.7°C
Kuala Lumpurnow 25.5°C · high 32.1°C
+0.7°C
Live data

Open-Meteo forecast API (ICON / GFS blend) · retrieved 2026-10-12 22:43 UTC

Did you know

Humans cool by evaporating sweat — until they cannot.

At a wet-bulb temperature of 35°C, sweat stops evaporating and the body cannot shed heat at any exertion. Laboratory work puts the practical limit lower still — nearer 30–31°C wet-bulb, even for young, healthy adults.

Sherwood & Huber (2010); Vecellio et al., J. Appl. Physiol. (2022)

Nights have warmed faster than days.

Across most regions, minimum temperatures rose faster than maximums through the twentieth century, narrowing the gap between day and night. It matters more than it sounds: a night that never cools is a night the body cannot recover from, and heat deaths follow the nights.

IPCC Sixth Assessment Report, Working Group I

A city makes its own climate.

Concrete and asphalt store the day's heat and release it after dark, so the urban heat island is strongest at night — exactly when the body needs the temperature to fall.

IPCC AR6 WG1, Ch. 10 (urban climate)

Deep data

04.3

A daily mean tells you almost nothing about heat.

What harms people is not the average — it is the count of days above 35°C, the nights that never fall below 26°C so the body cannot recover, and the humidity that turns 34.6°C into a felt 41.2°C. Cities make all three worse.

Days above 35°C

41

so far in 2026 · the 1991–2020 average for a full year is 17

Tropical nights

128

nights that never fell below 26°C · 71 in an average year

Peak heat index

41.2°C

what 34.6°C feels like at 74% humidity · 'danger' band

Longest hot streak

9 days

consecutive days above 35°C, ending 2 July

The urban heat island

Each city against the rural stations that surround it, measured at the same hour. Concrete and traffic add up to a whole extra degree of warming in the Klang Valley.

CityUrbanRuralDifference
Kuala Lumpur34.2°C31.6°C
+2.6°C
Petaling Jaya33.8°C31.5°C
+2.3°C
George Town33.1°C31.2°C
+1.9°C
Johor Bahru32.9°C31.3°C
+1.6°C
Ipoh32.4°C31.1°C
+1.3°C
Kuching31.8°C30.9°C
+0.9°C

Illustrative. A real version needs paired urban and rural station observations.

How close to the record?

Today is hot, but nowhere near a record — and that is the point. These highs were once generational events; the anomaly above measures how ordinary that heat has become, not how extreme today is.

StateRecordSetToday is below by
Perlis40.1°C9 Apr 19985.9°C
Perak39.4°C5 Apr 20166.8°C
Kuala Lumpur38.9°C16 Mar 20244.7°C
Kelantan38.6°C27 Apr 20168.0°C
Sarawak37.8°C12 Apr 19986.8°C
Sabah37.1°C3 May 20166.9°C

Illustrative. METMalaysia's station archive has no open API.

Warming rate, by state

Degrees of warming per decade since 1970. Kuala Lumpur is warming roughly 70% faster than Sabah — some of that is the climate, and some of it is the city itself.

StateWarming per decade
Kuala Lumpur
+0.31°C
Selangor
+0.28°C
Penang
+0.26°C
Johor
+0.24°C
Perak
+0.23°C
Pahang
+0.21°C
Sarawak
+0.20°C
Sabah
+0.18°C

Illustrative. A real version would come from Berkeley Earth's country series.

Illustrative

Illustrative figures — not measurements

Station records, urban-heat deltas and decadal trends are illustrative. METMalaysia's station archive has no open API.

Rainfall

05

Close to a normal fortnight.

Rain over the last fourteen days, against the rain those same fourteen days brought on average between 1991 and 2020. The national figure hides everything: the surplus is never spread evenly.

96%

of normal rainfall over the last 14 days, nationwide

Daily rainfall

Normal for this date

Selangor has taken 166% of its normal rain. Sarawak, 42%.

PENINSULAR MALAYSIAEAST MALAYSIA (BORNEO)Johor: 66%Kedah: 141%Kelantan: 105%Kuala Lumpur: 102%Melaka: 79%Negeri Sembilan: 66%Pahang: 73%Penang: 127%Perak: 118%Perlis: 138%Sabah: 69%Sarawak: 42%Selangor: 166%Terengganu: 68%JHR66%KDH141%KTN105%KUL102%MLK79%NSN66%PHG73%PNG127%PRK118%PLS138%SBH69%SWK42%SGR166%TRG68%Panels shown at different scales.

Percent of normal

42%166%

Vertical rule marks 100% — a typical fortnight

StatePercent of normal
Selangor
166%
Kedah
141%
Perlis
138%
Penang
127%
Perak
118%
Kelantan
105%
Kuala Lumpur
102%
Melaka
79%
Live data

ERA5 reanalysis (ECMWF / Copernicus) via Open-Meteo · retrieved 2026-10-12 22:43 UTC

Observed rainfall from Open-Meteo; the normal is the 1991–2020 ERA5 mean for the same days at the same 14 points. Fourteen points are a thin sample of a country — JPS operates several hundred gauges, but publishes no open API.

Did you know

Warmer air holds about 7% more water for every degree.

The Clausius–Clapeyron relation. It is why the heaviest downpours intensify faster than average rainfall does: a warmer atmosphere has more to drop, all at once.

Clausius–Clapeyron relation; IPCC AR6 WG1

Malaysia has two monsoons — and two transitions between them.

The northeast monsoon runs roughly November to March and soaks the east coast; the southwest monsoon runs May to September and is drier. The inter-monsoon months between them are the stormiest.

METMalaysia

Malaysia is one of the most lightning-struck places on Earth.

The maritime continent — warm seas, narrow land, daily convection — makes this belt a global lightning capital. Strikes peak in the inter-monsoon transitions, when the air is unstable but the winds are too light to shear a storm apart, not at the height of either monsoon.

NASA LIS/OTD global lightning climatology

Deep data

05.3

Totals do not flood a town. Intensity does.

A month's rain spread over a month drains away; the same rain in a day does not. These are the intensity measures — the heaviest 24 hours, how rare a fall that heavy is, and the index that decides whether a state is in drought or flood territory.

Heaviest 24 hours

218 mm

Gua Musang, Kelantan · a month's rain in a day

Wet days

11 of 14

days with ≥1 mm · the July norm is 7

Longest dry spell

6 days

Klang Valley, ending 5 July, while the east coast flooded

National SPI

+1.42

3-month standardised precipitation index · 'very wet'

The heaviest 24 hours

A 25-year return period means a fall this heavy is expected roughly once in 25 years at that station. Gua Musang has now seen two since 2014.

StationRain in 24hExpected once every
Gua MusangKelantan
218 mm
25 yrs
Kuala KraiKelantan
186 mm
15 yrs
Hulu TerengganuTerengganu
164 mm
10 yrs
Kuala LipisPahang
142 mm
8 yrs
KapitSarawak
131 mm
5 yrs
Kota TinggiJohor
108 mm
3 yrs

Illustrative. Return periods need a fitted extreme-value distribution on each station's full record.

Drought and flood, at the same time

The standardised precipitation index measures a state's rainfall against its own three-month history. Kelantan is extremely wet. Kuala Lumpur, 400km away, is moderately dry.

StateDry ← SPI → WetBand
Kelantan
+2.14
Extremely wet
Terengganu
+1.86
Very wet
Pahang
+1.52
Very wet
Sarawak
+1.31
Moderately wet
Johor
+0.94
Moderately wet
Sabah
+0.61
Near normal
Selangor
-0.42
Near normal
Kuala Lumpur
-0.88
Moderately dry

Illustrative. Above +1.5 is very wet; below −1.0 is moderately dry.

Why · Southwest monsoon, week 6 of 18

The southwest monsoon normally dries the east coast. This year a stalled monsoon trough is holding moisture over Kelantan and Terengganu instead — the reason the rain is falling where it usually would not.

Illustrative

Illustrative figures — not measurements

Station 24-hour totals, return periods, SPI and the monsoon note are illustrative. JPS station telemetry has no open API.

Floods & Rivers

06

41 river stations require attention today.

Most of the warnings sit in Kelantan and Terengganu, after two days of sustained rain over the northeast coast; the upper Rajang in Sarawak is climbing too. One honest caveat before the water: river levels are the only dataset on this page with no live feed — JPS publishes its telemetry as a web page, not an API — so this section is an illustration of the report a real feed would write, on real geography.

41

stations requiring attention

6

at warning level

35

at alert level

371

reporting normal

+17 stations above alert in the last 48 hours — still climbing, not receding.

The network, state by state.

All 412 gauges on one map: each state shaded by how many need attention, a dot for every monitored gauge, coloured by how close its river is to the bank. Hover a state — or a name on the right — to read its stations.

PENINSULAR MALAYSIAEAST MALAYSIA (BORNEO)JHR4KTN12PHG7SBH3SWK6SGR1TRG8Pasir Mas: 7.6 m · AlertTanah Merah: 17.4 m · AlertKuala Krai: 22.8 m · WarningDabong: 30.6 m · AlertKuala Berang: 7.1 m · NormalJerangau: 12.1 m · WarningBeaufort: 5.9 m · AlertKemaman: 11.8 m · AlertTeluk Intan: 4.6 m · NormalLubuk Paku: 14.6 m · AlertTemerloh: 25.7 m · AlertSibu: 11.9 m · AlertKajang: 3.2 m · NormalKapit: 18.9 m · WarningSegamat: 6.3 m · AlertRantau Panjang: 9.4 m · AlertPanels shown at different scales.

Kelantan

12 of 30

Kuala Krai2.2 m to danger
Dabong0.9 m below warning
Tanah Merah0.6 m below warning
Pasir Mas0.8 m below warning

+8 more above alert in the full network.

Gauge status

Normal

Alert

Warning

Danger

State shading is how many gauges need attention; unshaded states are all normal.

Kelantan

12 of 30 need attention

Kuala Krai2.2 m to danger
Dabong0.9 m below warning
Tanah Merah0.6 m below warning
Pasir Mas0.8 m below warning

+8 more in the full network — not in this sample.

Terengganu

8 of 29 need attention

Pahang

7 of 41 need attention

Sarawak

6 of 58 need attention

Johor

4 of 45 need attention

Sabah

3 of 47 need attention

Selangor

1 of 39 need attention

Perak

all 31 normal

6 further states and territories · 92 stations · all reporting normal.

Every station on the watch list.

Ranked by urgency — how close each river is to its danger threshold and how fast it is rising — so the ones to focus on first are at the top. Each carries its last 24 hours and a six-hour forecast.

Warning

01

Kuala Krai

Kelantan · Sungai Kelantan

22.8 m

Rising rapidly

Only 2.2 m until danger

Danger 25.0Warning 22.5Alert 20.023.6 m22.8 m24h agoNow

Forecast 23.6 m in 6h (+0.8) · updated 4 min ago

Warning

02

Kapit

Sarawak · Batang Rajang

18.9 m

Rising

Only 2.1 m until danger

Danger 21.0Warning 18.5Alert 16.519.3 m18.9 m24h agoNow

Forecast 19.3 m in 6h (+0.4) · updated 6 min ago

Warning

03

Jerangau

Terengganu · Sungai Dungun

12.1 m

Rising

Only 1.4 m until danger

Danger 13.5Warning 12.0Alert 10.512.7 m12.1 m24h agoNow

Forecast 12.7 m in 6h (+0.6) · updated 5 min ago

Alert

04

Dabong

Kelantan · Sungai Galas

30.6 m

Rising

0.9 m below the warning threshold

Danger 33.0Warning 31.5Alert 29.031.1 m30.6 m24h agoNow

Forecast 31.1 m in 6h (+0.5) · updated 8 min ago

Alert

05

Temerloh

Pahang · Sungai Pahang

25.7 m

Rising

1.3 m below the warning threshold

Danger 29.5Warning 27.0Alert 25.026.1 m25.7 m24h agoNow

Forecast 26.1 m in 6h (+0.4) · updated 7 min ago

Alert

06

Lubuk Paku

Pahang · Sungai Pahang

14.6 m

Rising

0.9 m below the warning threshold

Danger 17.0Warning 15.5Alert 14.015.0 m14.6 m24h agoNow

Forecast 15.0 m in 6h (+0.4) · updated 12 min ago

Alert

07

Kemaman

Terengganu · Sungai Kemaman

11.8 m

Rising

0.9 m below the warning threshold

Danger 13.8Warning 12.7Alert 11.012.2 m11.8 m24h agoNow

Forecast 12.2 m in 6h (+0.4) · updated 9 min ago

Alert

08

Sibu

Sarawak · Batang Rajang

11.9 m

Rising

Approaching the warning threshold

Danger 14.0Warning 12.5Alert 10.512.4 m11.9 m24h agoNow

Forecast 12.4 m in 6h (+0.5) · updated 5 min ago

Showing 1–8 of 16 sampled stations — the full JPS network runs 412, but only these publish a live reading.

Illustrative

Illustrative figures — not measurements

River levels, thresholds, forecasts and station counts are illustrative. The Department of Irrigation and Drainage (JPS) publishes live telemetry on publicinfobanjir.water.gov.my as a web page, with no open API — this is the one dataset on the page with no live source.

Did you know

Floods are Malaysia's most frequent natural disaster.

Not earthquakes, not storms. The monsoon arrives on schedule every year; what varies is how much of it falls at once, and on whom.

NADMA; Department of Irrigation and Drainage (JPS)

Fifteen centimetres of moving water can knock an adult over.

Thirty centimetres will float most cars, and sixty will carry away SUVs and trucks. More than half of flood drownings happen in vehicles — which is why the safety advice is four words: turn around, don't drown.

US National Weather Service

A river's danger comes from its catchment, not its length.

Small, steep, paved basins concentrate rain into a flash flood within hours. Vast basins take days to crest — which is why the shortest river on this page is the one that floods most often.

US Geological Survey, flash-flood hydrology

Deep data

06.3

The warning you can act on is measured in hours, not metres.

A gauge tells you the water is high; it cannot tell you when the crest arrives. Catchment lag can: the hours between rain landing upstream and the peak reaching the town. Kajang gets four. Sibu gets thirty-eight.

People evacuated

1,284

across 21 relief centres in 7 districts · nobody has died

Deadliest flood

238 deaths

Tropical Storm Greg, Sabah, Dec 1996 · another 102 never found

Costliest flood

RM6.1b

December 2021, DOSM estimate · 0.4% of that year's GDP

Fastest catchment

4 hours

Sungai Langat: rain upstream reaches Kajang the same afternoon

Most flood-prone river

Sungai Klang

shortest major river here, and comes over its bank roughly once a year

Wettest catchment

312 mm

fell upstream of Kuala Krai in 24 hours

How much warning each town gets

Small, steep catchments flash-flood: Sungai Langat drains 389 km² and gives Kajang four hours. The Rajang drains 50,000 km², so Sibu sees the peak a day and a half after the rain that caused it.

StationCatchmentRain upstreamWarning time
Kuala Krai11,000 km²312 mm
14 h
Lubuk Paku25,600 km²198 mm
26 h
Sibu50,000 km²164 mm
38 h
Rantau Panjang1,652 km²121 mm
9 h
Kuala Berang2,900 km²143 mm
11 h
Kajang389 km²38 mm
4 h

Lag from catchment-mean rainfall to peak stage, from past events.

Malaysia's major rivers

Length is the textbook fact, discharge is how much water actually moves, and the last column is the one that matters if you live beside it. Read the bottom row: the Klang is the shortest river here, drains the smallest catchment, and carries the least water — and it floods almost every year, because its basin is steep, paved over, and home to eight million people.

RiverStatesLengthBasinDischargeFloods / decadeFlood-prone
Batang RajangSarawak
563 km
50,000 km²3,600 m³/s
6
Frequent
Sungai KinabatanganSabah
560 km
16,800 km²840 m³/s
5
Frequent
Sungai PahangPahang
459 km
29,300 km²600 m³/s
7
Frequent
Sungai BaramSarawak
400 km
22,100 km²1,800 m³/s
4
Occasional
Sungai PerakPerak
400 km
14,908 km²500 m³/s
3
Occasional
Sungai MuarJohor, N. Sembilan
250 km
6,150 km²190 m³/s
4
Occasional
Sungai KelantanKelantan
248 km
13,100 km²560 m³/s
8
Very frequent
Sungai KlangSelangor, KL
120 km
1,288 km²50 m³/s
9
Very frequent

Lengths, basins and mean discharges from the published hydrological literature. Not a longest-rivers ranking: several long Bornean rivers (Segama, Lupar, Labuk) are too thinly documented to table. Flood frequency is major floods per decade, from the historical record.

Half a century of deadly floods

Ranked by confirmed deaths, with today at the bottom for scale. Storm Greg in 1996 killed the most people, December 2021 cost the most money, and December 2014 displaced the most. Duration runs from the first evacuation to the last relief centre closing — the number that decides whether a family misses a week of school and wages, or a month of them. The record reaches further back still: the 1926 Great Flood and 1967's Bah Merah in Kelantan killed dozens to hundreds, but their counts are too uncertain to table.

EventStatesDeathsPeople evacuatedLastedDamage
Dec 1996Sabah
238
4,000
5 daysRM 0.3b
Dec 2021Selangor, Pahang
54
71,000
14 daysRM 6.1b
Jan 1971Kuala Lumpur, Selangor
32
38,000
10 daysRM 0.2b
Dec 2014 – Jan 2015Kelantan, Terengganu, Pahang
21
232,000
20 daysRM 2.9b
Dec 2006 – Jan 2007Johor
18
148,000
21 daysRM 1.5b
Dec 2004Kelantan, Terengganu
11
10,000
8 days—
Jan 2021Pahang, Johor
8
50,000
12 days—
Nov 2017Penang
7
10,000
5 daysRM 0.4b
Mar 2023Johor
4
45,000
9 daysRM 0.3b
Dec 2023Kelantan, Terengganu
2
26,000
13 days—
TodayKelantan, Terengganu
0
1,284
3 days so far—

Deaths are confirmed counts; evacuees are the peak documented figure. Damage in billions of ringgit, unadjusted for inflation, shown only where an official or well-documented estimate exists.

Dec 1996

Tropical Storm Greg drove a wall of water and timber through Keningau overnight. Another 102 people were never found.

Dec 2021

Costliest on record: RM6.1 billion (DOSM). Taman Sri Muda sat under four metres of water for days.

Jan 1971

A national disaster declaration — and the Kuala Lumpur Flood Mitigation Project that redrew the city's rivers.

Dec 2014 – Jan 2015

Most people ever displaced. Kuala Krai and Dabong were cut off for days.

River lengths, basin areas and the death tolls of past floods are documented facts. Today's gauge readings, catchment lag figures and the station matrix are illustrative — JPS has no open API.

Air Quality

07

The air is heavy today.

Most of the monitored network sits in the Good band on the US EPA scale. That is worth reading twice: “Good” here still permits PM2.5 above the level the World Health Organization says is safe over 24 hours.

0%

of the monitored city population is breathing Good air right now

PENINSULAR MALAYSIAEAST MALAYSIA (BORNEO)JohorKedahKelantanKuala LumpurMelakaNegeri SembilanPahangPenangPerakPerlisSabahSarawakSelangorTerengganuKota Bharu: AQI 71Kota BharuGeorge Town: AQI 65George TownKota Kinabalu: AQI 63Kota KinabaluIpoh: AQI 69IpohKuantan: AQI 115KuantanKuala Lumpur: AQI 162Kuala LumpurPetaling Jaya: AQI 162Petaling JayaKuching: AQI 99KuchingJohor Bahru: AQI 158Johor BahruPanels shown at different scales.

US EPA AQI band

Good

Moderate

Unhealthy

CityUS EPA AQIPM2.5Band
Kuala LumpurKuala Lumpur
162
61 µg/m³Unhealthy
Petaling JayaSelangor
162
61 µg/m³Unhealthy
George TownPenang
65
13.6 µg/m³Moderate
IpohPerak
69
19.7 µg/m³Moderate
Johor BahruJohor
158
41.1 µg/m³Unhealthy
KuantanPahang
115
38.9 µg/m³Unhealthy
Kota BharuKelantan
71
17.3 µg/m³Moderate
KuchingSarawak
99
44 µg/m³Moderate
Kota KinabaluSabah
63
19.6 µg/m³Moderate

The vertical rule marks AQI 50 — the boundary between Good and Moderate. PM2.5 is coloured against the WHO's 24-hour guideline of 15 µg/m³.

Health advice

Air is unhealthy in Kuala Lumpur (AQI 162). Limit prolonged outdoor exertion, and keep windows shut through the afternoon.

Live data

CAMS atmospheric composition (ECMWF) via Open-Meteo Air Quality · retrieved 2026-10-12 22:43 UTC

Malaysia's own API (DOE) has no open API, so this is the US EPA AQI computed from CAMS concentrations. Bands are close to, but not identical with, DOE's. The 'Good air' share is weighted by the 2020 census population of these nine cities, not the whole country.

Did you know

The WHO halved its PM2.5 guideline in 2021.

The 24-hour limit fell from 25 to 15 µg/m³ and the annual limit from 10 to 5, because the evidence of harm at low concentrations had grown. National indices have largely not followed.

WHO global air quality guidelines (2021)

PM2.5 is small enough to enter the bloodstream.

Under 2.5 micrometres across — about a thirtieth the width of a human hair. It passes the airways entirely, reaches the deepest alveoli, and crosses into the blood.

World Health Organization; US EPA

Air pollution is the largest environmental health risk.

The WHO attributes around seven million premature deaths a year to ambient and household air pollution combined — more than road traffic, malaria and HIV together.

World Health Organization

Deep data

07.3

“Good” is a scale, not a verdict.

An air-quality index reports only its worst pollutant and hides the other five. It is also lenient about the one that kills: Kuala Lumpur sits at AQI 162, comfortably inside its band, while its PM2.5 runs at 61 µg/m³ — against a WHO 24-hour guideline of 15.

Dominant pollutant

PM2.5

closest to its WHO guideline in 9 of 9 cities

Above WHO guideline

8 of 9

cities exceed the WHO 24-hour PM2.5 limit of 15 µg/m³

Worst hour

19:00

national AQI peaks at 143 as traffic meets photochemical ozone

Worst month

Jul

3-year mean PM2.5 of 24.1 µg/m³

Cleanest month

Nov

15 µg/m³ · the monsoon rains scrub the sky

Months above WHO

11 of 12

even Malaysia's cleanest month sits at the 15 µg/m³ guideline

What the single number hides

All six pollutants behind each city's index. The rule marks the WHO's 24-hour PM2.5 guideline of 15 µg/m³. The last column names the pollutant sitting closest to its own WHO guideline — the one actually driving the number.

CityPM2.5 vs WHO limitPM10O₃NO₂SO₂COClosest to guideline
Kuala Lumpur
61
61380.634.93440PM2.5
Petaling Jaya
61
61380.634.92394PM2.5
George Town
13.6
13.93819.85426PM2.5
Ipoh
19.7
19.82611.74.2529PM2.5
Johor Bahru
41.1
44.44017.713.62231PM2.5
Kuantan
38.9
40.3413.91.91479PM2.5
Kota Bharu
17.3
17.4248.75.4401PM2.5
Kuching
44
45.21629.910.51049PM2.5
Kota Kinabalu
19.6
19.9238.53.71489PM2.5

PM2.5 and PM10 in µg/m³; ozone, NO₂ and SO₂ in µg/m³; CO in µg/m³. Surface concentrations from CAMS.

The daily cycle

The national mean AQI, hour by hour, today. Air is cleanest before dawn and worst in the late afternoon, when the traffic peak meets ozone cooked up by a day of sunlight.

The yearly cycle

Mean PM2.5 by month across 2023, 2024, 2025, with 2026 to date. The band is the range those years covered. Almost every month of the Malaysian year sits above the WHO guideline.

2026 to date

2023–2025 average

2023–2025 range

Mean PM2.5 by month, 2023–2026

Micrograms per cubic metre, averaged over the nine monitored cities. Cells above the WHO's 15 µg/m³ guideline are shaded — which is most of them.

Month202320242025Average2026vs average
Jan17.115.916.8
16.6
20.1+3.5
Feb17.618.218.8
18.2
17.7−0.5
Mar19.923.420.7
21.3
21.7+0.4
Apr25.519.518.5
21.2
21.9+0.7
May21.219.920.7
20.6
19.2−1.4
Jun23.321.624.4
23.1
19.6−3.5
Jul21.825.425.1
24.1
——
Aug21.520.622.4
21.5
——
Sep21.922.121.5
21.8
——
Oct22.719.117.9
19.9
——
Nov1514.815.1
15.0
——
Dec14.114.516.7
15.1
——

CAMS reanalysis. 2026 is blank for months not yet reached.

Who breathes what

Exposure weighted by the 2020 census population of these nine cities. This is a city figure, not a national one — most Malaysians live outside a monitored city.

BandSharePeople
Good (AQI 0–50)0%0.00m
Moderate (51–100)40%2.80m
Unhealthy (101+)60%4.16m

Bands follow the US EPA scale, which is more permissive than the WHO guideline.

Live data

CAMS atmospheric composition (ECMWF) via Open-Meteo Air Quality · retrieved 2026-10-12 22:43 UTC

Pollutants and AQI are CAMS reanalysis. The monthly PM2.5 climatology covers 2023, 2024, 2025 — CAMS coverage on this endpoint begins mid-2022, so earlier years are excluded rather than averaged from half-years.

Forests

08

A third of the tree cover, gone in a generation.

The forest is the hinge of everything else on this page. It cools the land, holds the rain back from the rivers, and stores the carbon that warms the air. Malaysia has cleared a great deal of it — though, for the first time, the clearing is slowing.

32%

of Malaysia's tree cover has been lost since 2001 — about 9.5 million hectares. But read that carefully.

What the number does and doesn't mean

That 9.5 Mha is tree cover loss — and it includes oil-palm and timber plantations being harvested and replanted, not only rainforest destroyed forever. The figure that matters for irreplaceable forest is humid primary forest loss: 2.85 million hectares, about 19% of what stood in 2001. Most of it is on Borneo — Sarawak and Sabah account for 56% of the national loss, Sarawak alone for 3.4 Mha.

2.85 Mha

primary rainforest lost

56%

of the loss is on Borneo

~90 Mt

CO₂/yr from peat alone

The rare good line on this page

The clearing is slowing.

Primary forest loss peaked around 2016 at some 185,000 hectares a year and has fallen by more than half since — to about 73,000 hectares — helped by no-deforestation commitments from the palm-oil industry and tighter fire control. In 2024 Malaysia dropped out of the world's top ten for tropical primary-forest loss for the first time. The caution: the easiest lowland forest is already gone, and millions of hectares remain earmarked for conversion.

Documented, not a live feed. “Tree cover loss” includes plantation harvest and fire, not only permanent deforestation — the primary-forest figure is the honest measure of rainforest destroyed.

Did you know

“Tree cover loss” is not the same as “deforestation.”

The headline satellite figure counts every canopy that disappears — including oil-palm and timber plantations being harvested and replanted, and fire. Only a part of it is permanent loss of natural forest. It is the single most misread number in this field.

Global Forest Watch methodology

A drained peat swamp keeps emitting for decades.

Malaysia's peatlands hold centuries of carbon in waterlogged ground. Drain them for plantation and the exposed peat oxidises and burns, releasing carbon long after the trees are gone — which is why peat degradation alone makes Malaysia one of the world's largest peat emitters.

Peer-reviewed peatland studies; WRI

The forest and the flood are the same story.

A bare, logged catchment cannot hold rain the way forest does, so it arrives downstream faster and higher. Logging in the Ulu Muda catchment was tied to the 2022 flash floods that cut water to over 170,000 households.

Mongabay; Department of Irrigation and Drainage

Deep data

08.3

Who is doing the clearing is genuinely contested.

Two credible methods disagree about the biggest driver of Malaysia's deforestation. An honest page shows both rather than picking the convenient one.

By GFW's global model

Oil palm

Commodity-driven clearing — historically oil-palm-dominant — is the largest cause in GFW's classification, with pulp and timber plantations second.

By concession mapping

Timber plantations

Analyses that map permanent loss against concession boundaries attribute the majority — around three-quarters of 2017–2021 deforestation — to industrial timber, especially in Sarawak.

They differ because they measure differently — a global land-use model versus concession-boundary mapping — and over different years. Peatland conversion runs through both. What is not in dispute: the loss is real, it is largely permanent where primary forest is cleared, and it links straight to the floods, the haze and the heat on the rest of this page.

The smaller frontiers: durian, and the highlands

Neither big driver is durian — but the Musang King boom has opened its own front. A hectare of export-grade durian can earn roughly 9 times what oil palm does, with China buying almost all of it, and that maths pushes orchards into forest. The sharpest case: Pahang degazetted about 1,213 hectares of the Hulu Sempan forest reserve — a water catchment and Malayan-tiger corridor — and leased it for durian; Kelantan has approved thousands of acres more around Gua Musang. In the highlands it is vegetables: Cameron Highlands has lost roughly 30% of its forest since 1990, some 5,900 hectares now under farms on slopes that then slide in the monsoon.

Keep the scale honest, though. Set against oil palm and timber these are small — hundreds to thousands of hectares, not millions — and no satellite dataset breaks “durian” out from generic commodity clearing, so they are documented from news, NGO and state records rather than the loss accounting above. What makes them matter is not their area but where they cut: the catchments, the tiger corridors, the steep ground that fails when the trees come off it.

The 50% that may not be 50%

Malaysia pledged at Rio in 1992 to keep at least 50% of its land under forest and tree cover, and officially reports 54.6% today. But that figure counts rubber and oil-palm as “tree cover,” so the share of actual natural forest is lower — and independent analysis warns that land already earmarked for conversion could push the real figure below the pledge. The number is true; what it counts is the argument.

Documented, not a live feed. “Tree cover loss” includes plantation harvest and fire, not only permanent deforestation — the primary-forest figure is the honest measure of rainforest destroyed.

Energy

09

Malaysia runs on gas and coal — and has promised to quit.

Everything above is what the climate is doing. This is what Malaysia is doing back. Its power still comes mostly from fossil fuels, but it has pledged net zero by 2050 — and it sits under a resource it has barely begun to use.

78%

of Malaysia's electricity is still generated by burning coal and gas. Renewables are almost all hydropower; solar, for all its promise, is barely 4%.

Electricity generation, by source

46%
32%
18%

Coal · 46%

Gas · 32%

Hydro · 18%

Solar & other · 4%

Approximate 2024 generation shares. The two greys are fossil — together about 78% of the grid. The pledge is to invert this: renewables from 31% of installed capacity today to 70% by 2050, and net-zero emissions by 2050.

2050

the year Malaysia has pledged net-zero greenhouse emissions

31%

renewables in the installed-capacity mix — the 2025 target, met on time

70%

renewable capacity by 2050, the long-range target (via 40% in 2035)

45%

cut in emissions intensity vs 2005, pledged by 2030 (Malaysia's NDC)

The Sarawak question

Sarawak's grid is 70% hydro — but it is not net zero.

Sarawak is often called green, and its electricity nearly is: mega-dams like Bakun (2,400 MW) give it one of the cleanest grids in Southeast Asia, and it targets net zero by 2050. But a clean grid is not a clean economy. Sarawak is one of the world's largest LNG exporters — the emissions leave in the ships — and among the most deforested places on Earth.

Nor is the hydro itself free of cost. Filling the Bakun reservoir drowned about 700 km² of rainforest — roughly the size of Singapore — and displaced some 10,000 Orang Ulu from their longhouses. “Renewable” and “just” are not the same word, and the gap between a green grid and a green economy is the whole argument.

The one resource Malaysia is not short of.

Solar is the fastest-growing part of the mix, and the reason is overhead all year. The country receives about 1,799 kWh/m² of sun a year — moderate, because cloud takes roughly a quarter of it, and the drier north catches more than the south.

PENINSULAR MALAYSIAEAST MALAYSIA (BORNEO)Johor: 4.6Kedah: 5.0Kelantan: 5.2Kuala Lumpur: 4.8Melaka: 4.8Negeri Sembilan: 4.9Pahang: 4.9Penang: 5.1Perak: 4.9Perlis: 5.0Sabah: 5.0Sarawak: 4.8Selangor: 4.8Terengganu: 5.1JHR4.6KDH5.0KTN5.2KUL4.8MLK4.8NSN4.9PHG4.9PNG5.1PRK4.9PLS5.0SBH5.0SWK4.8SGR4.8TRG5.1Panels shown at different scales.

Peak sun hours (kWh/m² per day)

4.65.2

Sunlight through the year

Daily average reaching the ground. February and March are brightest; the northeast monsoon dims the year's end.

StateSun per year (kWh/m²)
Kelantan5.2 kWh/m²/day · 23% lost to cloud
1,880
Penang5.1 kWh/m²/day · 23% lost to cloud
1,850
Terengganu5.1 kWh/m²/day · 24% lost to cloud
1,846
Perlis5.0 kWh/m²/day · 25% lost to cloud
1,840
Kedah5.0 kWh/m²/day · 25% lost to cloud
1,840
Sabah5.0 kWh/m²/day · 28% lost to cloud
1,821

Solar irradiance is a real satellite-derived measurement. The generation mix, targets, capacity, programme and Sarawak figures are documented from Ember, the Energy Commission, SEDA and Sarawak Energy — real but static, with no open feed. No official count of solar households is published, so none is shown.

Did you know

The equator is not the sunniest place for a solar panel.

Malaysia is bathed in sun but wrapped in cloud, so it receives about 1,800 kWh/m² a year — roughly a quarter less than a clear desert like the Sahara or the Australian outback. The heat that makes it feel tropical is not the same as the light a panel converts.

NASA POWER satellite climatology

Malaysia's roofs could hold ten times today's solar.

The Energy Commission puts the country's rooftop potential at about 42 GW. Total installed solar — rooftops and farms together — is under 6 GW, and solar still supplies only around 2% of the electricity generated.

SEDA MyRER; Energy Commission (Suruhanjaya Tenaga)

A panel's yield is measured in “peak sun hours.”

Malaysia averages roughly 4.9 of them a day — the number of hours of full-strength sun the day's total light adds up to. It is why a rooftop system here typically pays for itself in about five years.

NASA POWER; SEDA

Deep data

09.3

A vast resource, barely tapped.

Malaysia's roofs alone could hold about 42 GW of solar; it has installed under 6 across everything — rooftops and farms — and solar still generates only around 2% of the country's electricity. The gap between the sun overhead and the panels beneath it is the whole story.

5.78 GW

solar installed, end of 2025 — farms and rooftops together

1.72 GW

on rooftops — about 4% of the 42 GW they could hold

~2%

of electricity generated — the mix is still gas and coal

42 GW

of rooftop potential sits unused — over ten times today's rooftops

The build-out, round by round

The Large Scale Solar programme auctions capacity in rounds. Each has been bigger than the last — LSS5 and LSS6 together dwarf everything built before them, and most of that capacity is still under construction.

RoundYearCapacity awarded
LSS12016
354 MW
LSS22017
465 MW
LSS32019
491 MW
LSS42020
823 MW
LSS52024
1,920 MW
LSS62025
1,975 MW

Awarded capacity per round, MW. Source: Energy Commission (Suruhanjaya Tenaga).

The biggest plants, built and building

Malaysia's largest solar farms are still going up — the record-holders in Perak and Kedah won't switch on until 2026–2028. The biggest already operating is a floating array on a Kelantan reservoir.

PlantCapacityStatus
Larut & MatangPerak · Solarvest (LSS5+)690 MWBuilding · 2028
Bukit SelambauKedah · TNB (LSS5)500 MWBuilding · 2026
Danau Tok UbanKelantan · Cypark98 MWOperating
Sungai Petani (floating)Kedah · LSS50 MWOperating

Documented from developer and Energy Commission announcements. MW is peak capacity.

How a household plugs in

The scheme changed in 2025: net metering (NEM) closed to new applicants, and Solar ATAP took its place from January 2026. A typical 4–6 kW home system costs RM16,000–24,000 and pays for itself in about 5 years. How many homes have gone solar is not something Malaysia publishes — only the installed capacity, 1.72 GW of rooftops, is on the record.

SchemeStatusWhoWhat it offers
Solar ATAPCurrentHouseholds (5–15 kW) & businessSelf-use, surplus exported to the grid as a bill offset. 10-year term. Replaced NEM from 1 Jan 2026.
SelCo (self-consumption)CurrentAny consumerGenerate and use 100% on-site, nothing exported — no grid credits, no quota.
NEM 3.0Closed Jun 2025Households & businessOne-to-one net metering. Closed to new applicants; existing 10-year contracts continue.
GITA / GITECurrent (business)Companies, not homeownersGreen tax allowance on solar capex — a corporate incentive, not a residential one.

Administered by SEDA; TNB installs the meter and applies the credit. Documented, current mid-2026.

Solar irradiance is a real satellite-derived measurement. The generation mix, targets, capacity, programme and Sarawak figures are documented from Ember, the Energy Commission, SEDA and Sarawak Energy — real but static, with no open feed. No official count of solar households is published, so none is shown.

Sea Level

10

The coast is the slow emergency.

Heat and floods arrive and pass. The sea only comes in. It is rising a few millimetres a year around Malaysia — imperceptible day to day, decisive over a lifetime — and most of the country's cities, ports and rice sit within a metre or two of the tide.

~4 mm

of sea level rise a year around Malaysia, faster on the west coast (~5) than the east (~3.3). Slow — until you add it up over decades.

How far it could rise by 2100

Malaysia's national water institute, NAHRIM, projects roughly 0.5–1.1 m of rise by 2100, depending on the coast — highest for Sabah and the northern peninsula. The IPCC's global median is a little lower (0.4–0.8m); NAHRIM's figure sits at the high, trend-extrapolated end. Either way, a metre of rise would put about 7,000 km² of land and 180,000 hectares of farmland below the tide, if nothing is built to hold it back.

0.5–1.1 m

NAHRIM, by 2100

7,000 km²

land below a 1 m rise

13%

of coastal land threatened

Which coast goes first.

Not every coast is equal. Ranked by the share of developed land at risk of inundation, the flat, subsiding delta of Batu Pahat in Johor tops the country — nearly all of it — followed by the Klang port coast and the Kedah padi plain. Figures combine sea-level rise with tide, surge and land subsidence, so they read higher than rise alone.

PENINSULAR MALAYSIAEAST MALAYSIA (BORNEO)JohorKedahKelantanKuala LumpurMelakaNegeri SembilanPahangPenangPerakPerlisSabahSarawakSelangorTerengganuKuala Kedah: 39% of developed area at riskKuala KedahKuala Terengganu: 5% of developed area at riskKuala TerengganuKota Kinabalu: 4% of developed area at riskKota KinabaluPort Klang: 41% of developed area at riskPort KlangKuching: 3% of developed area at riskKuchingBatu Pahat: 100% of developed area at riskBatu PahatPanels shown at different scales.

Developed area at risk

3%100%
StateDeveloped area at risk
Batu PahatJohor · flat, subsiding delta — nearly all at risk
100%
Port KlangSelangor · busiest port; already floods on high tides
41%
Kuala KedahKedah · padi plain; saltwater already intruding
39%
Kuala TerengganuTerengganu · east-coast river delta
5%
Kota KinabaluSabah · low reclaimed waterfront
4%
KuchingSarawak · peat delta; held by the barrage
3%

Documented, not a live feed. Projections are model-dependent ranges, not points. “Areas at risk” combines sea-level rise with tide, surge and subsidence — it is not a pure sea-level map.

Did you know

The sea is not rising evenly.

Winds, currents and the land's own sinking make some coasts rise faster than others. Around Malaysia the west coast is climbing quicker than the east, and reclaimed, subsiding ground like Port Klang feels it worse than the tide gauge alone suggests.

NAHRIM; peer-reviewed tide-gauge and altimetry studies

A slow rise arrives as sudden floods.

Sea level rise is measured in millimetres a year, but it is not felt that way. It is felt when a spring tide, a storm surge and a swollen river coincide on top of a higher baseline — and water reaches streets it never used to.

IPCC AR6, Working Group I

The threat is already in the padi.

Before the coast floods, the salt arrives. Saltwater has pushed into rice fields around Kuala Kedah, where farmers report losing most of a harvest to salinity — a first taste of a coastline moving inland.

Peer-reviewed field studies, Kedah

Deep data

10.3

It is already here, quietly.

Sea level rise does not wait for 2100 to be felt. It shows up first as tidal flooding on the busiest port, and as salt in the rice.

Port Klang

already floods on high spring tides — “rob” flooding on Malaysia's busiest port

Kuala Kedah

saltwater has pushed into the padi; farmers report losing most of a harvest to salinity

Kuching Barrage

holds seawater back from a city built low on a peat delta — for now

None of this is a live gauge — it is documented from NAHRIM's national study, from peer-reviewed tide-gauge work, and from field surveys of affected districts. The exact water on an exact street in 2075 is unknowable; the direction is not.

Documented, not a live feed. Projections are model-dependent ranges, not points. “Areas at risk” combines sea-level rise with tide, surge and subsidence — it is not a pure sea-level map.

Map Explorer

11

Every layer of the country.

Switch between six live layers. The whole country repaints — darker means more of whatever you are looking at. Click any state to pin its numbers.

PENINSULAR MALAYSIAEAST MALAYSIA (BORNEO)Johor: +0.4Kedah: +0.8Kelantan: +0.6Kuala Lumpur: +0.7Melaka: +0.1Negeri Sembilan: +0.6Pahang: +0.8Penang: +0.7Perak: +1.5Perlis: +0.3Sabah: +1.8Sarawak: +0.4Selangor: +0.4Terengganu: +1.0JHR+0.4KDH+0.8KTN+0.6KUL+0.7MLK+0.1NSN+0.6PHG+0.8PNG+0.7PRK+1.5PLS+0.3SBH+1.8SWK+0.4SGR+0.4TRG+1.0Panels shown at different scales.

Anomaly vs the 1991–2020 average

Temperature

+0.1+1.8

Did you know

Counts follow area. Densities follow climate.

Shading a map by a raw total mostly maps how big each region is — the oldest error in thematic cartography. It is why this page reports rainfall as percent of normal and heat as an anomaly, not as raw totals a big state would always win.

Monmonier, How to Lie with Maps

A UV index of 11 is “extreme” — the top of the scale.

The Global Solar UV Index was designed by the WHO, WMO, UNEP and ICNIRP as a public warning. Near the equator, midday sun reaches the extreme band routinely rather than exceptionally.

WHO, Global Solar UV Index: A Practical Guide

UV rises about 10% for every 1,000 metres of altitude.

Reflection is the misunderstood part: fresh snow bounces back up to 80% of it — nearly doubling exposure — while dry sand returns only about 15% and open water under 10%. And thin cloud passes most of the ultraviolet through while blocking the warmth that would warn you.

World Health Organization

Deep data

11.3

Six layers, thirteen states and the capital, at once.

The map shows one layer at a time, which is how you read a map and how you miss a correlation. The table shows all six together. Kelantan is the wettest and most flood-prone state — and also has the cleanest air and the lowest UV, because the clouds that flood it also shade it.

StateTemp anomalyRainfallFlood risk*APIUV
+1.8°
69%
44
638.9
+1.5°
118%
34
698.8
+1.0°
68%
71
1248.9
+0.8°
141%
24
598.2
+0.8°
73%
66
1158.9
+0.7°
127%
30
657.6
+0.7°
102%
22
1626.6
+0.6°
105%
82
718.5
+0.6°
66%
26
1487.7
+0.4°
166%
28
1628.2
+0.4°
66%
58
1588.3
+0.4°
42%
62
999.1
+0.3°
138%
18
308.5
+0.1°
79%
20
1539

Sorted by the layer currently selected above. Click a state on the map to pin it. *Flood risk is illustrative — no open feed publishes it.

Live data

ERA5 reanalysis (ECMWF / Copernicus) via Open-Meteo · retrieved 2026-10-12 22:43 UTC

Temperature anomaly, rainfall and UV are live (Open-Meteo + ERA5 baseline); AQI is CAMS. The flood-risk index is illustrative — JPS publishes no open feed.

Historical Replay

12

Two decades in one slider.

Scrub through twenty-one years of Malaysian climate. Watch the baseline drift upward — what counted as an unusually hot year in 2005 is an ordinary one now.

2026

Temperature anomaly

+1.0°C

Rainfall vs normal

81%

20052026

2026. Year to date — 188 days measured against the same days' 1991–2020 normal.

El Niño brings the heat. La Niña brings the floods.

Those year-to-year jumps in the line above are not random. Most of them are the Pacific breathing in and out — the El Niño–La Niña cycle, the single biggest driver of Malaysia's rainfall and heat from one year to the next. The warming trend rides on top: an El Niño lands on an already-hotter baseline, which is how a merely moderate one set the 2024 record.

El Niño · hotter & drier

Drought, water rationing, haze

  • 1997–98. The Klang Valley went on alternate-day water rationing for months — about 3.2 million people — Sarawak declared a haze emergency, and Chuping hit 40.1°C, still Malaysia's highest reading ever.
  • 2015–16. A “super” El Niño: seven dams fell below half full, rationing returned, and transboundary haze closed schools and grounded flights.
  • 2023–24. Only a moderate El Niño, but landing on a warmer baseline it pushed 2024 to the hottest year on record — in Malaysia and worldwide.

La Niña · wetter & cooler

Swollen monsoons, worse floods

  • 2010–11. Above-normal monsoon rain drove repeated east-coast floods across Johor, Kelantan and Pahang.
  • Dec 2021. La Niña rain plus a stalled tropical depression drowned the Klang Valley: 54 deaths and RM6.1 billion in damage, the costliest floods on record.
  • 2020–23. A rare “triple-dip” La Niña — three monsoon seasons of above-normal rain in a row.

This year

El Niño conditions are strengthening, forecast to peak around November 2026 – January 2027. So the season ahead leans hot and dry, not flooded — and, landing on the warmest baseline yet, METMalaysia has flagged 2026 as a candidate to break the heat record again.

Phase from NOAA Climate Prediction Center and METMalaysia advisories, June 2026. Past impacts from the documented record.

Did you know

The baseline itself moves every ten years.

When the WMO shifted normals from 1961–1990 to 1991–2020, the reference rose with the climate. A day that was “above normal” under the old baseline can be an ordinary day under the new one — without anything about the day changing.

World Meteorological Organization

ERA5 reaches back to 1940.

Eighty-five years of hourly weather, reconstructed from every observation the record holds — ships' logs, balloons, aircraft, satellites — and made physically consistent by a single model.

ECMWF / Copernicus Climate Change Service

El Niño is noise. The trend is the signal.

Individual years leap and dip with the El Niño–Southern Oscillation, which redistributes heat between the ocean and the air. Warming is the slope the leaps happen on, not any one of them.

NOAA; World Meteorological Organization

Deep data

12.3

The baseline moved, so the record moved with it.

2016 was the El Niño year that broke thermometers, forced water rationing, and dominated the news. Its anomaly was +1.1°C. That is now cooler than an ordinary year. Nothing about 2016 changed — the ground beneath it did.

Warming since 2005

+0.6°C

2005 was +0.4°C; 2026 is running +1.0°C

Last decade vs the one before

+0.4°C

2016–2025 averaged +0.3°C against 2006–2015's -0.1°C

Warmest years

4 of 5

of the five warmest complete years fall in the last decade

Baseline

26.38°C

the 1991–2020 national mean, from 14 reference points

Decade by decade

The mean anomaly of each decade against the 1991–2020 baseline. The last full decade ran three times hotter than the one before it.

DecadeMean anomalyHottestWettest
2006–2015
+-0.07°C
20102008
2016–2025
+0.30°C
20162024

2025–2026 is a partial decade, and already the warmest.

The warmest years on record

Four of the five warmest years in this record have happened since 2023. The famous El Niño of 2016 now ranks fifth, and is falling.

RankYearAnomaly
12016
+0.7°C
22025
+0.6°C
32024
+0.6°C
42005
+0.4°C
52019
+0.4°C

Ranked by annual mean anomaly. 2026 is a year-to-date figure.

Live data

ERA5 reanalysis (ECMWF / Copernicus) via Open-Meteo · retrieved 2026-07-08 UTC

Each year's anomaly is the mean daily departure from that day's own 1991–2020 normal, over 14 state reference points. Event notes are documented history, not data.

Daily Archive

13

Every day, on the record.

Each day's national summary is archived — a growing public memory of what Malaysia's climate actually did, day by day.

12 October 2026

Elevated flood risk

Temperature

+0.7°C

vs historical average

Rainfall

173%

of normal, last 14 days

Good air

0%

of the population

DateTemp anomalyRainfallGood airFlood risk
11 October 2026+1.3°C145%0%Moderate
10 October 2026+1.1°C162%0%Elevated
9 October 2026+1.7°C63%0%Low
8 October 2026+1.7°C77%0%Low
7 October 2026+1.8°C55%0%Low

Did you know

One day is weather. Thirty years is climate.

The distinction is not rhetorical — it is the WMO's definition. A single hot day proves nothing on its own, which is exactly why the record has to be kept every day.

World Meteorological Organization

The current normal is already warmer than the one it replaced.

Measuring today against 1991–2020 is a conservative test. Against 1961–1990, the same day would look hotter still.

World Meteorological Organization

A small shift in the average is a large shift in the extremes.

Move the whole distribution a little to the right and the tail moves a lot: records that used to arrive once a decade start arriving every few years. Averages are the least alarming way to state the problem.

IPCC Sixth Assessment Report, Working Group I

Deep data

13.3

One day is weather. Thirty is a pattern.

Any single day can be dismissed. The archive exists so that no one has to argue from memory: here is every day of the last month, and every month of the year so far, in the same units.

Days above average

30 of 30

days in the last month warmer than their own 1991–2020 normal

Hottest day

+2°C

on 2026-09-29, against that day's normal

Wettest day

192%

of normal, on 2026-09-27

Months so far

10

of 2026 measured against the ERA5 baseline

Thirty days of anomaly

Every day of the last month, measured against that same day's 1991–2020 normal. Not against the annual mean — against the 8th of July, or the 12th of June, as those days behaved across thirty years.

2026-09-13 · +1.7°C2026-10-12 · +0.7°C

This year, month by month

Each month against its own place in the calendar. Rainfall is measured against the normal accumulated over exactly the days observed, so a part-month is still comparable.

MonthTemp anomalyRainfall vs normal
January
+1.0°C
41%
February
+0.8°C
113%
March
+1.2°C
38%
April
+1.2°C
72%
May
+0.9°C
106%
June
+0.9°C
114%
July
+0.9°C
103%
August
+1.9°C
53%
September
+1.5°C
101%
October
+1.5°C
86%

ERA5 reanalysis. The final row is a month-to-date figure.

Live data

ERA5 reanalysis (ECMWF / Copernicus) via Open-Meteo · retrieved 2026-10-12 22:43 UTC

Daily anomalies and monthly aggregates are computed against each day's own 1991–2020 normal. Good-air and flood-alert day counts are not available historically and are shown as zero.