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 - $60

Drive  •  2 h 5 min

  1. Drive from Surabaya to Madiun 103.5 miles

$9 - $14

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 to get from JFK to New York City, French strikes 2018: What are my alternative transport options? and Getting to Milan from the airport - to help you get the most out of your next trip.

Questions & Answers

How far is it from Surabaya to Madiun?

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

What is the cheapest way to get from Surabaya to Madiun?

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

What is the fastest way to get from Surabaya to Madiun?

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

Is there a direct train between Surabaya and Madiun?

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.

How long does it take to get from Surabaya to Madiun?

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