- Must visit
Museum Sepuluh Nopember
Major local history museum focused on the 1945 Battle of Surabaya, with immersive exhibits that explain the city's role in independence.
The best way to find a cheap bus ticket from Jakarta to Surabaya is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Jakarta to Surabaya will cost around $29 if you buy it on the day, but the cheapest tickets can be found for only $29.
On Mon, Nov 02, we found 1 buses from Jakarta to Surabaya, including 1 direct services.
On Mon, Nov 02 the direct buses cover the 662 km distance in an average of 13 h 25 m but if you time it right, some buses will get you there in just 13 h 25 m .
On Mon, Nov 02 the slowest buses will take 13 h 25 m 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.
0
|
| ||||||||||||
0
|
| ||||||||||||
Buses from Jakarta to Surabaya run on average 47 times per day, taking around 13h 6m. Cheap bus tickets for this journey start at $14 (€12) if you book in advance.
There are 47 buses per day. The earliest bus runs at 03:30, the last at 22:00. The fastest bus covers the 411 miles (662 km) distance in 10h 59m.
Plan this route
Use these quick route answers to check fares, travel time, departure options, and direct services before booking from Jakarta to Surabaya.
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator Harapan Jaya | Departure Time 06:00AM | Arrival Time 04:59PM | Duration 10h59 | Departure days Tue, Fri | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 06:15AM | Arrival Time 07:15PM | Duration 13h00 | Departure days Tue, Fri | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 06:20AM | Arrival Time 07:20PM | Duration 13h00 | Departure days Tue, Fri | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 06:30AM | Arrival Time 07:30PM | Duration 13h00 | Departure days Tue, Thu, Fri | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 06:40AM | Arrival Time 05:39PM | Duration 10h59 | Departure days Tue, Fri | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 07:00AM | Arrival Time 08:00PM | Duration 13h00 | Departure days Thu | Cheapest price $23 |
Operator Kramat Djati | Departure Time 07:30AM | Arrival Time 11:01PM | Duration 15h31 | Departure days Tue, Fri, Sat | Cheapest price $22 |
Operator Harapan Jaya | Departure Time 07:30AM | Arrival Time 08:30PM | Duration 13h00 | Departure days Thu | Cheapest price $23 |
Operator Kramat Djati | Departure Time 08:00AM | Arrival Time 10:51PM | Duration 14h51 | Departure days Tue, Fri, Sat | Cheapest price $22 |
Operator Tiara Mas | Departure Time 08:30AM | Arrival Time 09:26PM | Duration 12h56 | Departure days Wed | Cheapest price $26 |
Operator Kramat Djati | Departure Time 09:00AM | Arrival Time 10:30PM | Duration 13h30 | Departure days Tue, Fri, Sat | Cheapest price $22 |
Operator Harapan Jaya | Departure Time 11:15AM | Arrival Time 12:15AM | Duration 13h00 | Departure days Wed | Cheapest price $68 |
Operator Infobus | Departure Time 11:35AM | Arrival Time 01:00AM | Duration 13h25 | Departure days Mon, Tue, Fri, Sun | Cheapest price $29 |
Operator Mawar | Departure Time 12:30PM | Arrival Time 12:36AM | Duration 12h06 | Departure days Wed | Cheapest price $24 |
Operator Harapan Jaya | Departure Time 01:00PM | Arrival Time 02:00AM | Duration 13h00 | Departure days Tue, Thu, Fri, Sat, Sun | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 01:30PM | Arrival Time 02:30AM | Duration 13h00 | Departure days Tue, Thu, Fri, Sat, Sun | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 01:45PM | Arrival Time 12:44AM | Duration 10h59 | Departure days Tue, Fri, Sun | Cheapest price $26 |
Operator Harapan Jaya | Departure Time 02:00PM | Arrival Time 03:00AM | Duration 13h00 | Departure days Tue, Thu, Fri, Sat, Sun | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 02:15PM | Arrival Time 02:15AM | Duration 12h00 | Departure days Tue, Fri, Sun | Cheapest price $26 |
Operator 3M Transport (Sari Indah) | Departure Time 02:30PM | Arrival Time 02:58AM | Duration 12h28 | Departure days Wed | Cheapest price $19 |
Operator Harapan Jaya | Departure Time 02:30PM | Arrival Time 03:30AM | Duration 13h00 | Departure days Tue, Fri, Sun | Cheapest price $26 |
Operator Harapan Jaya | Departure Time 02:45PM | Arrival Time 01:44AM | Duration 10h59 | Departure days Tue, Fri, Sun | Cheapest price $26 |
Operator Tiara Mas | Departure Time 03:30PM | Arrival Time 04:26AM | Duration 12h56 | Departure days Tue, Fri, Sun | Cheapest price $24 |
Operator Kramat Djati | Departure Time 03:30PM | Arrival Time 12:25PM | Duration 20h55 | Departure days Tue, Fri, Sat, Sun | Cheapest price $22 |
Operator Kramat Djati | Departure Time 04:00PM | Arrival Time 12:15PM | Duration 20h15 | Departure days Tue, Fri, Sat, Sun | Cheapest price $22 |
Operator Harapan Jaya | Departure Time 04:00PM | Arrival Time 05:00AM | Duration 13h00 | Departure days Tue, Thu, Fri, Sat, Sun | Cheapest price $27 |
Operator Mawar | Departure Time 04:30PM | Arrival Time 05:26AM | Duration 12h56 | Departure days Tue, Fri, Sun | Cheapest price $23 |
Operator Tiara Mas | Departure Time 04:30PM | Arrival Time 05:14AM | Duration 12h44 | Departure days Tue, Fri, Sun | Cheapest price $24 |
Operator Harapan Jaya | Departure Time 04:30PM | Arrival Time 05:30AM | Duration 13h00 | Departure days Tue, Thu, Fri, Sat, Sun | Cheapest price $23 |
Operator Tiara Mas | Departure Time 04:40PM | Arrival Time 05:17AM | Duration 12h37 | Departure days Tue, Fri | Cheapest price $24 |
Operator Harapan Jaya | Departure Time 04:45PM | Arrival Time 05:45AM | Duration 13h00 | Departure days Tue, Fri, Sun | Cheapest price $23 |
Operator Mawar | Departure Time 05:00PM | Arrival Time 05:24AM | Duration 12h24 | Departure days Tue, Fri, Sun | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 05:00PM | Arrival Time 06:00AM | Duration 13h00 | Departure days Tue, Thu, Fri, Sat, Sun | Cheapest price $23 |
Operator Tiara Mas | Departure Time 05:00PM | Arrival Time 05:28AM | Duration 12h28 | Departure days Tue, Fri | Cheapest price $24 |
Operator Harapan Jaya | Departure Time 05:30PM | Arrival Time 06:30AM | Duration 13h00 | Departure days Tue, Thu, Fri, Sat, Sun | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 05:45PM | Arrival Time 06:45AM | Duration 13h00 | Departure days Tue, Fri, Sun | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 06:00PM | Arrival Time 07:00AM | Duration 13h00 | Departure days Tue, Thu, Fri, Sat, Sun | Cheapest price $23 |
Operator Mawar | Departure Time 06:30PM | Arrival Time 06:58AM | Duration 12h28 | Departure days Tue, Fri, Sun | Cheapest price $23 |
Operator Harapan Jaya | Departure Time 06:30PM | Arrival Time 07:30AM | Duration 13h00 | Departure days Tue, Thu, Fri, Sat, Sun | Cheapest price $23 |
Operator Tiara Mas | Departure Time 07:00PM | Arrival Time 07:06AM | Duration 12h06 | Departure days Tue, Fri | Cheapest price $24 |
Operator Mawar | Departure Time 07:30PM | Arrival Time 07:36AM | Duration 12h06 | Departure days Tue, Fri, Sun | Cheapest price $23 |
The table below shows live departures for Jakarta to Surabaya buses for tomorrow, Monday, November 2. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
0 | 11:35 AM Jakarta | 13h25 | 1:00 AM Surabaya | 0 transfersDirect | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Buses from Jakarta to Surabaya with Harapan Jaya, Kramat Djati, and 3M Transport (Sari Indah). Use the details below to compare onboard facilities.
Review the details behind your booking, from operators and ticket rules to luggage, onboard amenities, accessibility, and route-specific travel policies.
Discover the best of Surabaya — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Surabaya trip today.
Major local history museum focused on the 1945 Battle of Surabaya, with immersive exhibits that explain the city's role in independence.
Compact museum inside the House of Sampoerna complex, showing clove cigarette history, heritage interiors, and part of Surabaya's trading past.
Museum preserving H.O.S. Tjokroaminoto's former residence, where key nationalist figures once stayed. Valuable for political and social history.
Revitalized old town area with colonial buildings, museums, and photo spots. Ideal for walking and seeing Surabaya's layered urban history.
Popular public park with open lawns, playgrounds, and gardens. Well maintained and suitable for a relaxed break in central Surabaya.
Historic Arab quarter centered on a traditional religious complex and market streets. Worth visiting for heritage atmosphere and local culture.
Spicy beef soup with kluwek nuts for its black color, served with bean sprouts and salted egg. A signature Surabaya dish with deep, earthy flavor.
Beef stew with fried grated coconut and spices, usually served with rice, sambal, and serundeng. A beloved East Javanese comfort dish.
Surabaya-style noodle soup with thick broth, slices of beef, and crispy toppings. A classic local meal sold from warungs to old eateries.
Well-known seafood restaurant serving grilled fish, shellfish, and Indonesian favorites in a lively family-style setting.
Refined Indonesian dining with elegant interiors and a broad menu of archipelago dishes, suitable for a more upscale meal.
Historic casual eatery famed for rawon setan, a dark beef soup served late into the night in a simple local setting.
Budget-friendly for a major Indonesian city. Hotels, local food, and ride-hailing are cheaper than Bali or Jakarta, while malls and upscale dining still stay reasonable.
Tipping is not mandatory. Restaurants may add service. Round up or leave 5-10% for good service; for taxis, round up the fare; small tips in cafes are appreciated.
Official public transport app
Tanjung Perak, Surabaya -> Tugu Pahlawan, Surabaya
Get destination-focused answers for the end of your trip, including what to do, when to go, practical entry details, and tips for making the most of your time in Surabaya.
Find answers to the most common questions about traveling from Jakarta to Surabaya by bus. 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 bus, the cheapest option, or tips for making the most of your visit at Surabaya, this guide helps you travel smarter and with confidence.

