
Alt text: An executive passenger bus driving along the Trans-Java Toll Road on the route between Jakarta and Surabaya.
Travelling by bus from Jakarta to Surabaya is a popular way to cross Java, connecting Indonesia’s capital region with the commercial centre of East Java. The Trans-Java Toll Road has improved road connectivity across the island, making intercity coaches a practical option for travellers seeking an alternative to flying.
Depending on the operator, service class, traffic conditions and departure terminal, the journey can take several hours. Travellers can compare standard executive coaches and selected premium or sleeper-style services to find an option that suits their budget and comfort preferences.
Whether you are travelling for business, visiting family or exploring Java, this guide covers the Jakarta–Surabaya route, bus classes, estimated fares, booking options and practical travel advice.
Route Overview: Jakarta to Surabaya
The Jakarta–Surabaya route crosses Java through a network of major roads and tollways. Before booking, compare departure times, arrival points and the estimated duration for your chosen service.
Key details to consider include:
- Distance: Approximately 780 km by road, depending on the route.
- Travel time: Around 9–11 hours may be a useful planning estimate, but actual journey times vary with traffic, rest stops and operational conditions.
- Jakarta departure points: Available services may use different terminals and designated pickup locations.
- Surabaya arrival points: Drop-off locations vary by operator and may include terminals or other designated stops in the Surabaya area.
Always confirm the exact boarding and arrival locations on your ticket. Choosing a convenient terminal can reduce the time and cost of travelling to your final destination.
Top Bus Operators and Service Classes
Several Indonesian bus companies serve intercity routes across Java. The operators and classes available for Jakarta–Surabaya travel depend on the date and specific departure.
Sinar Jaya
Sinar Jaya is an established name in Indonesia’s intercity bus market. Travellers comparing its services should check the available departures, seating arrangements, ticket prices and arrival points.
Suitable for: Travellers comparing scheduled services and different fare options.
27 Trans and MTrans
These operators may be worth researching when comparing premium bus options on relevant routes. Check current listings to confirm whether a particular service operates on your chosen date and what facilities are included.
Suitable for: Passengers who prioritise seating comfort and want to compare premium service options.
Rosalia Indah and DAMRI
Rosalia Indah and DAMRI are recognised operators in Indonesia’s transport sector. Available routes, vehicle types and onboard facilities vary, so review the details of the individual departure before purchasing a ticket.
Suitable for: Travellers comparing different operators, schedules and service classes.
Which Bus Class Should You Choose?
The best class depends on your budget, journey duration and preferred level of comfort.
- Executive class: A practical option for passengers seeking a balance between comfort and price.
- Premium or double-decker services: May offer different seating layouts or additional personal space.
- Sleeper or suite services: Available on selected routes and departures, potentially offering more reclining space for overnight travel.
Do not assume every operator offers all these classes or that every service includes meals, personal screens, charging ports or onboard toilets. Confirm the listed facilities before booking.
Estimated Jakarta to Surabaya Bus Fares
Ticket prices can vary according to operator, seat class, departure location, travel date and seasonal demand. Fares may also change during major holiday periods, including Lebaran, Christmas and New Year.
Rather than relying on older price ranges, compare current listings for your selected date. Consider the following factors when assessing value:
| Factor | What to check |
| Seat class | Seating layout, reclining options and available space |
| Departure time | Whether the service suits your schedule |
| Included facilities | Meals, charging ports and other listed amenities |
| Boarding location | Distance and transport costs to the terminal |
| Arrival point | How easily you can reach your final destination |
| Ticket conditions | Baggage allowances, cancellations and changes |
A lower-priced ticket is not always the most convenient choice. Compare the total travel cost, including transport to the terminal and any additional fees.
How to Book Jakarta to Surabaya Bus Tickets Online
Booking online allows you to compare available services before travelling to the terminal. It can also help you review ticket conditions and choose a suitable departure.
Step 1: Select Your Route and Travel Date
Enter Jakarta as your departure location and Surabaya as your destination. Select your preferred travel date and passenger details to check the services available.
If you are planning this journey, you can book a bus from Jakarta to Surabaya through Easybook and review the options listed for your trip.
Step 2: Compare Departures and Operators
Review the available departure times, operators, ticket prices, estimated journey durations and boarding points. Check the destination terminal carefully, especially if you have onward transport or accommodation arrangements.
Step 3: Choose Your Seat and Review the Ticket
If seat selection is available, choose the option that suits your preferences. Review the baggage policy, included facilities and cancellation or amendment conditions before continuing.
Step 4: Enter Passenger Details and Complete Payment
Provide the requested passenger information and check that all details are accurate. Review the final fare and follow the platform’s payment instructions.
Step 5: Save Your Booking Confirmation
Keep your ticket confirmation accessible and follow the operator’s boarding instructions. Check whether you can board using a digital ticket or whether additional check-in steps are required.
Planning Your Return Journey: Surabaya to Jakarta
Travellers returning to the capital can compare services in the opposite direction. The best option will depend on the travel date, departure location in Surabaya and preferred arrival point in Jakarta.
To plan your return trip, book a bus from Surabaya to Jakarta and check the current services available for your chosen date.
When comparing the return journey, consider:
- The departure time and estimated duration.
- The location of the Surabaya boarding point.
- The arrival terminal or designated stop in Jakarta.
- Available seat classes and current fares.
- Any connecting transport needed after arrival.
If you are searching for a Surabaya to Jakarta bus schedule, check the actual departure listings rather than relying on a general timetable, as availability may change by date.
Practical Travel Tips for Jakarta–Surabaya Bus Trips

