Jakarta to Surakarta bus with TransJakarta

Thu, 29 Jan
+ Add return
TransJakarta
BlaBlaCar Bus
Starmart Express
FlixBus
Alsa
1,000+ travel companies
TransJakarta
BlaBlaCar Bus
Starmart Express
FlixBus
Alsa
1,000+ travel companies
QR-Code
Scan to get our free app
Use our app to get live travel updates and book mobile tickets for trains, buses, flights, and ferries.
App Store
rate4.9
42K ratings
Google Play
rate4.6
136K reviews

The cheapest and fastest coaches from Jakarta to Surakarta

Showing times and prices for 29 Jan

Cheapest price

$13

Average price

$18

Fastest journey

8 h 49 m

Average duration

9 h 27 m

Buses per day

40

Distance

465 km

Cheap tickets

The best way to find a cheap coach ticket from Jakarta to Surakarta is to book your journey as far in advance as possible and to avoid travelling at rush hour.

The average ticket from Jakarta to Surakarta will cost around $18 if you buy it on the day, but you can find cheap coach tickets today for only $13.

Fast coaches

Of the 40 buses that leave Jakarta for Surakarta every day 40 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.

These direct buses cover the 465 km distance in an average of 9 h 27 m but if you time it right, some buses will get you there in just 8 h 49 m .

The slowest buses will take 10 h and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.

PO Majoe Muda MandiriPO MAJOE MUDA MANDIRI
11:00AM8h49
Jakarta, Pintu Terminal Pulo Gebang
07:49PMSurakarta, Terminal Tirtonadi
$131One-way
0 changes
PO Majoe Muda MandiriPO MAJOE MUDA MANDIRI
09:00AM9h15
Jakarta, Terminal Grogol
06:15PMSurakarta, Terminal Tirtonadi
$131One-way
0 changes
PO Majoe Muda MandiriPO MAJOE MUDA MANDIRI
10:00AM9h11
Jakarta, Terminal Kampung Rambutan
07:11PMSurakarta, Terminal Tirtonadi
$131One-way
0 changes
Harapan JayaHARAPAN JAYA
06:00PM10h30
Jakarta, Kapuk
04:30AMSurakarta, Terminal Tirtonadi
$171One-way
0 changes
Harapan JayaHARAPAN JAYA
04:30PM10h30
Jakarta, Grogol
03:00AMSurakarta, Terminal Tirtonadi
$171One-way
0 changes

Travel Information

Compare train, coach and flight for Jakarta to Surakarta

Omio recommends booking the flight as it is the most popular option from Jakarta to Surakarta among Omio's users. If you are prioritising price take the coach with prices starting from $13. For those with little time consider booking a flight which can get you there in 1h 10m. The ticket price range depends on the travel mode: a coach costs an average of $13, and a flight costs an average of $50.

Distance: 465 km

Compare bus with

Coach
Most popular
Flight
Train

$15

Average Price

Cheapest

$69

Average Price

$33

Average Price

9h 53m

Average total duration

9h 23m

Onboard

+

30m

Additional time*

4h 10m

Average total duration

Fastest

1h 10m

Onboard

+

3h 0m

Additional time*

7h 47m

Average total duration

7h 17m

Onboard

+

30m

Additional time*

Direct Options

Direct Options

Direct Options

Live departures

Jakarta to Surakarta bus times

The table below shows live departures for Jakarta to Surakarta coaches for today, Wednesday, 28 January. You can also manually refresh the results below to see updated coach journeys.