Most Jakarta to Surabaya buses use the Jakarta, Pintu Terminal Pulo Gebang to Waru, Terminal Purabaya/Bungurasih station pair, with some services arriving at Waru, Medaeng. Use this guide to compare Jakarta and Surabaya bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
Jakarta, Pintu Terminal Pulo Gebang is 11 km from Jakarta city centre. Public transport options include:
Jakarta, Pintu Terminal Pulo Gebang has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Food court and various food stalls available
Free Wi-Fi in terminal building. ATMs are several ATMs from different banks.
Ticket office support is available at Jakarta, Pintu Terminal Pulo Gebang.
Available at Jakarta, Pintu Terminal Pulo Gebang: Parking, Taxis, WC.
Accessibility facilities are available at Jakarta, Pintu Terminal Pulo Gebang: Wheelchair ramps, dedicated assistance.
Jakarta, Terminal Kalideres is 16 km from Jakarta city centre. Public transport options include:
Jakarta, Terminal Kalideres has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Food stalls and small restaurants available in and around terminal
Free Wi-Fi available. ATMs are aTMs from several banks available.
Ticket office support is available at Jakarta, Terminal Kalideres.
Available at Jakarta, Terminal Kalideres: Parking, Taxis, WC.
Accessibility facilities are available at Jakarta, Terminal Kalideres: Ramps available.
Jakarta, Grogol is 8 km from Jakarta city centre. Public transport options include:
Jakarta, Grogol has practical services for this route, including Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Local food stalls and small restaurants nearby
ATMs are several ATMs from major banks nearby.
Ticket office support is available at Jakarta, Grogol.
Available at Jakarta, Grogol: Parking, Taxis, WC.
Accessibility facilities are available at Jakarta, Grogol: Basic ramps available.
Waru, Medaeng is 1 km from Surabaya city centre. Public transport options include:
Waru, Medaeng has practical services for this route, including Wifi, Parking, ATM, Taxis, Accessibility, WC, Shower, and Ticket Office.
Wi-Fi is available at Waru, Medaeng. ATMs are available at Waru, Medaeng.
Ticket office support is available at Waru, Medaeng.
Available at Waru, Medaeng: Parking, Taxis, WC.
Accessibility facilities are available at Waru, Medaeng: Limited accessibility options.
Waru, Terminal Purabaya/Bungurasih is 1 km from Surabaya city centre. Public transport options include:
Waru, Terminal Purabaya/Bungurasih has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Food court and various food stalls available
Free Wi-Fi available in terminal. ATMs are several ATMs from different banks.
Ticket office support is available at Waru, Terminal Purabaya/Bungurasih.
Available at Waru, Terminal Purabaya/Bungurasih: Parking, Taxis, WC.
Accessibility facilities are available at Waru, Terminal Purabaya/Bungurasih: Wheelchair ramps, assistance available.
Surabaya, Arjuna is 3 km from Surabaya city centre. Public transport options include:
Surabaya, Arjuna has practical services for this route, including Wifi, Parking, ATM, Taxis, Accessibility, WC, Shower, and Ticket Office.
Wi-Fi is available at Surabaya, Arjuna. ATMs are available at Surabaya, Arjuna.
Ticket office support is available at Surabaya, Arjuna.
Available at Surabaya, Arjuna: Parking, Taxis, WC.
Accessibility facilities are available at Surabaya, Arjuna: Basic accessibility features available.
Check bus stations information for Jakarta and Surabaya, including where buses depart and arrive on this route.