CompareSG

Does it really rain more in the west?

Pick your area and see how much rain fell at its nearest weather station, 2022 to 2024.

27 planning areas where people live, A to Z

How much rain does my area get?

Each tube is one area, from the west on the left to the east on the right. A taller tube means more rain a year. Hover or tap a tube for details, and click to pick it.

Is the west really wetter?

Each bar is the average yearly rain of the areas in one of URA's five regions, 2022 to 2024. Your area's region is in red.

Areas in the West region got about 37% more rain a year than areas in the East region (3,214 mm against 2,354 mm).

Was it the same every year?

The West and East region averages for each year, with your area beside them. 2 Jan to 9 Jan 2023 is missing for every station, so 2023 reads a little low everywhere.

Where is it driest?

Each circle is a weather station: bigger and darker means more rain. Your area is shaded, and the line runs to the station we use for it. Hover or tap a circle or an area.

The five driest areas are Bedok, Geylang, Marine Parade, Pasir Ris and Kallang, and all five sit east of the city centre.

Fun finds

The short version

From 2022 to 2024, areas in Singapore's West region got about 37% more rain a year than areas in the East region (3,214 mm against 2,354 mm), but the driest areas are a cluster east of the city centre, not the whole east.

What we did. We added up NEA's 5-minute rain readings for 2022 to 2024 at 50 weather stations, 15.4 million readings in all. Then we matched each of 27 planning areas where people live to its nearest station, and compared areas across URA's five regions: West, North, North-East, Central and East.

What we found. The West region was the wettest and the East region the driest, and the West came out ahead in each of the 3 years. Jurong West got 1.7 times as much rain as Bedok (3,516 mm a year against 2,077 mm), and the five driest areas, Bedok, Geylang, Marine Parade, Pasir Ris and Kallang, all sit east of the city centre. The north-east has wet spots too: Serangoon got more rain than 9 of the 10 Central areas.

What to keep in mind. These are readings from one station near each area, so they are a good guide rather than a doorstep reading. Rain can differ from street to street, some stations have gaps, and three years is a short window. We show where the rain fell, not why. Use the picker to see your own area, then check the numbers and the boring bit below.

By Ben (opens in a new tab). Updated . Data: NEA, Historical Rainfall across Singapore (2022 to 2024), data.gov.sg.

Questions people ask

Does it really rain more in the west of Singapore?

Yes, from 2022 to 2024. Areas in the West region averaged 3,214 mm of rain a year at their nearest weather station, against 2,354 mm in the East region, about 37% more. The West was ahead in each of the 3 years. It is not true for every area, though: the driest areas cluster east of the city centre, and the north-east has wet spots.

Which part of Singapore rains the most?

In our figures for 2022 to 2024, the West region, with 3,214 mm a year on average, followed by the North (2,996 mm), the North-East (2,820 mm) and Central (2,753 mm). The wettest single area was Jurong West, at 3,516 mm a year.

Where is the driest place in Singapore?

Of the 27 areas we looked at, Bedok was the driest, at 2,077 mm a year from 2022 to 2024. The five driest were Bedok, Geylang, Marine Parade, Pasir Ris and Kallang, all east of the city centre. Jurong West, the wettest, got 1.7 times as much.

How much rain does Singapore get in a year?

It depends where you are. From 2022 to 2024, the yearly rain at the station nearest each area ran from 2,077 mm (Bedok) to 3,516 mm (Jurong West). The middle area got 2,961 mm. Use the picker at the top to see your own area.

How many rainy days does Singapore have in a year?

Between 186 and 227, depending on the area. Clementi averaged 227 rainy days a year from 2022 to 2024 and Bedok 186, a gap of 41 days. We count a day as rainy when the station recorded at least 0.2 mm.

Is the east always drier than the west?

No. Serangoon, in the North-East region, averaged 3,151 mm a year, more than 9 of the 10 areas in the Central region. The real dry patch is the cluster of areas east of the city centre, led by Bedok.

How was the rain measured?

