Which bus from Jakarta to Surabaya is the best?
Check the bus schedule for Jakarta to Surabaya. Here is a selection of the cheapest coach trips for the next days from bus operators like Harapan Jaya, Kramat Djati or Safari Dharma Raya. To see the full timetable for all coaches just use or search and compare.
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Sarwonadhi Trans | 10h 30m | 09:00 | Jakarta | Teuku Umar 8 Coach Station | 18:30 | Surabaya | Central Station | Economy | £11 |
A Bus from Sarwonadhi Trans goes from Teuku Umar 8 Coach Station, Jakarta (Indonesia) at 04/05/2026 09:00:00 to Central Station, Surabaya (Indonesia) arriving at 04/05/2026 18:30:00. 50 Economy ticket for £11 per person are available. Travel duration is 10h 30m
|
||
| Tiara Mas | 12h 44m | 16:30 | Jakarta | Lebak Bulus | 05:14 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £14 |
A Bus from Tiara Mas goes from Lebak Bulus, Jakarta (Indonesia) at 04/05/2026 16:30:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 05/05/2026 05:14:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 44m
|
||
| Safari Dharma Raya | 11h 44m | 12:00 | Jakarta | Teuku Umar 8 Coach Station | 22:44 | Surabaya | Central Station | Economy | £14 |
A Bus from Safari Dharma Raya goes from Teuku Umar 8 Coach Station, Jakarta (Indonesia) at 04/05/2026 12:00:00 to Central Station, Surabaya (Indonesia) arriving at 04/05/2026 22:44:00. 50 Economy ticket for £14 per person are available. Travel duration is 11h 44m
|
||
| Harapan Jaya | 14h 30m | 06:00 | Jakarta | Jalan Ciputat Bus Stop | 20:30 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £15 |
A Bus from Harapan Jaya goes from Jalan Ciputat Bus Stop, Jakarta (Indonesia) at 04/05/2026 06:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 04/05/2026 20:30:00. 50 Economy ticket for £15 per person are available. Travel duration is 14h 30m
|
||
| Kramat Djati | 19h 34m | 16:00 | Jakarta | Terminal Pulo Gebang | 11:34 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £15 |
A Bus from Kramat Djati goes from Terminal Pulo Gebang, Jakarta (Indonesia) at 04/05/2026 16:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 05/05/2026 11:34:00. 50 Economy ticket for £15 per person are available. Travel duration is 19h 34m
|
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Sarwonadhi Trans | 10h 30m | 09:00 | Jakarta | Teuku Umar 8 Coach Station | 18:30 | Surabaya | Central Station | Economy | £11 |
A Bus from Sarwonadhi Trans goes from Teuku Umar 8 Coach Station, Jakarta (Indonesia) at 05/05/2026 09:00:00 to Central Station, Surabaya (Indonesia) arriving at 05/05/2026 18:30:00. 50 Economy ticket for £11 per person are available. Travel duration is 10h 30m
|
||
| Safari Dharma Raya | 11h 44m | 12:00 | Jakarta | Teuku Umar 8 Coach Station | 22:44 | Surabaya | Central Station | Economy | £14 |
A Bus from Safari Dharma Raya goes from Teuku Umar 8 Coach Station, Jakarta (Indonesia) at 05/05/2026 12:00:00 to Central Station, Surabaya (Indonesia) arriving at 05/05/2026 22:44:00. 50 Economy ticket for £14 per person are available. Travel duration is 11h 44m
|
||
| Tiara Mas | 12h 6m | 19:00 | Jakarta | Terminal Pulo Gebang | 07:06 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £14 |
A Bus from Tiara Mas goes from Terminal Pulo Gebang, Jakarta (Indonesia) at 05/05/2026 19:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 06/05/2026 07:06:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 6m
|
||
| Harapan Jaya | 13h 0m | 06:15 | Jakarta | Kalideres Central Bus Station | 19:15 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £15 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 05/05/2026 06:15:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 05/05/2026 19:15:00. 50 Economy ticket for £15 per person are available. Travel duration is 13h 0m
|
||
| Kramat Djati | 18h 0m | 13:00 | Jakarta | Terminal Manggarai | 07:00 | Surabaya | Central Station | Economy | £15 |
A Bus from Kramat Djati goes from Terminal Manggarai, Jakarta (Indonesia) at 05/05/2026 13:00:00 to Central Station, Surabaya (Indonesia) arriving at 06/05/2026 07:00:00. 50 Economy ticket for £15 per person are available. Travel duration is 18h 0m
|
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Kramat Djati | 21h 36m | 14:30 | Jakarta | Terminal Pondok Pinang | 12:06 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £13 |
A Bus from Kramat Djati goes from Terminal Pondok Pinang, Jakarta (Indonesia) at 06/05/2026 14:30:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 07/05/2026 12:06:00. 50 Economy ticket for £13 per person are available. Travel duration is 21h 36m
|
||
| Kramat Djati | 16h 52m | 15:00 | Jakarta | Terminal Pondok Pinang | 07:52 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £14 |
A Bus from Kramat Djati goes from Terminal Pondok Pinang, Jakarta (Indonesia) at 06/05/2026 15:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 07/05/2026 07:52:00. 50 Economy ticket for £14 per person are available. Travel duration is 16h 52m
|
||
| Tiara Mas | 12h 28m | 17:00 | Jakarta | Terminal Kampung Rambutan | 05:28 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £14 |
A Bus from Tiara Mas goes from Terminal Kampung Rambutan, Jakarta (Indonesia) at 06/05/2026 17:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 07/05/2026 05:28:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 28m
|
||
| Harapan Jaya | 13h 0m | 06:30 | Jakarta | Lebak Bulus | 19:30 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £15 |
A Bus from Harapan Jaya goes from Lebak Bulus, Jakarta (Indonesia) at 06/05/2026 06:30:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 06/05/2026 19:30:00. 50 Economy ticket for £15 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 13:00 | Jakarta | Lebak Bulus | 02:00 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £15 |
A Bus from Harapan Jaya goes from Lebak Bulus, Jakarta (Indonesia) at 06/05/2026 13:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 07/05/2026 02:00:00. 50 Economy ticket for £15 per person are available. Travel duration is 13h 0m
|
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Kramat Djati | 21h 36m | 14:30 | Jakarta | Terminal Pondok Pinang | 12:06 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £13 |
A Bus from Kramat Djati goes from Terminal Pondok Pinang, Jakarta (Indonesia) at 07/05/2026 14:30:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 08/05/2026 12:06:00. 50 Economy ticket for £13 per person are available. Travel duration is 21h 36m
|
||
| Kramat Djati | 19h 34m | 16:00 | Jakarta | Terminal Pulo Gebang | 11:34 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £13 |
A Bus from Kramat Djati goes from Terminal Pulo Gebang, Jakarta (Indonesia) at 07/05/2026 16:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 08/05/2026 11:34:00. 50 Economy ticket for £13 per person are available. Travel duration is 19h 34m
|
||
| Tiara Mas | 12h 44m | 16:30 | Jakarta | Lebak Bulus | 05:14 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £14 |
A Bus from Tiara Mas goes from Lebak Bulus, Jakarta (Indonesia) at 07/05/2026 16:30:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 08/05/2026 05:14:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 44m
|
||
| Tiara Mas | 12h 6m | 19:00 | Jakarta | Terminal Pulo Gebang | 07:06 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £14 |
A Bus from Tiara Mas goes from Terminal Pulo Gebang, Jakarta (Indonesia) at 07/05/2026 19:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 08/05/2026 07:06:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 6m
|
||
| Harapan Jaya | 13h 0m | 06:15 | Jakarta | Kalideres Central Bus Station | 19:15 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £15 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 07/05/2026 06:15:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 07/05/2026 19:15:00. 50 Economy ticket for £15 per person are available. Travel duration is 13h 0m
|
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Sarwonadhi Trans | 9h 30m | 09:00 | Jakarta | Teuku Umar 8 Coach Station | 18:30 | Surabaya | Central Station | Economy | £11 |
A Bus from Sarwonadhi Trans goes from Teuku Umar 8 Coach Station, Jakarta (Indonesia) at 08/05/2026 09:00:00 to Central Station, Surabaya (Indonesia) arriving at 08/05/2026 18:30:00. 50 Economy ticket for £11 per person are available. Travel duration is 9h 30m
|
||
| Safari Dharma Raya | 10h 44m | 12:00 | Jakarta | Teuku Umar 8 Coach Station | 22:44 | Surabaya | Central Station | Economy | £14 |
A Bus from Safari Dharma Raya goes from Teuku Umar 8 Coach Station, Jakarta (Indonesia) at 08/05/2026 12:00:00 to Central Station, Surabaya (Indonesia) arriving at 08/05/2026 22:44:00. 50 Economy ticket for £14 per person are available. Travel duration is 10h 44m
|
||
| Kramat Djati | 13h 30m | 16:00 | Jakarta | Terminal Kampung Rambutan | 05:30 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £14 |
A Bus from Kramat Djati goes from Terminal Kampung Rambutan, Jakarta (Indonesia) at 08/05/2026 16:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 09/05/2026 05:30:00. 50 Economy ticket for £14 per person are available. Travel duration is 13h 30m
|
||
| Tiara Mas | 12h 28m | 17:00 | Jakarta | Terminal Kampung Rambutan | 05:28 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £14 |
A Bus from Tiara Mas goes from Terminal Kampung Rambutan, Jakarta (Indonesia) at 08/05/2026 17:00:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 09/05/2026 05:28:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 28m
|
||
| Harapan Jaya | 13h 0m | 06:15 | Jakarta | Kalideres Central Bus Station | 19:15 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £15 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 08/05/2026 06:15:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 08/05/2026 19:15:00. 50 Economy ticket for £15 per person are available. Travel duration is 13h 0m
|
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Damri Express | 10h 0m | 19:00 | Jakarta | Terminal Manggarai | 05:00 | Surabaya | Central Station | Economy | £14 |
A Bus from Damri Express goes from Terminal Manggarai, Jakarta (Indonesia) at 09/05/2026 19:00:00 to Central Station, Surabaya (Indonesia) arriving at 10/05/2026 05:00:00. 50 Economy ticket for £14 per person are available. Travel duration is 10h 0m
|
||
| Damri Express | 10h 0m | 19:30 | Jakarta | Terminal Manggarai | 05:30 | Surabaya | Central Station | Economy | £14 |
A Bus from Damri Express goes from Terminal Manggarai, Jakarta (Indonesia) at 09/05/2026 19:30:00 to Central Station, Surabaya (Indonesia) arriving at 10/05/2026 05:30:00. 50 Economy ticket for £14 per person are available. Travel duration is 10h 0m
|
||
| Kramat Djati | 18h 0m | 13:00 | Jakarta | Terminal Manggarai | 07:00 | Surabaya | Central Station | Economy | £15 |
A Bus from Kramat Djati goes from Terminal Manggarai, Jakarta (Indonesia) at 09/05/2026 13:00:00 to Central Station, Surabaya (Indonesia) arriving at 10/05/2026 07:00:00. 50 Economy ticket for £15 per person are available. Travel duration is 18h 0m
|
||
| Kramat Djati | 16h 0m | 14:30 | Jakarta | Terminal Manggarai | 06:30 | Surabaya | Central Station | Economy | £15 |
A Bus from Kramat Djati goes from Terminal Manggarai, Jakarta (Indonesia) at 09/05/2026 14:30:00 to Central Station, Surabaya (Indonesia) arriving at 10/05/2026 06:30:00. 50 Economy ticket for £15 per person are available. Travel duration is 16h 0m
|
||
| Gunung Harta | 11h 0m | 16:00 | Jakarta | Terminal Manggarai | 03:00 | Surabaya | Central Station | Economy | £16 |
A Bus from Gunung Harta goes from Terminal Manggarai, Jakarta (Indonesia) at 09/05/2026 16:00:00 to Central Station, Surabaya (Indonesia) arriving at 10/05/2026 03:00:00. 50 Economy ticket for £16 per person are available. Travel duration is 11h 0m
|
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Sarwonadhi Trans | 10h 30m | 09:00 | Jakarta | Teuku Umar 8 Coach Station | 18:30 | Surabaya | Central Station | Economy | £11 |
A Bus from Sarwonadhi Trans goes from Teuku Umar 8 Coach Station, Jakarta (Indonesia) at 10/05/2026 09:00:00 to Central Station, Surabaya (Indonesia) arriving at 10/05/2026 18:30:00. 50 Economy ticket for £11 per person are available. Travel duration is 10h 30m
|
||
| Damri Express | 9h 0m | 08:00 | Jakarta | Terminal Manggarai | 18:00 | Surabaya | Central Station | Economy | £12 |
A Bus from Damri Express goes from Terminal Manggarai, Jakarta (Indonesia) at 10/05/2026 08:00:00 to Central Station, Surabaya (Indonesia) arriving at 10/05/2026 18:00:00. 50 Economy ticket for £12 per person are available. Travel duration is 9h 0m
|
||
| Safari Dharma Raya | 11h 44m | 12:00 | Jakarta | Teuku Umar 8 Coach Station | 22:44 | Surabaya | Central Station | Economy | £14 |
A Bus from Safari Dharma Raya goes from Teuku Umar 8 Coach Station, Jakarta (Indonesia) at 10/05/2026 12:00:00 to Central Station, Surabaya (Indonesia) arriving at 10/05/2026 22:44:00. 50 Economy ticket for £14 per person are available. Travel duration is 11h 44m
|
||
| Tiara Mas | 12h 44m | 16:30 | Jakarta | Lebak Bulus | 05:14 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £14 |
A Bus from Tiara Mas goes from Lebak Bulus, Jakarta (Indonesia) at 10/05/2026 16:30:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 11/05/2026 05:14:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 44m
|
||
| Harapan Jaya | 13h 0m | 06:15 | Jakarta | Kalideres Central Bus Station | 19:15 | Surabaya | Terminal Purabaya-Bungurasih | Economy | £15 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 10/05/2026 06:15:00 to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 10/05/2026 19:15:00. 50 Economy ticket for £15 per person are available. Travel duration is 13h 0m
|
Best Price Offer: The price for the cheapest coach from Jakarta to Surabaya is £9 on 24/05/2026. Flexible travellers save on ticket prices.
What is the best day and time to travel by bus between Jakarta and Surabaya?
All facts for Jakarta to Surabaya bus at a glance
Compare all coach operators like Harapan Jaya, Kramat Djati and Safari Dharma Raya that travel daily 30 times by bus from Jakarta to Surabaya in one click. Book your Jakarta to Surabaya bus ticket starting from £9!
| Cheapest Bus | £9 |
| Fastest Bus | 3h 43m |
| Earliest Coach | 06:00 |
| Latest Coach | 21:00 |
| Daily Bus Connections | 30 Ø |
| Distance | 662.2 km |
| Coach Companies | Harapan Jaya, Kramat Djati, Safari Dharma Raya, Agra mas, Damri Express, MTrans, Tiara Mas, Sarwonadhi Trans and Gunung Harta |
What are the cheapest coach tickets from Jakarta to Surabaya?
Every day, 30 buses from 9 coach companies leave Jakarta for Surabaya. Check the table below to find the cheapest prices for coach tickets for this route, starting from 04/05/2026 and for the following days. Make sure get the cheapest bus ticket!
The cheapest time to travel from Jakarta to Surabaya
How to save money travelling from Jakarta to Surabaya
Book the ticket from Jakarta to Surabaya in advance! The earlier you book, the cheaper usually the price is. Also, you will be sure to have a place on the coach from Jakarta to Surabaya, compared instead if you buy it at the last moment, or directly at the station.
If you can, avoid travelling at peak times. Instead of weekend, try travelling during the week. Travelling in the evening or at night it’s also cheaper, and later coaches from Jakarta to Surabaya are also emptier.Check for bus deals and promotions for all bus companies in this route. On CheckMyBus we show special offers directly in the coach trip on our search. Sign-up and check or deals sections and get notifications on our latest travel hacks.
All bus stations and stops in Jakarta and Surabaya
Here is a map with all coach stations in Jakarta and Surabaya. Compare which stop is closest to your destination to save time to find the fastest buses and connections.
Compare the bus with other modes of transport
All you need to know when you travel by bus from Jakarta to Surabaya
FAQs for Jakarta to Surabaya bus
How much does a Jakarta Surabaya coach trip cost?
How much could I save by comparing buses from Jakarta to Surabaya?
How many connections are available for the Jakarta Surabaya route on average every day?
How long does a bus to Surabaya from Jakarta take?
What time is the first bus from Jakarta to Surabaya?
What time is the last coach from Jakarta to Surabaya?
Which bus companies serve the Jakarta Surabaya route?
Is there a direct bus between Jakarta and Surabaya?
What can I take with me on the bus to Surabaya from Jakarta?
What equipment is available for the Jakarta Surabaya bus route?
How does CheckMyBus find the best coach deals from Jakarta to Surabaya?
How does CheckMyBus technology work for trips from Jakarta to Surabaya?
Available seat classes which are offered on the bus route Jakarta to Surabaya
The cheapest option available for your ticket, it usually comes with reclinable seats and AC.
