There are 3 ways to get from Surabaya to Madiun by train, taxi or car

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Train  •  2 h 4 min

  1. Take the train from Gubeng to Madiun Argo Wilis 5 / ...

$1 - $9

2 alternative options

Taxi  •  2 h 5 min

  1. Take a taxi from Surabaya to Madiun 103.5 miles

$45 - $55

Drive  •  2 h 5 min

  1. Drive from Surabaya to Madiun 103.5 miles

$9 - $14

Questions & Answers

The cheapest way to get from Surabaya to Madiun is to train which costs Rp25000 - Rp120000 and takes 2 h 4 min.

More details

The quickest way to get from Surabaya to Madiun is to train which costs Rp25000 - Rp120000 and takes 2 h 4 min.

More details

The distance between Surabaya and Madiun is 142 km. The road distance is 165.6 km.

Get driving directions

The train from Gubeng to Madiun takes 2 h 4 min including transfers and departs every three hours.

More details

Yes, there is a direct train departing from Gubeng and arriving at Madiun. Services depart every three hours. The journey takes approximately 2 h 4 min.

More details

Surabaya to Madiun train services, operated by Kereta API, depart from Gubeng station.

More details

Map of how to get from Surabaya to Madiun.
Launch map view
  • Distance: 88.6 miles
  • Duration: 2 h 4 min

What companies run services between Surabaya, Indonesia and Madiun, Indonesia?

Kereta API operates a train from Surabaya to Madiun every 3 hours. Tickets cost $1 - $9 and the journey takes 2 h 4 min.

Want to know more about travelling around the world?

Rome2rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including How do I get from Sydney to Melbourne, Bali: What to do if Mount Agung erupts and Need to know: Greyhound - to help you get the most out of your next trip.