When to visit
Surabaya?

Discover the best time of year, based on historical climate, temperature, and precipitation.

Surabaya
East Java · Indonesia

The best time to visit Surabaya is July, August, September, when the weather, flight prices, and crowds align.consistent weather climate

Climate score
September
84

Excellent climate

🌡Hot & dry

Temperature
24–32°C
Hot nights — A/C advised
Feels like
28–36°C
Humid
Precipitation
20mm
Light rain · 3 days
Sunshine
11.1h
Partly cloudy
Humidity (%)
67%
Humid
Annual Climate Analysis
Temperature, Rain & Feels Like
Rain
Actual Temp
Feels Like
20°30°40°50°JanFebMarAprMayJunJulAugSepOctNovDec
Advertisement
Tourist Crowds
Monthly visitor flow
87
High season
050100JanFebMarAprMayJunJulAugSep87OctNovDec
Monthly Overview
Score353636466674889084694535
ClimateHot & rainyHot & rainyHot & rainyHot & rainyHot & dryHot & dryHot & dryHot & dryHot & dryHot & dryHot & rainyHot & rainy
Temperature25–30°C25–30°C25–30°C25–30°C25–31°C25–31°C24–31°C24–31°C24–32°C25–33°C25–32°C25–31°C
Feels like29–36°C29–36°C30–37°C31–37°C30–36°C29–35°C28–34°C28–34°C28–36°C30–37°C31–38°C30–37°C
Precipitation301mm
28 days
322mm
28 days
285mm
28 days
196mm
24 days
87mm
12 days
58mm
10 days
22mm
4 days
9mm
2 days
20mm
3 days
71mm
8 days
188mm
20 days
271mm
28 days
Sunshine5.3h
☀︎ 42%
5.6h
☀︎ 45%
6.7h
☀︎ 55%
7.8h
☀︎ 65%
10.4h
☀︎ 89%
10.7h
☀︎ 91%
10.8h
☀︎ 92%
11.0h
☀︎ 93%
11.1h
☀︎ 92%
10.4h
☀︎ 85%
7.5h
☀︎ 60%
5.6h
☀︎ 45%
WindW · 15 km/hW · 15 km/hW · 12 km/hSE · 12 km/hSE · 15 km/hSE · 16 km/hSE · 19 km/hSE · 21 km/hSE · 21 km/hSE · 18 km/hE · 13 km/hW · 13 km/h
Humidity (%)85%86%85%83%78%76%72%69%67%70%77%83%
Day length12.5h12.3h12.1h11.9h11.8h11.7h11.7h11.9h12.1h12.3h12.4h12.5h
Tourist CrowdsShoulder seasonLow seasonLow seasonShoulder seasonHigh seasonHigh seasonHigh seasonHigh seasonHigh seasonHigh seasonShoulder seasonShoulder season
Events & Festivals
JanFebMarAprMayJunJulAugSepOctNovDec
Heroes Day (Hari Pahlawan)
Surabaya Cross Culture International Folk Art Festival
Events & Festivals
  • Heroes Day (Hari Pahlawan)holidaySignature event
    November· 50k+ visitors

    Surabaya is famously the 'City of Heroes,' and every November 10th it commemorates the 1945 Battle of Surabaya with cere…

  • Surabaya Cross Culture International Folk Art Festivalcultural
    June· 5k+ visitors

    This annual folk art festival brings performing groups from multiple countries to parade and perform traditional dance a…

The story of the seasons in Surabaya

Surabaya draws its thickest crowds at the absolute worst time of year—November and December, when torrential monsoon squalls turn the asphalt into a steam bath—while its crispest, sun-drenched months between July and September pass under moderate, manageable foot traffic.

Sprawling across the edge of the Madura Strait, Surabaya is not an island retreat built for lounging; it is East Java's roaring commercial engine, an ancient port where Javanese maritime trade took root a millennium ago. Travelers arrive here to untangle Indonesia’s fierce revolutionary history or to catch their breath before launching into the volcanic highlands of East Java. Yet Surabaya demands strategic timing. Because the city sits right at sea level, humidity and heat are facts of daily life. How comfortable your days feel depends almost entirely on whether the maritime air brings steady, clear breezes or heavy equatorial downpours that trap heat in the concrete.

The Golden Dry Months: July to September

