There are 4 ways to get from Semarang to Ponorogo by train, bus, 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  •  4 h 2 min

  1. Take the train from Semarang Tawang to Madiun Bangunkarta 56 / ...

$11 - $22

Cheapest option

Bus  •  8 h 25 min

  1. Take the bus from Semarang to Surakarta
  2. Take the bus from Surakarta Bus Station to Ponorogo

$2 - $4

2 alternative options

Taxi  •  2 h 57 min

  1. Take a taxi from Semarang to Ponorogo 126.6 miles

$55 - $70

Drive  •  2 h 57 min

  1. Drive from Semarang to Ponorogo 126.6 miles

$11 - $17

What companies run services between Semarang, Indonesia and Ponorogo, Indonesia?

Kereta API operates a train from Semarang to Ponorogo 3 times a day. Tickets cost $2 - $10 and the journey takes 3 h 35 min. Alternatively, you can take a bus from Semarang to Ponorogo via Surakarta and Surakarta Bus Station in around 8 h 25 min.

Train operators
Bus operators
Bus from Semarang to Surakarta
Ave. Duration
3 h
Schedules at
Kramat Djati
Bus from Surakarta Bus Station to Ponorogo
Ave. Duration
4 h 25 min
Every 3 hours
Estimated price
$2 - $4
Schedules at
Book at
Other operators
Taxi from Semarang to Ponorogo
Ave. Duration
2 h 57 min
Estimated price
$55 - $70
Blue Bird Group

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 Which side of Niagara Falls should I choose (and how do I get there)?, French strikes 2018: What are my alternative transport options? and How to get from London to Edinburgh - to help you get the most out of your next trip.

Questions & Answers

The distance between Semarang and Ponorogo is 151 km. The road distance is 203 km.

The cheapest way to get from Semarang to Ponorogo is to bus which costs Rp39000 - Rp55000 and takes 8 h 25 min.

The quickest way to get from Semarang to Ponorogo is to taxi which takes 2 h 57 min and costs Rp800000 - Rp1000000.

No, there is no direct bus from Semarang to Ponorogo. However, there are services departing from Semarang and arriving at Ponorogo via Surakarta Bus Station. The journey, including transfers, takes approximately 8 h 25 min.

It takes approximately 4 h 2 min to get from Semarang to Ponorogo, including transfers.