Last updated at 6:55 pm
ProviderDepartsDurationArrivesChanges
Tickets
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:15 pm Jakarta, Ampera
10h30
9:45 am Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:30 pm Jakarta, Terminal Kalideres
10h30
10:00 am Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:45 pm Jakarta, Kapuk
10h30
10:15 am Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:55 pm Jakarta, Cengkareng
10h30
10:25 am Surakarta, Terminal Tirtonadi0 changesdirect
Thursday, 29 January
ESB_304_HARAPAN_JAYAHARAPAN JAYA12:00 am Jakarta, Pasar Rebo
10h30
10:30 am Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA12:00 am Jakarta, Taman Kota
10h00
10:00 am Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA12:10 am Jakarta, Grogol
10h30
10:40 am Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA12:30 am Jakarta, Pasar Rebo
10h30
11:00 am Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA12:30 am Jakarta, Pintu Terminal Pulo Gebang
10h30
11:00 am Surakarta, Terminal Tirtonadi0 changesdirect
ESB_6983_PoMajoeMudaMandiriPO MAJOE MUDA MANDIRI2:00 am Jakarta, Terminal Grogol
9h15
11:15 am Surakarta, Terminal Tirtonadi0 changesdirect
ESB_6983_PoMajoeMudaMandiriPO MAJOE MUDA MANDIRI3:00 am Jakarta, Terminal Kampung Rambutan
9h11
12:11 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_6983_PoMajoeMudaMandiriPO MAJOE MUDA MANDIRI4:00 am Jakarta, Pintu Terminal Pulo Gebang
8h49
12:49 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA6:15 am Jakarta, Kapuk
10h30
4:45 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:00 am Terminal Tanjung Priok, Jakarta Utara
10h30
5:30 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:00 am Jakarta, Ampera
10h30
5:30 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:15 am Jakarta, Terminal Kalideres
10h30
5:45 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:30 am Jakarta, Kapuk
10h30
6:00 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA7:45 am Jakarta, Cengkareng
10h30
6:15 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:00 am Jakarta, Taman Kota
10h00
6:00 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:15 am Jakarta, Grogol
10h30
6:45 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:30 am Jakarta, Pondok Pinang
10h30
7:00 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA8:30 am Jakarta, Lebak Bulus
10h30
7:00 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:00 am Jakarta, Lebak Bulus
10h30
7:30 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:00 am Jakarta, Pasar Rebo
10h30
7:30 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:00 am Jakarta, Pondok Pinang
10h30
7:30 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:30 am Jakarta, Grogol
10h30
8:00 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:30 am Jakarta, Pasar Rebo
10h30
8:00 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA9:30 am Jakarta, Pintu Terminal Pulo Gebang
10h30
8:00 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:00 am Jakarta, Pintu Terminal Pulo Gebang
10h30
8:30 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:30 am Jakarta, Ampera
10h30
9:00 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA10:45 am Jakarta, Terminal Kalideres
10h30
9:15 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:00 am Jakarta, Kapuk
10h30
9:30 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:10 am Jakarta, Cengkareng
10h30
9:40 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:15 am Jakarta, Taman Kota
10h00
9:15 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:30 am Jakarta, Grogol
10h30
10:00 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA11:45 am Jakarta, Ampera
10h30
10:15 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA12:00 pm Jakarta, Terminal Kalideres
10h30
10:30 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA12:05 pm Jakarta, Cengkareng
10h30
10:35 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA12:10 pm Jakarta, Taman Kota
10h00
10:10 pm Surakarta, Terminal Tirtonadi0 changesdirect
ESB_304_HARAPAN_JAYAHARAPAN JAYA12:15 pm Jakarta, Grogol
10h30
10:45 pm Surakarta, Terminal Tirtonadi0 changesdirect

Find all the dates and times for this journey

Compare prices and tickets Jakarta to Surakarta by train, coach or flight

Compare train, coach and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.

Thu
29 Jan
Fri
30 Jan
Sat
31 Jan
Sun
01 Feb
Mon
02 Feb
Tue
03 Feb
Wed
04 Feb

Journey information

Overview: Bus from Jakarta to Surakarta

IndonesiaIndonesia
IndonesiaIndonesia
Icon of bus

