Compare all timetables for the bus from Jakarta to Surabaya
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Medali Mas | 13h 30m | 5:30 PM | Jakarta | Teuku Umar 8 Bus Station | 6:00 AM | Surabaya | Central Station | Business | $11 |
A Bus from Medali Mas goes from Teuku Umar 8 Bus Station, Jakarta (Indonesia) at 7/22/2026 5:30:00 PM to Central Station, Surabaya (Indonesia) arriving at 7/23/2026 6:00:00 AM. 50 Business ticket for $11 per person are available. Travel duration is 13h 30m
|
||
| Sarwonadhi Trans | 10h 40m | 9:00 AM | Jakarta | Teuku Umar 8 Bus Station | 6:40 PM | Surabaya | Central Station | Economy | $15 |
A Bus from Sarwonadhi Trans goes from Teuku Umar 8 Bus Station, Jakarta (Indonesia) at 7/22/2026 9:00:00 AM to Central Station, Surabaya (Indonesia) arriving at 7/22/2026 6:40:00 PM. 50 Economy ticket for $15 per person are available. Travel duration is 10h 40m
|
||
| Pahala Kencana | 15h 25m | 1:50 PM | Jakarta | Terminal Manggarai | 5:15 AM | Surabaya | Central Station | Economy | $17 |
A Bus from Pahala Kencana goes from Terminal Manggarai, Jakarta (Indonesia) at 7/22/2026 1:50:00 PM to Central Station, Surabaya (Indonesia) arriving at 7/23/2026 5:15:00 AM. 50 Economy ticket for $17 per person are available. Travel duration is 15h 25m
|
||
| Damri Express | 10h 0m | 8:00 AM | Jakarta | Terminal Pulo Gebang | 6:00 PM | Surabaya | Terminal Purabaya-Bungurasih | Business | $17 |
A Bus from Damri Express goes from Terminal Pulo Gebang, Jakarta (Indonesia) at 7/22/2026 8:00:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/22/2026 6:00:00 PM. 50 Business ticket for $17 per person are available. Travel duration is 10h 0m
|
||
| Harapan Jaya | 13h 0m | 6:30 AM | Jakarta | Lebak Bulus | 7:30 PM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Lebak Bulus, Jakarta (Indonesia) at 7/22/2026 6:30:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/22/2026 7:30:00 PM. 50 Economy ticket for $20 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 | 8:00 AM | Jakarta | Terminal Bus Kota Blok M | 6:00 PM | Surabaya | Central Station | Business | $15 |
A Bus from Damri Express goes from Terminal Bus Kota Blok M, Jakarta (Indonesia) at 7/23/2026 8:00:00 AM to Central Station, Surabaya (Indonesia) arriving at 7/23/2026 6:00:00 PM. 50 Business ticket for $15 per person are available. Travel duration is 10h 0m
|
||
| Pahala Kencana | 16h 10m | 1:50 PM | Jakarta | Terminal Bus Kota Blok M | 6:00 AM | Surabaya | Central Station | Economy | $17 |
A Bus from Pahala Kencana goes from Terminal Bus Kota Blok M, Jakarta (Indonesia) at 7/23/2026 1:50:00 PM to Central Station, Surabaya (Indonesia) arriving at 7/24/2026 6:00:00 AM. 50 Economy ticket for $17 per person are available. Travel duration is 16h 10m
|
||
| Sinar Jaya | 13h 0m | 6:00 AM | Jakarta | Terminal Bus Kota Blok M | 7:00 PM | Surabaya | Central Station | Premium Economy | $18 |
A Bus from Sinar Jaya goes from Terminal Bus Kota Blok M, Jakarta (Indonesia) at 7/23/2026 6:00:00 AM to Central Station, Surabaya (Indonesia) arriving at 7/23/2026 7:00:00 PM. 50 Premium Economy ticket for $18 per person are available. Travel duration is 13h 0m
|
||
| Tiara Mas | 12h 56m | 3:30 PM | Jakarta | Kalideres Central Bus Station | 4:26 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $19 |
A Bus from Tiara Mas goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 7/23/2026 3:30:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/24/2026 4:26:00 AM. 50 Economy ticket for $19 per person are available. Travel duration is 12h 56m
|
||
| Harapan Jaya | 12h 0m | 6:00 AM | Jakarta | Terminal Bus Kota Blok M | 6:00 PM | Surabaya | Central Station | Business | $20 |
A Bus from Harapan Jaya goes from Terminal Bus Kota Blok M, Jakarta (Indonesia) at 7/23/2026 6:00:00 AM to Central Station, Surabaya (Indonesia) arriving at 7/23/2026 6:00:00 PM. 50 Business ticket for $20 per person are available. Travel duration is 12h 0m
|
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Harapan Jaya | 10h 0m | 3:00 PM | Jakarta | Terminal Bus Kota Blok M | 1:00 AM | Surabaya | Sidotopo Bus Station | Economy | $14 |
A Bus from Harapan Jaya goes from Terminal Bus Kota Blok M, Jakarta (Indonesia) at 7/24/2026 3:00:00 PM to Sidotopo Bus Station, Surabaya (Indonesia) arriving at 7/25/2026 1:00:00 AM. 50 Economy ticket for $14 per person are available. Travel duration is 10h 0m
|
||
| Pahala Kencana | 15h 25m | 1:50 PM | Jakarta | Terminal Tanjung Priok Bus Stop | 5:15 AM | Surabaya | Central Station | Economy | $17 |
A Bus from Pahala Kencana goes from Terminal Tanjung Priok Bus Stop, Jakarta (Indonesia) at 7/24/2026 1:50:00 PM to Central Station, Surabaya (Indonesia) arriving at 7/25/2026 5:15:00 AM. 50 Economy ticket for $17 per person are available. Travel duration is 15h 25m
|
||
| Damri Express | 10h 0m | 8:00 AM | Jakarta | Terminal Pulo Gebang | 6:00 PM | Surabaya | Terminal Purabaya-Bungurasih | Business | $17 |
A Bus from Damri Express goes from Terminal Pulo Gebang, Jakarta (Indonesia) at 7/24/2026 8:00:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/24/2026 6:00:00 PM. 50 Business ticket for $17 per person are available. Travel duration is 10h 0m
|
||
| Haryanto Bojonegoro | 16h 15m | 11:30 AM | Jakarta | Terminal Tanjung Priok Bus Stop | 3:45 AM | Surabaya | Central Station | Economy | $19 |
A Bus from Haryanto Bojonegoro goes from Terminal Tanjung Priok Bus Stop, Jakarta (Indonesia) at 7/24/2026 11:30:00 AM to Central Station, Surabaya (Indonesia) arriving at 7/25/2026 3:45:00 AM. 50 Economy ticket for $19 per person are available. Travel duration is 16h 15m
|
||
| Gunung Harta | 17h 30m | 12:00 PM | Jakarta | Terminal Tanjung Priok Bus Stop | 5:30 AM | Surabaya | Central Station | Economy | $20 |
A Bus from Gunung Harta goes from Terminal Tanjung Priok Bus Stop, Jakarta (Indonesia) at 7/24/2026 12:00:00 PM to Central Station, Surabaya (Indonesia) arriving at 7/25/2026 5:30:00 AM. 50 Economy ticket for $20 per person are available. Travel duration is 17h 30m
|
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Damri Express | 10h 0m | 8:00 AM | Jakarta | Terminal Pulo Gebang | 6:00 PM | Surabaya | Terminal Purabaya-Bungurasih | Business | $17 |
A Bus from Damri Express goes from Terminal Pulo Gebang, Jakarta (Indonesia) at 7/25/2026 8:00:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/25/2026 6:00:00 PM. 50 Business ticket for $17 per person are available. Travel duration is 10h 0m
|
||
| Harapan Jaya | 13h 0m | 6:15 AM | Jakarta | Kalideres Central Bus Station | 7:15 PM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 7/25/2026 6:15:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/25/2026 7:15:00 PM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 6:00 PM | Jakarta | Kalideres Central Bus Station | 7:00 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 7/25/2026 6:00:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/26/2026 7:00:00 AM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 6:30 AM | Jakarta | Terminal Pondok Pinang | 7:30 PM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Terminal Pondok Pinang, Jakarta (Indonesia) at 7/25/2026 6:30:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/25/2026 7:30:00 PM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Damri Express | 10h 0m | 7:30 PM | Jakarta | Terminal Pulo Gebang | 5:30 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $23 |
A Bus from Damri Express goes from Terminal Pulo Gebang, Jakarta (Indonesia) at 7/25/2026 7:30:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/26/2026 5:30:00 AM. 50 Economy ticket for $23 per person are available. Travel duration is 10h 0m
|
| Mode of Transport | BertCompanyCountOneCompanyName | Duration | Departure time | From | Departure | Arrival time | To | Destination | Logo | Seat classes | Price | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Harapan Jaya | 13h 0m | 6:15 AM | Jakarta | Kalideres Central Bus Station | 7:15 PM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 7/26/2026 6:15:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/26/2026 7:15:00 PM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 6:00 PM | Jakarta | Kalideres Central Bus Station | 7:00 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 7/26/2026 6:00:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/27/2026 7:00:00 AM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 6:30 AM | Jakarta | Lebak Bulus | 7:30 PM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Lebak Bulus, Jakarta (Indonesia) at 7/26/2026 6:30:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/26/2026 7:30:00 PM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 1:00 PM | Jakarta | Lebak Bulus | 2:00 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Lebak Bulus, Jakarta (Indonesia) at 7/26/2026 1:00:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/27/2026 2:00:00 AM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 6:15 PM | Jakarta | Terminal Bus Kota Blok M | 7:15 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Terminal Bus Kota Blok M, Jakarta (Indonesia) at 7/26/2026 6:15:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/27/2026 7:15:00 AM. 50 Economy ticket for $20 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 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Harapan Jaya | 13h 0m | 6:15 AM | Jakarta | Kalideres Central Bus Station | 7:15 PM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 7/27/2026 6:15:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/27/2026 7:15:00 PM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 6:00 PM | Jakarta | Kalideres Central Bus Station | 7:00 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Kalideres Central Bus Station, Jakarta (Indonesia) at 7/27/2026 6:00:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/28/2026 7:00:00 AM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 6:30 AM | Jakarta | Terminal Bus Kota Blok M | 7:30 PM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Terminal Bus Kota Blok M, Jakarta (Indonesia) at 7/27/2026 6:30:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/27/2026 7:30:00 PM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 6:15 PM | Jakarta | Terminal Bus Kota Blok M | 7:15 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Terminal Bus Kota Blok M, Jakarta (Indonesia) at 7/27/2026 6:15:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/28/2026 7:15:00 AM. 50 Economy ticket for $20 per person are available. Travel duration is 13h 0m
|
||
| Harapan Jaya | 13h 0m | 1:00 PM | Jakarta | Lebak Bulus | 2:00 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Lebak Bulus, Jakarta (Indonesia) at 7/27/2026 1:00:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/28/2026 2:00:00 AM. 50 Economy ticket for $20 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 40m | 9:00 AM | Jakarta | Teuku Umar 8 Bus Station | 6:40 PM | Surabaya | Central Station | Economy | $15 |
A Bus from Sarwonadhi Trans goes from Teuku Umar 8 Bus Station, Jakarta (Indonesia) at 7/28/2026 9:00:00 AM to Central Station, Surabaya (Indonesia) arriving at 7/28/2026 6:40:00 PM. 50 Economy ticket for $15 per person are available. Travel duration is 9h 40m
|
||
| Sarwonadhi Trans | 11h 0m | 4:30 PM | Jakarta | Teuku Umar 8 Bus Station | 3:30 AM | Surabaya | Central Station | Economy | $15 |
A Bus from Sarwonadhi Trans goes from Teuku Umar 8 Bus Station, Jakarta (Indonesia) at 7/28/2026 4:30:00 PM to Central Station, Surabaya (Indonesia) arriving at 7/29/2026 3:30:00 AM. 50 Economy ticket for $15 per person are available. Travel duration is 11h 0m
|
||
| Harapan Jaya | 14h 30m | 6:00 AM | Jakarta | Jalan Ciputat Bus Stop | 8:30 PM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Jalan Ciputat Bus Stop, Jakarta (Indonesia) at 7/28/2026 6:00:00 AM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/28/2026 8:30:00 PM. 50 Economy ticket for $20 per person are available. Travel duration is 14h 30m
|
||
| Harapan Jaya | 14h 30m | 12:30 PM | Jakarta | Jalan Ciputat Bus Stop | 3:00 AM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $20 |
A Bus from Harapan Jaya goes from Jalan Ciputat Bus Stop, Jakarta (Indonesia) at 7/28/2026 12:30:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/29/2026 3:00:00 AM. 50 Economy ticket for $20 per person are available. Travel duration is 14h 30m
|
||
| Kramat Djati | 21h 36m | 2:30 PM | Jakarta | Terminal Pondok Pinang | 12:06 PM | Surabaya | Terminal Purabaya-Bungurasih | Economy | $21 |
A Bus from Kramat Djati goes from Terminal Pondok Pinang, Jakarta (Indonesia) at 7/28/2026 2:30:00 PM to Terminal Purabaya-Bungurasih, Surabaya (Indonesia) arriving at 7/29/2026 12:06:00 PM. 50 Economy ticket for $21 per person are available. Travel duration is 21h 36m
|
Best Price Offer: The price for the cheapest bus from Jakarta to Surabaya is $4 on 7/21/2026. Flexible travelers save on ticket prices.
Frequency of bus connections between Jakarta and Surabaya
Enjoy these deals on your way from Jakarta to Surabaya
Enjoy up to 52% off for your First Booking!
Facts about the bus from Jakarta to Surabaya
Compare all providers like Medali Mas, Harapan Jaya and Gunung Harta that travel 63 times every day by bus from Jakarta to Surabaya in one click! Book your bus ticket from Jakarta to Surabaya starting from $4!
| Cheapest Bus | $4 |
| Fastest Bus | 8h 40m |
| Earliest Bus | 6:30 AM |
| Latest Bus | 6:15 PM |
| Daily Bus Routes | 63 Ø |
| Distance | 411.6 miles |
| Bus Companies | Medali Mas, Harapan Jaya, Gunung Harta, Sinar Jaya, Damri Express, Kramat Djati, Haryanto Bojonegoro, Pahala Kencana, Unicorn Indorent, Tiara Mas and 1 more. |
Cheapest bus connections from Jakarta to Surabaya
Every day, 63 buses from 11 bus companies leave Jakarta for Surabaya: in the table below, you will find the cheapest prices for a bus ticket for this route, starting from 07/22/2026 and for the following days.
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 bus 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 buses from Jakarta to Surabaya are also emptier.Beloved bus companies from Jakarta to Surabaya
Harapan Jaya from Jakarta to Surabaya
Here you will find the key facts about the Harapan Jaya bus route Jakarta to Surabaya:
| Cheapest Price | $14 |
| Fastest Bus | 10h 0m |
| Earliest Bus | 6:15 AM |
| Last Bus | 6:15 PM |
| Daily Connections | 18 Ø |
| Found on | 7/10/2026 |
All bus stations and stops in Jakarta and Surabaya
In the map below, you can see where to find all bus stations in Jakarta and Surabaya.
Service and Comfort on the bus from Jakarta to Surabaya
FAQs about the Jakarta to Surabaya bus
How much does a Jakarta Surabaya bus trip cost?
How much could I save by comparing buses from Jakarta to Surabaya?
On average, how many connections are available from Jakarta to Surabaya each day?
How long does a bus journey from Jakarta to Surabaya take?
What time is the first bus from Jakarta to Surabaya?
What time is the last bus from Jakarta to Surabaya?
Which bus companies operate the Jakarta Surabaya route?
Is there a direct bus between Jakarta and Surabaya?
What can I take with me on the Jakarta to Surabaya bus route?
What equipment is available for the Jakarta Surabaya bus route?
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.
A mix between Economy and Business, it offers extra legroom, WI-FI and possible snacks.
Comfortable seating, food and drink service, accompanied generally by ticket flexibility.
More bus routes to Jakarta and to Surabaya
- Bus Routes to Jakarta
- From Banyuwangi to Jakarta bus
- Bus Bogor - Jakarta
- Buses Denpasar to Jakarta
- From Malang to Jakarta bus
- Buses Yogyakarta to Jakarta
- Bus Routes to Surabaya
- Buses Probolinggo - Surabaya
- Yogyakarta to Surabaya bus