If you want to experience Surabaya on foot, this is your only genuine window. Across July, August, and September, the rains virtually vanish, replaced by unbroken sunshine and brisk southeasterly trade winds that sweep inland from the Madura Strait. August is the undeniable peak of the year: rainfall is practically nonexistent, the skies stay clear from dawn until dusk, and the city’s stifling humidity drops to its annual low.

During these months, mornings are crisp enough for wandering the narrow alleys of Ampel, where scents of cardamom and roasted mutton drift out from shopfronts before midday. The heat still builds by noon, but it lacks the suffocating wet blanket that characterizes the rest of the year. Instead of retreating into air-conditioned malls by midday, you can comfortably explore the historic warehouses surrounding Jembatan Merah well into the afternoon.

Even better, visitor numbers stay remarkably steady through this period. You will share the city with ordinary commuters and students rather than holiday throngs, making it easy to hail rides, explore colonial-era landmarks, and take late-evening strolls along the waterfront docks of Tanjung Perak without fighting crowds.

The Humid Surge and the Paradox of November: October to December

October acts as the warning bell. Heat mounts rapidly, the winds die down, and the air grows heavy with impending moisture. By November, the seasonal monsoon arrives in earnest, bringing sharp afternoon deluges that flood low-lying streets and send scooters scurrying under highway overpasses for cover.

Yet despite the worsening weather, Surabaya fills to near-bursting point. November 10 brings Heroes Day (Hari Pahlawan), a momentous national commemoration of the 1945 Battle of Surabaya that centers around the Heroes Monument. The ceremonies, military parades, and patriotic gatherings are deeply moving, charging the city with profound local pride, but they also pull immense domestic crowds into an increasingly soggy metropolis.

December pushes the contradiction even further, recording the highest visitor density of the entire year while the monsoon hits full stride. Stepping outdoors in December means braving heavy cloudbursts that routinely disrupt travel plans, paired with an apparent temperature that feels like 37 degrees Celsius. It is the month when Surabaya feels most like a pressure cooker, and unless you are traveling specifically for family holidays, you should actively avoid it.

The Long Monsoon Washout: January to April

January and February are the wettest, grimmest stretches on the East Javan calendar. Heavy downpours hit on a near-daily basis, drenching the port basin and turning the city's canals into churning brown currents. Sightseeing during these months is an exercise in evasion: you dart between dry awnings, wait out flash downpours in heritage cafes, and watch the sky remain a flat, bruised gray for days on end.

By March and April, the rain eases slightly in volume, but the humidity remains relentless. The apparent temperature hovers stubbornly high, and while the mornings might show brief patches of sun, the heat quickly cooks up violent late-afternoon storms.

If you find yourself in Surabaya during this quarter, slow down and orient your trip entirely indoors. Dive into the maritime museums, browse the covered arcades, and save outdoor monuments for early morning before the convective clouds gather.

The Early Dry Season and Festival Energy: May to June

May marks the grand exhale. The heavy monsoonal curtain lifts, daily hours of bright sunshine nearly double, and the city shakes off its waterlogged lethargy. Temperatures remain warm, but the falling humidity makes being outdoors feel feasible again.

June delivers an ideal balance of clear weather and cultural spectacle. Each June, the Surabaya Cross Culture International Folk Art Festival brings international troupes together with traditional Javanese dancers, filling the central avenues with music, costumed parades, and open-air performances.

Because the heavy showers have cleared out and the high-summer school breaks have not yet peaked, June offers brilliant, clear-skied conditions without the congested logistics of late year. It is the smartest alternative for anyone who cannot make the August prime window.

Frequently asked questions

What is the best time to visit Surabaya?

The best time to visit Surabaya is August, July, September, June, with temperatures between 24 °C and 32 °C. The best month is August. August is high season.

What is the weather like in Surabaya?

Surabaya has a Tropical climate with an overall score of 5.9/10. Annual temperatures range from 24 °C to 33 °C.

What is the hottest month in Surabaya?

The hottest month in Surabaya is October, with average highs of 33 °C and lows of 25 °C.

What is the rainiest month in Surabaya?

The rainiest month in Surabaya is February, with an average of 322 mm of precipitation.

When is peak season in Surabaya?

Peak season in Surabaya is May, June, July, August, September, October. This is the most popular period, with the highest tourism levels and prices.

When is shoulder season in Surabaya?

Shoulder season in Surabaya falls in January, April, November, December. It offers a good balance of decent weather and lower prices compared to peak season.