Buses from Jakarta to Surakarta run on average 43 times per day, taking around 9h 23m. Cheap bus tickets for this journey start at $13 if you book in advance.

There are 43 coaches per day. The earliest coach runs at 06:15, the last at 21:15. The fastest coach covers the 465 km distance in 9h 15m.

Fares are the lowest economy prices found on Omio. Early booking often means lower prices. Prices change daily and are subject to availability. Discount cards, coach trips, and booking fees are not included.
Price information
Distance
465 km
Average bus duration
9h 23m
Cheapest ticket price
$13
Buses per day
43
Direct buses
43
Fastest bus
9h 15m
First bus
06:15
Last bus
21:15
Fares are the lowest economy prices found on Omio. Early booking often means lower prices. Prices change daily and are subject to availability. Discount cards, coach trips, and booking fees are not included.
Price information

Bus providers: TransJakarta from Jakarta to SurakartaYou can travel by bus between Jakarta to Surakarta with TransJakarta for as low as $13. When you search for schedules and tickets, Omio will show you the best journey

TransJakarta

Luggage & cancellation policy
Average Duration
10h 24m
TransJakarta frequency
1 a day

FAQs: Jakarta to Surakarta coach

Find answers to the most common questions about traveling from Jakarta to Surakarta by coach. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest coach, the cheapest option, or tips for making the most of your visit at Surakarta, this guide helps you travel smarter and with confidence.

FAQs
Cheap coach tickets from Jakarta to Surakarta can start from as little as $13 when you book in advance. The average coach ticket price for Jakarta to Surakarta is $15; however, prices vary depending on the time of day and class and they tend to be more expensive on the day.
The average journey time by coach from Jakarta to Surakarta is 9h 15m to travel the 465 km long trip. Journey times can vary on weekends and holidays, so use our Journey Planner to search for a specific date.
The earliest coach from Jakarta to Surakarta leaves at 6:15 am. Plan your trip with the Journey Planner from Omio.
The latest coach from Jakarta to Surakarta leaves at 9:15 pm.
Yes, there are 43 direct coaches a day from Jakarta to Surakarta with . Schedules can vary on holidays or weekends with fewer direct coaches.
When taking a coach from Jakarta to Surakarta, you can count on TransJakarta for the best way to get you to Surakarta. You can also check all possible coach companies who offer a service between Jakarta and Surakarta and compare the amenities they offer before buying a coach ticket.
When departing from Jakarta , you have various coach station options to start your trip from including Jakarta, Pintu Terminal Pulo Gebang, Jakarta, Pasar Rebo, Jakarta, Grogol, Jakarta, Lebak Bulus, Jakarta, Pondok Pinang, Jakarta, Terminal Kalideres, Jakarta, Ampera, Jakarta, Kapuk, Jakarta, Taman Kota, Jakarta, Terminal Kampung Rambutan, Jakarta, Terminal Grogol, Terminal Tanjung Priok, Jakarta Utara, Jakarta, Cengkareng, Jakarta, Cililitan, Jakarta, Cijantung, Jakarta, Jakarta, Bandar Jaya Kota, Depok . When arriving in Surakarta , you can end your trip in coach stations like Surakarta, Terminal Tirtonadi, Kota Boyolali, Grogol, Solo Sumber, Gondangrejo, Terminal Kalioso .Passengers board the coach most frequently from Jakarta, Pintu Terminal Pulo Gebang, which is located around 11 away from the city centre, and they get off the coach at Surakarta, Terminal Tirtonadi, located 1 away from the city centre.
A trip to Surakarta from Jakarta is worth doing but not as a day trip with a journey time of 9h 15m each way. Check with Omio app the best way to travel.
The cheapest month for a coach from Jakarta to Surakarta is August.
It's helpful to compare your options as there are 3 ways to travel between Jakarta and Surakarta including taking a train, coach and flight.
No, the coach from Jakarta to Surakarta has no accessibility options.
No, there are no bathrooms on board the coach from Jakarta to Surakarta.
No, bikes are not allowed on board the coach from Jakarta to Surakarta.
Tickets are often cheaper when booked early. Traveling during off-peak hours or on weekdays can help you save money. Sort results by price to quickly identify the most affordable options. Check for promotions or discounts available on our website and app.
Yes, there is food available to purchase on board the coach from Jakarta to Surakarta.
No, luggage for the coach from Jakarta to Surakarta needs to be booked in addition.
No, there are no additional luggage options for the coach from Jakarta to Surakarta.
Unfortunately, pets are not allowed on the coach from Jakarta to Surakarta.
No, there are no USB plugs on board the coach from Jakarta to Surakarta.
No, there is no WiFi on board the coach from Jakarta to Surakarta.

