In general the best time to visit Surabaya is probably July, August, September, when the weather is usually great. The hottest months are September, October, November, while the coldest months are January, February, March.
Depending on the activities you want to experience, you may choose different months to visit:
The best time for a sunbathing holiday is September, October, November. Average maximum temperatures are up to +33°C in October and it has 5 sunny days on average.
In general, it’s pleasant to walk and do outdoor activities during January - December.
If you want to avoid wet weather, then your choice is January, February, March with the lowest chance of rain.
Average weather in Surabaya in different months
This is the average weather in Surabaya for each month based on historic data:
In July, August, September the weather is great. There are an average of 13 sunny days in August and the temperature ranges from +24°C to +31°C.
June, October usually has good weather. Average maximum temperature reaches +33°C during October.
In January, February, March, April, May, November, December the weather is average. Expect around 157 rainy days, and the precipitation amounts to approximately 261 mm in January.
Climate in Surabaya
Here is the detailed breakdown of the climate in Surabaya for each month:
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
Maximum Temperature
+35°C
+34°C
+35°C
+35°C
+35°C
+35°C
+34°C
+34°C
+36°C
+37°C
+37°C
+36°C
Average Maximum Temperature
+31°C
+30°C
+31°C
+31°C
+31°C
+31°C
+31°C
+31°C
+32°C
+33°C
+32°C
+31°C
Minimum Temperature
+23°C
+22°C
+23°C
+23°C
+22°C
+22°C
+21°C
+20°C
+21°C
+20°C
+23°C
+23°C
Avg. water temperature
-
-
-
-
-
-
-
-
-
-
-
-
Humidity, %
83
83
82
81
77
76
73
70
68
69
75
80
Rain, mm
261
241
241
171
84
48
21
7
22
71
175
248
Snow, mm
0
0
0
0
0
0
0
0
0
0
0
0
Average wind speed, m/s
2
2
1
1
1
1
2
2
2
2
1
1
Sunny Days
0
0
0
1
5
6
10
13
9
5
1
0
Cloud Days
0
0
0
1
5
7
10
11
10
5
1
0
Rainy Days
25
23
23
21
18
15
10
7
10
19
23
24
Snowy Days
0
0
0
0
0
0
0
0
0
0
0
0
Average Temperature
Here are the average maximum and minimum temperatures in Surabaya during the whole year:
The hottest month in Surabaya is October with average maximum temperature going up to +33°C. The coldest month is February with the lowest temperatures of +25°C.
Humidity
The temperature feels different depending on humidity. Here is how humidity in Surabaya looks throughout the year, in %:
The most humid month in Surabaya is February with average humidity going up to 83%. The least humid month is September with an average humidity of 68%.
Rain
Amount of rainfall in mm. in Surabaya during the whole year based on historical data:
The sunniest and driest month is August with approximately 13 sunny days and a total precipitation of around 7 mm. The rainiest and wettest month is January with approximately 25 rainy days and 261 mm of total precipitation.
FAQ
Frequently asked questions about the weather in Surabaya:
What is the hottest month in Surabaya?
The hottest month in Surabaya is October with average maximum temperature of +33°C.
What is the coldest month in Surabaya?
The coldest month in Surabaya is February with minimum temperatures of +25°C.
Is Surabaya worth visiting in winter?
Winter in Surabaya could be a good time to visit, as the weather is generally ok.
When does it rain the least in Surabaya?
if you're looking to visit Surabaya when it rains the least, you should plan your trip for January, December, March. During this time, rainfall is rare with the driest month being August with only 7 mm of rain.
Other cities in Indonesia
Check out the weather for other cities in Indonesia.
For this page, we’ve looked at the typical weather in Surabaya, based on historical hourly weather data from January 1, 1979, to December 31, 2023.
For past dates, we show actual recorded data at the location at that time. Forecasts are based on recorded weather during that day of the year, averaged over the total years for which we have records (unless stated otherwise). The daily temperature is the highest recorded temperature in the shadow during that day.