Alt text: A comfortable intercity passenger bus driving along the highway from Jakarta to Surabaya.
Choose a Departure Time That Suits Your Plans
An evening departure may allow you to travel overnight, but actual departure times and arrival times vary. Check the schedule and consider whether you will be able to rest comfortably during the journey.
Select the Right Boarding Point
Jakarta has multiple transport hubs and pickup locations. Confirm the exact location shown on your booking and plan your journey to the terminal in advance.
The same applies in Surabaya, where your arrival point can affect how long it takes to reach your hotel, workplace or connecting transport.
Pack for Air-Conditioned Travel
Bring a light jacket or sweater because the bus cabin may feel cold during a long journey. Keep water, personal medication if applicable, snacks and other essentials in your hand luggage.
Carry Some Local Currency
Small amounts of Indonesian rupiah can be useful for snacks, drinks and purchases at rest stops. Keep your cash secure and check whether the facilities you intend to use accept digital payments.
Keep Valuables in Your Carry-On
Store your passport, identification, phone, wallet and other important items in a secure bag that stays with you. Avoid placing essential documents and valuables in luggage stored in the bus’s cargo compartment.
Allow Extra Time for Delays
Traffic, rest stops and operational changes can affect arrival times. Avoid scheduling an important appointment immediately after the estimated arrival time, and leave a buffer if you have a connecting journey.
Book Early During Peak Seasons
Seats may become limited during weekends and major holiday periods. Booking in advance can give you more time to compare available departures and choose a suitable service, although prices and availability are not guaranteed.
Frequently Asked Questions
How long does a bus journey from Jakarta to Surabaya take?
Approximately 9–11 hours can be used as an initial planning estimate. Actual journey times depend on the operator, traffic, rest stops and departure or arrival locations. Check the estimated duration for your selected service.
How can I buy a Jakarta to Surabaya bus ticket online?
Visit the Jakarta to Surabaya booking page on Easybook, check the available departures and select a suitable service if listed. Review the ticket details and conditions before completing payment.
Can I book an express bus from Surabaya to Jakarta?
You can check the Surabaya to Jakarta bus booking page for services available on your chosen date. Compare the listed departure times, classes, fares and arrival points before making your selection.
How much does a Jakarta to Surabaya bus ticket cost?
Prices depend on the operator, service class, date and demand. Check current listings for the actual fare rather than relying on historical estimates.
Is an overnight bus a good option?
An overnight service may suit travellers who prefer to travel while resting, but comfort depends on the seat class and individual preferences. Confirm the departure time, estimated arrival and facilities before booking.
What should I check before boarding?
Confirm your departure time, terminal, ticket details, baggage allowance and boarding requirements. Arrive with enough time to locate the correct boarding point and complete any check-in procedures required by the operator.
Final Thoughts
Travelling by bus between Jakarta and Surabaya offers a practical way to cross Java while comparing different operators, seating classes and departure options. Planning ahead can help you find a service that fits your schedule and budget.
For the eastbound journey, explore the Jakarta to Surabaya bus ticket options. For your return trip, compare the Surabaya to Jakarta bus online listings.
Before confirming either journey, verify the current fare, departure time, boarding point, arrival terminal and ticket conditions. These checks can help make your overland trip across Java more organised and comfortable.