popular bus stations

Important Stations and Airports in Jakarta and Surakarta

Jakarta
Surakarta
The major coach station for departures in Jakarta is Jakarta, Pintu Terminal Pulo Gebang. Find all the information you need to know about services, amenities and connections at Jakarta, Pintu Terminal Pulo Gebang for your trip from Jakarta to Surakarta.
Amenities at bus station
WifiWifi
ParkingParking
DiningDining
ATMATM
TaxisTaxis
AccessibilityAccessibility
WCWC
Ticket OfficeTicket Office
information
ticketOfficeHours
Ticket Office Hours
  • 05:00-22:00
ticketOfficeHours
Distance to city center
11 km
carConnection
Car connection
Jalan Pulo Gebang Raya
Wifi
Wifi
  • Free Wi-Fi in terminal building
Parking
Parking
  • Large parking area available for cars and motorcycles
Dining
Dining
  • Food court and various food stalls available
Taxis
Taxis
  • Available at designated taxi stand
Accessibility
Accessibility
  • Wheelchair ramps, dedicated assistance
WC
WC
  • Public toilets available
Public transport options for Jakarta, Pintu Terminal Pulo Gebang
  • Bus: Transjakarta, AKAP buses
  • Angkot: Various routes
Amenities at bus station
ParkingParking
DiningDining
ATMATM
TaxisTaxis
AccessibilityAccessibility
WCWC
Ticket OfficeTicket Office
information
ticketOfficeHours
Ticket Office Hours
  • 05:00-22:00
ticketOfficeHours
Distance to city center
12 km
carConnection
Car connection
Jalan Raya Bogor
Parking
Parking
  • Available in surrounding area
Dining
Dining
  • Local food stalls and small restaurants nearby
Taxis
Taxis
  • Available at designated taxi stands
Accessibility
Accessibility
  • Basic ramps available
WC
WC
  • Public toilets available
Public transport options for Jakarta, Pasar Rebo
  • Bus: Transjakarta Corridor 7, Regular buses
  • Angkot: Various routes
Amenities at bus station
ParkingParking
DiningDining
ATMATM
TaxisTaxis
AccessibilityAccessibility
WCWC
Ticket OfficeTicket Office
information
ticketOfficeHours
Ticket Office Hours
  • 05:00-22:00
ticketOfficeHours
Distance to city center
8 km
carConnection
Car connection
Jalan Daan Mogot
Parking
Parking
  • Available in surrounding area
Dining
Dining
  • Local food stalls and small restaurants nearby
Taxis
Taxis
  • Available at designated taxi stands
Accessibility
Accessibility
  • Basic ramps available
WC
WC
  • Public toilets available
Public transport options for Jakarta, Grogol
  • Bus: TransJakarta Corridor 3, 8
  • Angkot: M26, M27

More options for your journey from Jakarta to Surakarta

Here are some other resources that might have the information you need

The Omio App Makes Travel Planning Easy

We’ll get you where you want to go. From live train updates to mobile tickets, our innovative app is the ideal way to plan and keep track of your travel.

ios-badge
android-badge
Hand With Phone