Contents
Leaving the humid, bustling port streets of Surabaya for the cooler, colonial charm of Malang is a classic East Javanese transition. While Surabaya is the powerhouse of commerce, Malang sits at a higher elevation, surrounded by volcanic peaks and apple orchards, offering a refreshing change of pace and temperature. The journey takes you from the flat coastal plains toward the rolling foothills of the Arjuno-Welirang mountains.

This route is popular with weekenders seeking a mountain escape and with travelers heading toward the sunrise trek at Mount Bromo. Because the cities are relatively close, you can choose between public buses, a regional train and private door-to-door transfers. You can compare and book these options on GoAsia.cc.
Surabaya to Malang by Bus
The bus is the most flexible way to make this trip. Buses to Malang leave from the Purabaya Bus Terminal (often called Bungurasih) just south of central Surabaya. Booking platforms list executive buses, premium-seat buses and air-conditioned economy buses on this route.[1]
On booking platforms, bus tickets cost about $1 to $9 (October 2026), and the journey is listed at 1 hour 20 minutes to 2 hours 55 minutes depending on the service and the traffic at the city entrances.[1]
Surabaya to Malang by Private Transfer
If you are traveling in a group, carrying heavy luggage, or simply want to avoid the bus terminal, a private transfer is the most seamless option. It picks you up at your hotel in Surabaya or at Juanda International Airport and drops you at your accommodation in Malang. Booking platforms list the journey at about 1 hour 30 minutes.[1]
The vehicle sizes offered are:
- SUV 4pax: Suits families or small groups of friends.[1]
- Van 10pax: A middle ground for medium groups or those with extra suitcases.[1]
- Minibus 16pax: The most cost-effective choice for large tour groups or extended families.[1]
On booking platforms, private transfers cost about $58 to $212 per vehicle (October 2026), depending on the vehicle size and the operator.[1]
Surabaya to Malang by Train
PT KAI's Commuter Line Penataran connects Surabaya and Malang. Its timetable valid from 1 February 2025 lists 5 trips a day from Surabaya Kota, stopping at Surabaya Gubeng and Sidoarjo before Malang. The first train leaves Surabaya Kota at 04:15 and the last at 20:05.[2]
From Surabaya Gubeng the same timetable shows arrival times in Malang that work out to roughly 2 hours 45 minutes to 3 hours 35 minutes, which is longer than the bus times listed above.[2] Timetables change, so check the current times before you travel. Tickets are sold through the Access by KAI app.[3]
Comparing Your Options
| Mode | Price (USD) | Duration | Comfort |
|---|---|---|---|
| Bus (Executive/Economy) | $1 - $9 | 1h 20m - 2h 55m[1] | Standard to High |
| Private Transfer | $58 - $212 | 1h 30m[1] | Very High |
Tips for Traveling from Surabaya to Malang
- Book in Advance: Private transfers and train seats can sell out, especially on Friday afternoons and Sunday evenings when locals travel for the weekend.
- Prepare for Temperature Changes: Malang is noticeably cooler than Surabaya. Keep a light sweater or jacket handy, especially if you arrive in the evening or plan to head straight into the mountains.
- Arrival Terminals: Most buses arrive at Arjosari Terminal in Malang. From there, you can use ride-hailing apps or "Angkot" (blue minivans) to reach your final destination in the city.
- Hydration: The tropical heat in Surabaya can be intense while waiting at the terminal. Carry a bottle of water before starting your journey.
Timetable
| Bus Surabaya - Malang $ 1.38–9.45 1h 20m – 2h 55m | |
|
|
| Taxi Surabaya - Malang $ 58.12–211.22 1h 30m | |
|
| Train Sidoarjo - Malang $ 16.65–26.75 1h 22m – 1h 46m | |
|
Frequently Asked Questions
Use the booking tool on this page to compare the transport options currently available from Surabaya to Malang, including current prices and schedules.
The cheapest way is the bus. On booking platforms, tickets start at about $1 (October 2026) and buses leave from the Purabaya Bus Terminal.
A private transfer or a bus, depending on traffic. Booking platforms list a private transfer at about 1 hour 30 minutes and buses at 1 hour 20 minutes to 2 hours 55 minutes.
By road it takes about 1 hour 20 minutes to 2 hours 55 minutes, depending on the service and traffic. The Commuter Line Penataran takes roughly 2 hours 45 minutes to 3 hours 35 minutes from Surabaya Gubeng according to its timetable valid from 1 February 2025.
The bus is faster on the times listed by booking platforms and gives you more choice during the day. The Commuter Line Penataran is a fixed-schedule alternative with 5 trips a day in its timetable valid from 1 February 2025.
Yes. Private transfers are available in SUV, van and minibus sizes. They suit travelers arriving at Juanda International Airport who want to go directly to Malang without stopping at a bus station.
The Commuter Line Penataran starts at Surabaya Kota and also stops at Surabaya Gubeng and Sidoarjo, according to the timetable valid from 1 February 2025.
Sources and background
Numbers in the text such as [1] refer to these sources.
- [1] 12Go: 12Go timetable: Surabaya to Malang. Retrieved October 15, 2026.
- [2] KAI Commuter: Jadwal Commuter Line Wilayah 8 Surabaya, berlaku mulai 1 Februari 2025. Retrieved October 15, 2026.
- [3] PT Kereta Api Indonesia (KAI): PT KAI: Home (Access by KAI app, passenger services). Retrieved October 15, 2026.
Guide prices and journey times are indicative, not live quotes. A booked package may include transfers and waiting time as well as the main journey. Check the selected offer, pickup point and current conditions before booking.