There are 6 ways to get from Batam to Surakarta by plane, ferry, train, or bus
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly to Adisumarmo International Airport
best- Fly from Hang Nadim International Airport (BTH) to Adisumarmo International Airport (SOC)BTH - SOC
4h 57mRp 2,106,561–2,824,663Ferry, bus via South Tangerang
cheapest- Take the ferry from Batu Ampar to Port of Tanjung PriokKM Kelud
- Take the bus from Pondok Pinang to Solo Terminal Tirtonadi
2d 3hRp 577,760–744,900Ferry, train
- Take the ferry from Batu Ampar to Port of Tanjung PriokKM Kelud
- Take the train from Jakarta Gambir to Solo BalapanBima / ...
47h 6mRp 717,760–854,900Fly to Ahmad Yani, train
- Fly from Hang Nadim International Airport (BTH) to Ahmad Yani (SRG)BTH - SRG
- Take the train from Semarang Poncol Station to Solobalapan
5h 16mRp 1,694,561–2,473,663Fly to Yogyakarta International Airport, train
- Fly from Hang Nadim International Airport (BTH) to Yogyakarta International Airport (YIA)BTH - YIA
- Take the train from Yogyakarta International Airport to Yogyakarta Tugu Station
- Take the train from Yogyakarta to Solo Balapan
4h 53mRp 1,534,561–5,187,663Ferry, bus
- Take the ferry from Batu Ampar to Port of Tanjung PriokKM Kelud
- Take the bus from DAMRI Bus Station Jakarta to SurakartaJakarta - Surakarta
47h 57mRp 605,760–1,152,900
Hang Nadim International Airport (BTH) to Adisumarmo International Airport (SOC) flights
Questions & Answers
The cheapest way to get from Batam to Surakarta is to ferry and bus via South Tangerang which costs Rp550000 - Rp750000 and takes 2 days 3h.
The fastest way to get from Batam to Surakarta is to fly and train which takes 4h 53m and costs Rp1500000 - Rp5500000.
The distance between Batam and Surakarta is 1240 km.
The best way to get from Batam to Surakarta without a car is to ferry and train which takes 47h 6m and costs Rp700000 - Rp900000.
It takes approximately 4h 57m to get from Batam to Surakarta, including transfers.
There are 258+ hotels available in Surakarta.
What companies run services between Batam, Indonesia and Surakarta, Indonesia?
Batik Air, Garuda Indonesia, and three other airlines fly from Hang Nadim International Airport (BTH) to Adisumarmo International Airport (SOC) 4 times a day.
- Website
- batikair.com
Flights from Hang Nadim International Airport to Adisumarmo International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 42m
- When
- Every day
- Estimated price
- Rp 1,200,000–5,500,000
Flights from Hang Nadim International Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- Rp 1,400,000–3,700,000
Flights from Hang Nadim International Airport to Yogyakarta International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 35m
- When
- Every day
- Estimated price
- Rp 1,400,000–3,600,000
- Website
- garuda-indonesia.com
Flights from Hang Nadim International Airport to Adisumarmo International Airport via Soekarno–Hatta
- Ave. Duration
- 6h 50m
- When
- Monday, Wednesday, and Thursday
- Estimated price
- Rp 1,800,000–5,500,000
Flights from Hang Nadim International Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 4h 32m
- When
- Every day
- Estimated price
- Rp 1,700,000–5,500,000
Flights from Hang Nadim International Airport to Yogyakarta International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 15m
- When
- Every day
- Estimated price
- Rp 1,600,000–5,500,000
- Website
- superairjet.com
Flights from Hang Nadim International Airport to Ahmad Yani
- Ave. Duration
- 2h
- When
- Every day
- Estimated price
- Rp 1,500,000–1,900,000
Flights from Hang Nadim International Airport to Yogyakarta International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- Rp 1,400,000–4,700,000
Flights from Hang Nadim International Airport to Yogyakarta International Airport via Jambi
- Ave. Duration
- 3h 25m
- When
- Wednesday and Saturday
- Estimated price
- Rp 1,400,000–4,700,000
Flights from Hang Nadim International Airport to Yogyakarta International Airport via Sultan Mahmud Badaruddin II
- Ave. Duration
- 3h 35m
- When
- Every day
- Estimated price
- Rp 1,400,000–4,700,000
Flights from Hang Nadim International Airport to Yogyakarta International Airport via Minangkabau
- Ave. Duration
- 4h 35m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- Rp 1,400,000–4,700,000
- Website
- lionair.co.id
Flights from Hang Nadim International Airport to Adisumarmo International Airport via Soekarno–Hatta
- Ave. Duration
- 4h
- When
- Friday
- Estimated price
- Rp 1,100,000–2,800,000
- Website
- citilink.co.id
Flights from Hang Nadim International Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 4h 25m
- When
- Every day
- Estimated price
- Rp 1,500,000–2,000,000
- Website
- flynamair.com
Flights from Hang Nadim International Airport to Yogyakarta International Airport via Soekarno–Hatta
- Ave. Duration
- 3h 40m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- Rp 1,000,000–5,500,000
Train from Jakarta Gambir to Solo Balapan
- Ave. Duration
- 6h 55m
- Frequency
- Every 4 hours
- Estimated price
- Rp 320,000–380,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–380,000
- Business
- Rp 470,000–550,000
- Executive
- Rp 600,000–900,000
Train from Semarang Poncol Station to Solobalapan
- Ave. Duration
- 1h 49m
- Frequency
- 5 times a day
- Estimated price
- Rp 65,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 65,000–320,000
- Business
- Rp 310,000–550,000
- Executive
- Rp 120,000–650,000
Train from Yogyakarta to Solo Balapan
- Ave. Duration
- 45 min
- Frequency
- Hourly
- Estimated price
- Rp 36,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 36,000–320,000
- Business
- Rp 290,000–550,000
- Executive
- Rp 65,000–650,000
- info@railink.co.id
- Website
- railink.co.id
Train from Yogyakarta International Airport to Yogyakarta Tugu Station
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- Rp 20,000–50,000
- Schedules at
- railink.co.id
- admin@prameks.com
- Website
- kai.id
Train from Yogyakarta to Solo Balapan
- Ave. Duration
- 1h 13m
- Frequency
- Every 3 hours
- Estimated price
- Rp 15,000
- Schedules at
- kai.id
- Phone
- (021) 1500 825
- humas@damri.co.id
- Website
- damri.co.id
Bus from DAMRI Bus Station Jakarta to Surakarta
- Ave. Duration
- 10h
- Frequency
- Once daily
- Estimated price
- Rp 150,000–600,000
- Book at
- https://12go.asia/en/operator/damri
- Phone
- 021-769 3000
- kramatdjati.jakarta@gmail.com
- Website
- kramat-djati.com
Bus from Pondok Pinang to Solo Terminal Tirtonadi
- Ave. Duration
- 9h 8m
- Frequency
- Once daily
- Estimated price
- Rp 180,000–270,000
- Website
- http://www.kramat-djati.com/
- Phone
- +62 811-1621-162
- infopelni162@pelni.co.id
- Website
- facebook.com
Ferry from Batu Ampar to Port of Tanjung Priok
- Ave. Duration
- 36h 45m
- Frequency
- Once daily
- Estimated price
- Rp 390,000–470,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 390,000–470,000
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 travel India's Golden Triangle, Why you should take the train in the US, and Heading to Europe? Read this before you buy a Eurail Pass - to help you get the most out of your next trip.















