There are 8 ways to get from Surakarta to Batam by plane, train, bus, or ferry
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly from Adisumarmo International Airport
best- Fly from Adisumarmo International Airport (SOC) to Hang Nadim International Airport (BTH)plane SOC - BTH
5h 30mRp 2,297,000–2,917,000Bus, ferry via South Tangerang
cheapest- Take the bus from Solo Terminal Tirtonadi to Pondok Pinangbus
- Take the ferry from Port of Tanjung Priok to Batu Amparferry KM Kelud
2d 3hRp 584,979–746,997Train, bus, ferry
- Take the train from Solo Jebres to Semarang Tawangtrain
- Take the train from Semarang Tawang to Jakarta Gambirtrain
- Take the bus from Gambir Station to Jakarta Airportbus
- Take the ferry from Port of Tanjung Priok to Batu Amparferry
47h 34mRp 739,937–1,640,000Train to Ahmad Yani, fly
- Take the train from Solo Jebres to Semarang Tawangtrain
- Fly from Ahmad Yani (SRG) to Hang Nadim International Airport (BTH)plane SRG - BTH
4h 20mRp 1,700,937–2,685,000Train, train to Yogyakarta International Airport, fly
- Take the train from Solo Balapan to Yogyakartatrain
- Take the train from Yogyakarta Tugu Station to Yogyakarta International Airporttrain
- Fly from Yogyakarta International Airport (YIA) to Hang Nadim International Airport (BTH)plane YIA - BTH
5h 26mRp 1,825,000–5,180,000Train, ferry via Jakarta
- Take the train from Solo Balapan to Jatinegaratrain Bima / ...
- Take the ferry from Port of Tanjung Priok to Batu Amparferry KM Kelud
2dRp 716,300–1,167,609Bus, ferry
- Take the bus from Surakarta to DAMRI Bus Station Jakartabus Surakarta - Jakarta
- Take the ferry from Port of Tanjung Priok to Batu Amparferry KM Kelud
2d 1hRp 607,135–1,129,845Train, ferry
- Take the train from Solo Balapan to Jakarta Pasar Senentrain Senja Utama Solo / ...
- Take the ferry from Port of Tanjung Priok to Batu Amparferry KM Kelud
2d 1hRp 713,500–847,538
Adisumarmo International Airport (SOC) to Hang Nadim International Airport (BTH) flights
Questions & Answers
The cheapest way to get from Surakarta to Batam is to bus and ferry via South Tangerang which costs Rp550000 - Rp750000 and takes 2 days 3h.
The fastest way to get from Surakarta to Batam is to train and fly which takes 4h 20m and costs Rp1700000 - Rp2700000.
The distance between Surakarta and Batam is 1239 km.
The best way to get from Surakarta to Batam without a car is to train and bus and ferry which takes 47h 34m and costs Rp700000 - Rp1700000.
It takes approximately 5h 30m to get from Surakarta to Batam, including transfers.
There are 996+ hotels available in Batam.
What companies run services between Surakarta, Indonesia and Batam, Indonesia?
Citilink Indonesia, Batik Air, and two other airlines fly from Adisumarmo International Airport (SOC) to Hang Nadim International Airport (BTH) 5 times a day.
- Website
- batikair.com
Flights from Adisumarmo International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 5h 55m
- When
- Every day
- Estimated price
- Rp 1,900,000–5,500,000
Flights from Ahmad Yani to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 55m
- When
- Every day
- Estimated price
- Rp 1,900,000–5,000,000
Flights from Yogyakarta International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 2m
- When
- Every day
- Estimated price
- Rp 1,800,000–4,800,000
- Website
- garuda-indonesia.com
Flights from Adisumarmo International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 5h 55m
- When
- Every day
- Estimated price
- Rp 2,200,000–7,000,000
Flights from Ahmad Yani to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 3h 55m
- When
- Every day
- Estimated price
- Rp 2,200,000–7,000,000
Flights from Yogyakarta International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 45m
- When
- Every day
- Estimated price
- Rp 2,100,000–7,000,000
- Website
- citilink.co.id
Flights from Adisumarmo International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 27m
- When
- Every day
- Estimated price
- Rp 1,500,000–3,300,000
- Website
- lionair.co.id
Flights from Adisumarmo International Airport to Hang Nadim International Airport via Soekarno–Hatta
- Ave. Duration
- 5h 17m
- When
- Every day
- Estimated price
- Rp 1,600,000–3,600,000
- Website
- superairjet.com
Flights from Ahmad Yani to Hang Nadim International Airport
- Ave. Duration
- 2h
- When
- Every day
- Estimated price
- Rp 1,600,000–1,900,000
Flights from Yogyakarta International Airport to Hang Nadim International Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- Rp 1,700,000–4,900,000
Train from Solo Jebres to Semarang Tawang
- Ave. Duration
- 47 min
- Frequency
- 3 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 Semarang Tawang to Jakarta Gambir
- Ave. Duration
- 4h 45m
- Frequency
- Every 4 hours
- Estimated price
- Rp 260,000–350,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 260,000–350,000
- Business
- Rp 430,000–550,000
- Executive
- Rp 490,000–700,000
Train from Solo Balapan to Yogyakarta
- Ave. Duration
- 51 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
Train from Solo Balapan to Jatinegara
- Ave. Duration
- 6h 54m
- Frequency
- Every 4 hours
- Estimated price
- Rp 320,000–370,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–370,000
- Business
- Rp 470,000–550,000
- Executive
- Rp 600,000–850,000
Train from Solo Balapan to Jakarta Pasar Senen
- Ave. Duration
- 8h 4m
- Frequency
- 4 times a day
- Estimated price
- Rp 320,000–380,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–380,000
- Business
- Rp 480,000–550,000
- Executive
- Rp 650,000–900,000
- admin@prameks.com
- Website
- kai.id
Train from Solo Balapan to Yogyakarta
- Ave. Duration
- 1h 15m
- Frequency
- Every 3 hours
- Estimated price
- Rp 15,000
- Schedules at
- kai.id
- info@railink.co.id
- Website
- railink.co.id
Train from Yogyakarta Tugu Station to Yogyakarta International Airport
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- Rp 20,000–50,000
- Schedules at
- railink.co.id
- Phone
- (021) 1500 825
- humas@damri.co.id
- Website
- damri.co.id
Bus from Gambir Station to Jakarta Airport
- Ave. Duration
- 45 min
- Frequency
- Every 15 minutes
- Estimated price
- Rp 13,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Surakarta to DAMRI Bus Station Jakarta
- Ave. Duration
- 10h
- Frequency
- Once daily
- Estimated price
- Rp 150,000–600,000
- Book at
- https://12go.asia/en/operator/damri
- Phone
- 021-79171717
- Website
- bluebirdgroup.com
Bus from Gambir Station to Jakarta Airport
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- Rp 75,001
- Schedules at
- bluebirdgroup.com
- Phone
- 021-769 3000
- kramatdjati.jakarta@gmail.com
- Website
- kramat-djati.com
Bus from Solo Terminal Tirtonadi to Pondok Pinang
- Ave. Duration
- 9h 9m
- 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 Port of Tanjung Priok to Batu Ampar
- Ave. Duration
- 37h 58m
- 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 Need to know: Greyhound, Travelling to and around Russia for the 2018 FIFA World Cup, and 5 incredible day trips from Florence by train - to help you get the most out of your next trip.