By NEA's automatic weather stations. Each one records how much rain fell every 5 minutes. The files for 2022 to 2024 on data.gov.sg hold 20.3 million readings from 78 stations. We kept the 50 stations that had at least 90% of the possible readings in every one of the 3 years.

Why do some areas show the same rainfall?

They share a weather station. The 27 areas use 24 stations, so Bishan and Serangoon read the same one. The farthest an area sits from its station is 2.8 km (Bedok), and the page flags any area 2.5 km or more away.

Can I trust the weather station nearest my home?

It is a good guide, not a doorstep reading, because rain can differ from street to street. 22 of the 27 areas are within 2 km of their station, and 2 are flagged as farther than most. The distance is shown for every area.

Why is the west wetter?

This page shows where the rain fell, not why. Weather stations measure rain, not its causes, so we do not claim a reason.

The numbers behind it

Yearly rain at the station nearest each area, 2022 to 2024 (wettest first)
AreaRegionNearest stationDistanceAverage a year202220232024Rainy days a year
Jurong WestWestJurong West Street 730.8 km3,516 mm3,7003,5343,315200
SembawangNorthWoodlands Drive 622.5 km3,257 mm3,5893,0283,154216
ClementiWestSunset Way0.9 km3,246 mm3,3893,2353,116227
Bukit BatokWestBukit Batok Street 341.1 km3,160 mm3,2803,1643,035214
Bukit PanjangWestBukit Batok Street 342.5 km3,160 mm3,2803,1643,035214
Choa Chu KangWestBukit Batok Street 342.3 km3,160 mm3,2803,1643,035214
BishanCentralAng Mo Kio Avenue 101.6 km3,151 mm3,3173,0843,051210
SerangoonNorth-EastAng Mo Kio Avenue 101.7 km3,151 mm3,3173,0843,051210
Bukit MerahCentralHenderson Road1.6 km3,054 mm3,0533,0883,020203
Ang Mo KioNorth-EastLower Peirce Reservoir2.0 km3,046 mm3,4933,0002,645218
Jurong EastWestOld Toh Tuck Road2.7 km3,042 mm3,0693,1432,914217
QueenstownCentralKent Ridge Road0.5 km3,033 mm3,2943,0972,708211
Bukit TimahCentralClementi Road1.6 km3,016 mm3,1463,0972,806218
TanglinCentralBukit Timah Road1.2 km2,961 mm3,1782,9792,725216
YishunNorthYishun Ring Road1.1 km2,927 mm3,6632,4182,701211
HougangNorth-EastHougang Avenue 10.8 km2,895 mm3,0702,7792,835187
Toa PayohCentralToa Payoh North1.6 km2,831 mm2,8982,9452,651215
WoodlandsNorthWoodlands Avenue 90.4 km2,804 mm3,2262,3192,867212
TampinesEastTampines Avenue 51.1 km2,580 mm2,7672,4142,560188
PunggolNorth-EastPunggol Central0.3 km2,538 mm2,9462,3132,354202
NovenaCentralScotts Road1.8 km2,537 mm2,5822,5222,506208
SengkangNorth-EastCompassvale Lane1.2 km2,472 mm2,7502,2822,384203
KallangCentralNicoll Highway1.1 km2,430 mm2,5342,5472,210200
Pasir RisEastPasir Ris Street 511.5 km2,405 mm2,4972,4932,224193
Marine ParadeCentralPoole Road1.0 km2,364 mm2,4062,3642,323203
GeylangCentralGeylang East Central0.8 km2,153 mm2,4432,0301,986195
BedokEastMarine Parade Road2.8 km2,077 mm1,9932,2431,996186
Average yearly rain by URA region (average of the areas in each region), 2022 to 2024
RegionAreasAverage a year202220232024
West63,214 mm3,3333,2343,075
North32,996 mm3,4932,5892,907
North-East52,820 mm3,1152,6922,654
Central102,753 mm2,8852,7752,599
East32,354 mm2,4192,3832,260

The boring bit

Where the data comes from

