There are 8 ways to get from Surakarta to Jakarta by plane, train, bus, 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.
Fly Adisumarmo International Airport to Soekarno–Hatta International Airport
best- Fly from Adisumarmo International Airport (SOC) to Soekarno–Hatta International Airport (CGK)SOC - CGK
3h 38mRp 964,500–1,657,000Bus
cheapest- Take the bus from Surakarta to DAMRI Bus Station JakartaSurakarta - Jakarta
10h 28mRp 150,000–600,000Train
- Take the train from Solo Balapan to JatinegaraBima / ...
6h 54mRp 320,000–370,000Bus via Pondok Pinang
- Take the bus from Solo Terminal Tirtonadi to Pondok Pinang
10h 22mRp 191,476–273,494Drive 527.8 km
- Drive from Surakarta to Jakarta527.8 km
6h 12mRp 974,024–1,406,924Train to Adisutjipto International Airport, fly to Halim Perdanakusuma Airport
- Take the train from Solobalapan to Stasiun Maguwo
- Fly from Adisutjipto International Airport (JOG) to Halim Perdanakusuma Airport (HLP)JOG - HLP
4h 12mRp 1,317,025–1,817,025Train to Ahmad Yani, fly to Soekarno–Hatta International Airport
- Take the train from Solo Jebres to Semarang Tawang
- Fly from Ahmad Yani (SRG) to Soekarno–Hatta International Airport (CGK)SRG - CGK
4h 18mRp 968,436–1,925,000Train, train to Yogyakarta International Airport, fly to Soekarno–Hatta International Airport
- Take the train from Solo Balapan to Yogyakarta
- Take the train from Yogyakarta Tugu Station to Yogyakarta International Airport
- Fly from Yogyakarta International Airport (YIA) to Soekarno–Hatta International Airport (CGK)YIA - CGK
5h 19mRp 742,500–1,720,000
Surakarta to Jakarta by train
Questions & Answers
The cheapest way to get from Surakarta to Jakarta is to bus via Pondok Pinang which costs Rp190000 - Rp280000 and takes 10h 22m.
The fastest way to get from Surakarta to Jakarta is to fly which takes 3h 38m and costs Rp950000 - Rp1700000.
No, there is no direct bus from Surakarta to Jakarta. However, there are services departing from Solo Terminal Tirtonadi and arriving at Rasuna Said via Pondok Pinang. The journey, including transfers, takes approximately 10h 22m.
Yes, there is a direct train departing from Solo Balapan and arriving at Jatinegara. Services depart every four hours, and operate every day. The journey takes approximately 6h 54m.
The distance between Surakarta and Jakarta is 518 km. The road distance is 527.8 km.
The best way to get from Surakarta to Jakarta without a car is to train which takes 6h 54m and costs Rp320000 - Rp370000.
It takes approximately 3h 38m to get from Surakarta to Jakarta, including transfers.
Surakarta to Jakarta bus services, operated by Kramat Djati, depart from Solo Terminal Tirtonadi station.
Surakarta to Jakarta train services, operated by Kereta API, depart from Solo Balapan station.
The best way to get from Surakarta to Jakarta is to fly which takes 3h 38m and costs Rp950000 - Rp1700000. Alternatively, you can train, which costs Rp320000 - Rp370000 and takes 6h 54m, you could also bus via Pondok Pinang, which costs Rp190000 - Rp280000 and takes 10h 22m.
What companies run services between Surakarta, Indonesia and Jakarta, Indonesia?
Citilink Indonesia, Batik Air, and two other airlines fly from Adisumarmo International Airport (SOC) to Soekarno–Hatta International Airport (CGK) every 4 hours. Alternatively, Kereta API operates a train from Solo Balapan to Jatinegara every 4 hours. Tickets cost Rp 320,000–370,000 and the journey takes 6h 54m.
Transport is disrupted due to the Russia-Ukraine war. Read more
- Website
- batikair.com
Flights from Adisumarmo International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- Rp 1,000,000–1,400,000
Flights from Ahmad Yani to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- Rp 950,000–1,400,000
Flights from Yogyakarta International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- Rp 850,000–2,200,000
- Website
- garuda-indonesia.com
Flights from Adisumarmo International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- Rp 800,000–4,600,000
Flights from Ahmad Yani to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 18m
- When
- Every day
- Estimated price
- Rp 850,000–1,100,000
Flights from Yogyakarta International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 19m
- When
- Every day
- Estimated price
- Rp 750,000–1,100,000
- Website
- citilink.co.id
Flights from Adisumarmo International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- Rp 900,000–1,200,000
Flights from Adisutjipto International Airport to Halim Perdanakusuma Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- Rp 1,300,000–1,800,000
Flights from Ahmad Yani to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- Rp 850,000–1,100,000
Flights from Yogyakarta International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 12m
- When
- Every day
- Estimated price
- Rp 750,000–1,100,000
- Website
- lionair.co.id
Flights from Adisumarmo International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 20m
- When
- Sunday
- Estimated price
- Rp 700,000–2,100,000
Flights from Yogyakarta International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- Rp 700,000–1,200,000
- Website
- air-connect.com
Flights from Adisutjipto International Airport to Halim Perdanakusuma Airport
- Ave. Duration
- 1h 22m
- When
- Every day
- Estimated price
- Rp 1,500,000–10,000,000
- Website
- flynamair.com
Flights from Ahmad Yani to Soekarno–Hatta International Airport via Pangkalanbun
- Ave. Duration
- 2h 55m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- Rp 800,000–4,500,000
Flights from Yogyakarta International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- Rp 500,000–3,400,000
- Website
- pelita-air.com
Flights from Yogyakarta International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- Rp 800,000–1,100,000
- Website
- transnusa.co.id
Flights from Yogyakarta International Airport to Soekarno–Hatta International Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- Rp 700,000–1,100,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 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 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
- admin@prameks.com
Train from Solobalapan to Stasiun Maguwo
- Ave. Duration
- 58 min
- Frequency
- Every 3 hours
- Estimated price
- Rp 13,526
- Schedules at
- jadwalkereta.net
Train from Solo Balapan to Yogyakarta
- Ave. Duration
- 1h 15m
- Frequency
- Every 3 hours
- Estimated price
- Rp 15,000
- Schedules at
- jadwalkereta.net
- 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-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
- (021) 1500 825
- humas@damri.co.id
- Website
- damri.co.id
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
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 What documents do I need to cross Niagara Falls?, Travelling around the UAE, and 4 stunningly beautiful Philippines islands you need to visit - to help you get the most out of your next trip.
More Questions & Answers
Surakarta to Jakarta bus services, operated by Kramat Djati, arrive at Pondok Pinang station.
Surakarta to Jakarta train services, operated by Kereta API, arrive at Jatinegara station.
Yes, the driving distance between Surakarta to Jakarta is 528 km. It takes approximately 6h 12m to drive from Surakarta to Jakarta.
There are 6161+ hotels available in Jakarta.