NEA's Historical Rainfall across Singapore files for 2022, 2023 and 2024 on data.gov.sg, downloaded 3 Oct 2026: a rain reading every 5 minutes from each automatic weather station, 20.3 million readings from 78 stations in all. We kept the 50 stations that had at least 90% of the year's possible readings in each of the 3 years, which leaves 15.4 million readings. Areas are URA's Master Plan 2025 planning areas with at least 20,000 residents in the Census of Population 2020 (27 of 55), grouped by URA's five regions.

What is not claimed

  • A station is not your doorstep. Each area uses the one station nearest the middle of the area, and rain can differ from street to street.
  • Three years is a short window, not a long-run average. NEA says these files may have missing records and have not been through the quality control used for official climate records.
  • Every station is missing 2 Jan to 9 Jan 2023, so 2023 totals read a little low everywhere. The gap is the same for every station, so it does not change which areas are wetter.
  • East Coast Park recorded 787 mm on 21 Aug 2022 while no other station got more than 86 mm. We treat a day as a fault when it is over 100 mm and more than 3 times the next-wettest station that day. Two days, both at East Coast Park, were left out.
  • We do not say why the west is wetter. The data shows where rain fell, not its causes.
  • The population count from 2020 is used only to choose which planning areas appear in the picker.

Coverage

27 areas share 24 stations. 22 of the 27 are within 2 km of their station; the farthest is Bedok, at 2.8 km. Region averages give each area the same weight, even where two areas share a station.

Report an error. Corrections are logged publicly with a date.

How we did it
Data cleaningAggregationOutlier checkNearest-neighbour matchingDistance calculationGroup comparison
  1. Read every 5-minute reading for 2022 to 2024 and removed repeats of the same station and time.
  2. Added up each station's rain for each day, then counted rainy days (0.2 mm or more).
  3. Checked for faults. A day over 100 mm at one station and more than 3 times the next-wettest station was left out.
  4. Kept stations with at least 90% of readings in every year, then averaged their three yearly totals.
  5. Found the middle of each planning area from URA's boundaries and matched it to the nearest kept station with the haversine formula, the straight-line distance on the Earth's surface.
  6. Compared regions by averaging the areas in each of URA's five regions.
Show the Python code
import pandas as pd
from math import radians, sin, cos, asin, sqrt

df = pd.read_csv("HistoricalRainfallacrossSingapore2024.csv",
                 usecols=["timestamp", "station_id", "reading_value"])
df = df.drop_duplicates(["station_id", "timestamp"])
df["day"] = df.timestamp.str[:10]
daily = df.groupby(["station_id", "day"]).reading_value.agg(["sum", "count"])

# a fault: over 100 mm and more than 3x the next-wettest station that day
def faulty(day):
    top2 = day["sum"].nlargest(2)
    return (top2.iloc[0] > 100) and (top2.iloc[0] > 3 * top2.iloc[1])

yearly = daily.groupby("station_id").agg(mm=("sum", "sum"), readings=("count", "sum"))
kept = yearly[yearly.readings / (366 * 288) >= 0.90]

def km(a, b):
    la1, lo1, la2, lo2 = map(radians, (*a, *b))
    h = sin((la2-la1)/2)**2 + cos(la1)*cos(la2)*sin((lo2-lo1)/2)**2
    return 2 * 6371 * asin(sqrt(h))

What could make it wrong: a station that reads low or high, an area far from its station, or three unusual years. As a check, using only the strictest stations (95% of readings every year) the West still gets about 37% more rain than the East (3,248 mm against 2,378 mm).

No machine learning was needed. The questions were "how much" and "where", which adding up and measuring distance answer directly.

Sources: NEA Historical Rainfall across Singapore (2022 (opens in a new tab), 2023 (opens in a new tab), 2024 (opens in a new tab)), URA Master Plan 2025 Planning Area Boundary (opens in a new tab) and SingStat Census of Population 2020 (opens in a new tab), data.gov.sg, downloaded 3 Oct 2026. Contains information from data.gov.sg made available under the Singapore Open Data Licence.