Jakarta to Surabaya
Arrive in Surabaya, where historic architecture meets coastal life, a stark contrast with Jakarta’s dense urban skyline. You’ll find practical information on schedules and prices for several transport options between Jakarta and Surabaya, including flight, combined, bus or train.
Travel options for Jakarta to Surabaya
From Jakarta to Surabaya, travel affordably by a bus for 220000 IDR, or get to Surabaya faster by flight in 1h y 25 minutes.
Bus from Jakarta to Surabaya
Hop on a bus departing from multiple stations, including Terminal Kampung Rambutan Jakarta, Jakarta, Jatiwarna, Bekasi and others and travel from Jakarta toward Surabaya. Services run frequently throughout the day, giving you the flexibility to choose a departure time that fits your plans. The journey usually takes around 8 hours 40 minutes, with bus ticket prices starting from 220,000 IDR, and the route ends at multiple stations, including Terminal Purabaya Bungurasih, Surabaya, Surabaya, Ruko Pengampon Square F3, Surabaya and others. Plan ahead and book your ticket in advance.
Prices: 220,000 IDR
Duration: 8h 40m – 22h ⏱
Train from Jakarta to Surabaya
Start your journey at Gambir, Pasar Baru, Pasar Senen, Pasar Baru or Jatinegara, Jakarta and take a scenic train ride connecting Jakarta with Surabaya, arriving at multiple stations, including Surabaya Pasar Turi, Surabaya Gubeng, Waru, Sidoarjo and others. The trip lasts roughly 7 hours 45 minutes, with tickets starting from 412,142 IDR. Plan ahead and reserve your seat for an enjoyable travel experience.
Prices: 412,142 IDR
Duration: 7h 45m – 12h 25m ⏱
Flight from Jakarta to Surabaya
Reaching Surabaya from Jakarta by air involves departing from CGK Soekarno Hatta Airport, Tangerang or HLP Halim Perdanakusuma Airport, Jakarta and covering the distance in approximately 1 hour 25 minutes, before landing at SUB Surabaya Airport, East Java. Flying is the most time-efficient way to travel this route, and fares are often available from 850,955 IDR. Full schedules and booking options are available via the available flight options.
Prices: 850,955 IDR
Duration: 1h 25m – 1h 40m ⏱
Combined from Jakarta to Surabaya
To reach Surabaya from Jakarta via combined transport, you can board at HLP Halim Perdanakusuma Airport, Jakarta and expect to arrive at SUB Surabaya Airport, East Java. The total journey lasts about 3 hours 55 minutes, offering a practical solution for multi-leg trips. Tickets are available from 2,186,640 IDR, explore schedules and book your trip here.
Prices: 2,186,640 IDR
Duration: 3h 55m – 7h 55m ⏱
Bus Routes & Schedules from Jakarta to Surabaya
If you’re planning to reach Surabaya by bus from Jakarta, it’s useful to know that the route is served by multiple departure and arrival stations rather than a single bus terminal. This means you can choose the combination of stops that best suits where you’re staying or heading next. Travel times vary depending on the selected stops, but most services take around 8h 40m to 22h. Buses run throughout the day, with departures starting from 04:45 and continuing until 22:00. Prices usually begin at 220,000 to 999,992 IDR, with minor differences depending on the specific service or boarding point. Taking a moment to review the complete bus timetable for Jakarta to Surabaya allows you to compare station options and select the best bus for your journey.
Fastest Bus Jakarta to Surabaya
471203 IDR, from Kota Bekasi to Surabaya, departure at 20:20, duration 8h 40mBus Timetable: Cilandak, Jakarta → Surabaya
- 13:35 01:30 11h 55m 599999 IDR
Bus Timetable: Grogol Jakarta Barat → Semeru Medeang Surabaya, Bungurasih
- 18:25 06:00 11h 35m 999992 IDR
Bus Timetable: Indomaret H Saikin Jakarta Selatan → Semeru Medeang Surabaya, Bungurasih
- 18:50 06:00 11h 10m 999992 IDR
Bus Timetable: Jakarta → Surabaya
- 04:45 17:30 12h 45m 441753 IDR
- 06:00 18:30 12h 30m 441753 IDR
- 06:30 18:00 11h 30m 679620 IDR
- 06:40 18:00 11h 20m 679620 IDR
- 07:00 18:30 11h 30m 481397 IDR
- 07:45 20:00 12h 15m 647904 IDR
- 07:55 20:10 12h 15m 718584 IDR
- 08:00 18:30 10h 30m 481397 IDR
- 08:15 20:00 11h 45m 624344 IDR
- 08:25 20:10 11h 45m 695024 IDR
- 08:30 22:45 14h 15m 447643 IDR
- 09:00 19:00 10h 317156 IDR
- 10:00 01:30 15h 30m 447643 IDR
- 10:30 00:45 14h 15m 447643 IDR
- 11:00 01:30 14h 30m 435862 IDR
- 11:20 04:00 16h 40m 494763 IDR
- 11:30 01:00 13h 30m 435862 IDR
- 12:00 05:30 17h 30m 435862 IDR
- 12:25 06:20 17h 55m 376962 IDR
- 12:30 03:00 14h 30m 435862 IDR
- 12:45 03:15 14h 30m 435862 IDR
- 12:55 02:55 14h 435862 IDR
- 13:00 00:00 11h 647904 IDR
- 13:10 00:10 11h 742145 IDR
- 13:25 06:20 16h 55m 376962 IDR
- 13:30 00:10 10h 40m 742145 IDR
- 14:00 00:00 10h 423629 IDR
- 14:01 03:30 13h 29m 565443 IDR
- 14:10 05:45 15h 35m 435862 IDR
- 14:15 01:45 11h 30m 494763 IDR
- 14:30 05:30 15h 706804 IDR
- 14:55 03:20 12h 25m 481397 IDR
- 15:00 04:45 13h 45m 435862 IDR
- 15:15 03:00 11h 45m 865835 IDR
- 15:30 04:45 13h 15m 435862 IDR
- 15:50 03:20 11h 30m 481397 IDR
- 16:00 05:30 13h 30m 647904 IDR
- 16:10 03:30 11h 20m 718584 IDR
- 16:15 06:45 14h 30m 435862 IDR
- 16:30 09:00 16h 30m 412302 IDR
- 16:40 05:35 12h 55m 447416 IDR
- 16:45 06:15 13h 30m 435862 IDR
- 16:50 04:35 11h 45m 441753 IDR
- 17:00 04:00 11h 471203 IDR
- 17:05 04:30 11h 25m 792890 IDR
- 17:10 05:05 11h 55m 792890 IDR
- 17:15 04:35 11h 20m 441753 IDR
- 17:20 09:00 15h 40m 412302 IDR
- 17:30 03:30 10h 523307 IDR
- 17:40 05:35 11h 55m 447416 IDR
- 17:41 05:16 11h 35m 481397 IDR
- 17:45 04:35 10h 50m 441753 IDR
- 18:00 05:00 11h 622985 IDR
- 18:10 05:05 10h 55m 792890 IDR
- 18:30 14:00 19h 30m 736255 IDR
- 18:37 05:16 10h 39m 481397 IDR
- 18:40 05:00 10h 20m 471203 IDR
- 18:45 05:10 10h 25m 435862 IDR
- 18:50 05:00 10h 10m 679620 IDR
- 19:00 05:00 10h 423629 IDR
- 19:05 07:00 11h 55m 481397 IDR
- 19:30 09:00 13h 30m 412302 IDR
- 19:33 05:16 9h 43m 481397 IDR
- 20:00 06:00 10h 423629 IDR
- 20:10 07:00 10h 50m 481397 IDR
- 20:30 06:00 9h 30m 695024 IDR
- 21:00 06:15 9h 15m 695024 IDR
Bus Timetable: Jatiwarna, Bekasi → Surabaya
- 20:35 06:40 10h 5m 699998 IDR
Bus Timetable: Jelambar, Jakarta → Bungurasih
- 12:45 00:15 11h 30m 570000 IDR
Bus Timetable: Jembatan Gantung, Jakarta → Surabaya
- 17:10 06:10 13h 599999 IDR
Bus Timetable: Kampung Rambutan, Jakarta → Ruko Pengampon Square F3, Surabaya
- 19:00 07:10 12h 10m 359999 IDR
Bus Timetable: Kampung Rambutan, Jakarta → Surabaya
- 07:35 17:45 10h 10m 699998 IDR
- 20:15 06:30 10h 15m 699998 IDR
Bus Timetable: Kampung Rambutan, Jakarta → Terminal Purabaya Bungurasih, Surabaya
- 19:00 06:30 11h 30m 359999 IDR
Bus Timetable: KFC Box Pasar Jumat, Jakarta → Semeru Medeang Surabaya, Bungurasih
- 18:55 06:00 11h 5m 999992 IDR
Bus Timetable: Kota Bekasi → Surabaya
- 04:45 17:30 12h 45m 441753 IDR
- 06:00 18:30 12h 30m 441753 IDR
- 07:45 17:30 9h 45m 506543 IDR
- 08:00 18:30 10h 30m 471203 IDR
- 08:30 18:00 9h 30m 679620 IDR
- 08:40 20:10 11h 30m 695024 IDR
- 11:45 01:15 13h 30m 435862 IDR
- 12:50 01:00 12h 10m 435862 IDR
- 13:00 04:00 15h 435862 IDR
- 13:15 02:45 13h 30m 647904 IDR
- 13:30 05:30 16h 435862 IDR
- 13:50 05:45 15h 55m 435862 IDR
- 14:00 00:10 10h 10m 742145 IDR
- 14:10 01:30 11h 20m 599999 IDR
- 14:15 05:40 15h 25m 435862 IDR
- 14:30 01:00 10h 30m 435862 IDR
- 14:40 05:20 14h 40m 435862 IDR
- 14:50 06:05 15h 15m 376962 IDR
- 15:00 07:00 16h 706804 IDR
- 15:40 02:30 10h 50m 494763 IDR
- 15:45 07:00 15h 15m 435862 IDR
- 15:50 02:30 10h 40m 494763 IDR
- 16:00 03:00 11h 565443 IDR
- 16:15 06:00 13h 45m 530103 IDR
- 16:20 07:00 14h 40m 435862 IDR
- 16:25 04:55 12h 30m 647904 IDR
- 16:30 07:00 14h 30m 435862 IDR
- 17:00 06:30 13h 30m 435862 IDR
- 17:15 06:00 12h 45m 441753 IDR
- 17:30 03:30 10h 695024 IDR
- 17:50 04:30 10h 40m 565443 IDR
- 18:00 05:04 11h 4m 481397 IDR
- 18:10 04:35 10h 25m 441753 IDR
- 18:15 05:35 11h 20m 447416 IDR
- 18:30 04:30 10h 695024 IDR
- 19:00 05:45 10h 45m 599999 IDR
- 19:10 05:05 9h 55m 594667 IDR
- 19:30 07:00 11h 30m 441753 IDR
- 19:33 05:16 9h 43m 792890 IDR
- 19:50 05:00 9h 10m 435862 IDR
- 20:00 05:00 9h 679620 IDR
- 20:20 05:00 8h 40m 471203 IDR
- 20:30 09:00 12h 30m 412302 IDR
- 21:30 07:05 9h 35m 699998 IDR
Bus Timetable: Pasar Rebo, Jakarta → Ruko Pengampon Square F3, Surabaya
- 18:25 07:10 12h 45m 359999 IDR
Bus Timetable: Pasar Rebo, Jakarta → Surabaya
- 13:40 01:30 11h 50m 599999 IDR
- 20:25 06:40 10h 15m 699998 IDR
Bus Timetable: Pasar Rebo, Jakarta → Terminal Purabaya Bungurasih, Surabaya
- 18:25 06:30 12h 5m 359999 IDR
Bus Timetable: Penjaringan, Jakarta → Surabaya
- 17:20 06:20 13h 599999 IDR
Bus Timetable: Pluit, Jakarta → Surabaya
- 17:40 06:40 13h 599999 IDR
Bus Timetable: Pondok Pinang, Jakarta → Ruko Pengampon Square F3, Surabaya
- 18:00 07:10 13h 10m 359999 IDR
Bus Timetable: Pondok Pinang, Jakarta → Surabaya
- 07:30 18:10 10h 40m 699998 IDR
- 13:27 01:30 12h 3m 599999 IDR
- 20:00 06:45 10h 45m 699998 IDR
Bus Timetable: Pondok Pinang, Jakarta → Terminal Purabaya Bungurasih, Surabaya
- 18:00 06:30 12h 30m 359999 IDR
Bus Timetable: Pulo Gebang, Jakarta → Ruko Pengampon Square F3, Surabaya
- 19:30 06:40 11h 10m 359999 IDR
- 20:00 07:10 11h 10m 349999 IDR
Bus Timetable: Pulo Gebang, Jakarta → Semeru Medeang Surabaya, Bungurasih
- 19:30 06:00 10h 30m 999992 IDR
Bus Timetable: Pulo Gebang, Jakarta → Surabaya
- 08:30 18:00 9h 30m 699998 IDR
- 14:00 01:30 11h 30m 599999 IDR
- 18:30 05:45 11h 15m 599999 IDR
- 19:00 07:00 12h 599999 IDR
- 21:00 06:35 9h 35m 699998 IDR
Bus Timetable: Pulo Gebang, Jakarta → Terminal Purabaya Bungurasih, Surabaya
- 19:30 06:00 10h 30m 349999 IDR
- 20:00 06:30 10h 30m 349999 IDR
- 22:00 12:00 14h 220000 IDR
Bus Timetable: Tanjung Priok, Jakarta → Surabaya
- 18:00 06:15 12h 15m 599999 IDR
- 18:15 06:15 12h 599999 IDR
Bus Timetable: Terminal Grogol, Jakarta → Ruko Pengampon Square F3, Surabaya
- 17:00 06:40 13h 40m 359999 IDR
Bus Timetable: Terminal Grogol, Jakarta → Terminal Purabaya Bungurasih, Surabaya
- 17:00 06:00 13h 359999 IDR
- 21:00 16:00 19h 220000 IDR
Bus Timetable: Terminal Kali Deres, Jakarta → Ruko Pengampon Square F3, Surabaya
- 16:30 06:40 14h 10m 359999 IDR
Bus Timetable: Terminal Kali Deres, Jakarta → Terminal Purabaya Bungurasih, Surabaya
- 15:15 06:15 15h 370000 IDR
- 16:30 06:00 13h 30m 359999 IDR
- 19:00 16:00 21h 220000 IDR
- 20:00 12:00 16h 255000 IDR
Bus Timetable: Terminal Kampung Rambutan Jakarta → Terminal Purabaya Bungurasih, Surabaya
- 21:00 12:00 15h 255000 IDR
- 21:30 16:00 18h 30m 220000 IDR
Bus Timetable: Terminal Lebak Bulus, Jakarta → Ruko Pengampon Square F3, Surabaya
- 18:10 07:10 13h 359999 IDR
Bus Timetable: Terminal Lebak Bulus, Jakarta → Terminal Purabaya Bungurasih, Surabaya
- 16:10 05:10 13h 370000 IDR
- 18:10 06:30 12h 20m 359999 IDR
Bus Timetable: Terminal Poris Plawad, Tangerang → Ruko Pengampon Square F3, Surabaya
- 16:00 06:40 14h 40m 359999 IDR
- 16:30 07:10 14h 40m 359999 IDR
Bus Timetable: Terminal Poris Plawad, Tangerang → Surabaya
- 12:30 00:00 11h 30m 599999 IDR
- 16:30 05:30 13h 599999 IDR
- 19:15 06:45 11h 30m 699998 IDR
Bus Timetable: Terminal Poris Plawad, Tangerang → Terminal Purabaya Bungurasih, Surabaya
- 14:45 05:15 14h 30m 370000 IDR
- 16:00 06:00 14h 359999 IDR
- 16:30 06:30 14h 359999 IDR
- 18:00 16:00 22h 220000 IDR
- 19:00 12:00 17h 255000 IDR
Bus Timetable: Terminal Tanjung Priok, Jakarta → Ruko Pengampon Square F3, Surabaya
- 18:30 06:40 12h 10m 359999 IDR
Bus Timetable: Terminal Tanjung Priok, Jakarta → Terminal Purabaya Bungurasih, Surabaya
- 18:30 06:00 11h 30m 359999 IDR
Bus Timetable: West Jakarta → Surabaya
- 17:00 06:00 13h 599999 IDR
Train Routes & Schedules from Jakarta to Surabaya
For journeys between Jakarta and Surabaya, trains run via several departure and arrival stations. The travel time varies by station combination, usually taking about 7h 45m to 12h 25m. Rail services are available from 05:00 to 23:35 with fares beginning at 412,142 to 1,030,357 IDR. Checking the complete train timetable for Jakarta and Surabaya helps you see all station pairings, compare expected durations and select the departure that suits your itinerary.
Cheapest Train Jakarta to Surabaya
412142 IDR, from Pasar Senen, Pasar Baru to Surabaya Pasar Turi, departure at 21:30, duration 10h 28mFastest Train Jakarta to Surabaya
1030357 IDR, from Gambir, Pasar Baru to Surabaya Pasar Turi, departure at some times, duration 7h 45mTrain Timetable: Gambir, Pasar Baru → Surabaya Gubeng
- 06:20 16:38 10h 18m 1030357 IDR
- 17:00 03:20 10h 20m 911052 IDR
- 19:55 05:28 9h 33m 802593 IDR
Train Timetable: Gambir, Pasar Baru → Surabaya Pasar Turi
- 08:20 16:05 7h 45m 1030357 IDR
- 10:20 18:47 8h 27m 824285 IDR
- 14:45 00:40 9h 55m 791748 IDR
- 19:30 03:55 8h 25m 824285 IDR
- 20:30 04:15 7h 45m 1030357 IDR
- 23:35 08:40 9h 5m 997819 IDR
Train Timetable: Jatinegara, Jakarta → Surabaya Gubeng
- 12:23 22:40 10h 17m 824285 IDR
- 22:27 08:33 10h 6m 878514 IDR
Train Timetable: Jatinegara, Jakarta → Surabaya Pasar Turi
- 08:21 19:38 11h 17m 759210 IDR
- 12:23 22:15 9h 52m 824285 IDR
- 22:27 08:09 9h 42m 878514 IDR
Train Timetable: Jatinegara, Jakarta → Waru, Sidoarjo
- 22:27 08:52 10h 25m 878514 IDR
Train Timetable: Pasar Senen, Pasar Baru → Surabaya Gubeng
- 11:10 23:35 12h 25m 845977 IDR
- 12:10 22:40 10h 30m 824285 IDR
- 22:15 08:33 10h 18m 878514 IDR
Train Timetable: Pasar Senen, Pasar Baru → Surabaya Pasar Turi
- 05:00 15:33 10h 33m 759210 IDR
- 08:10 19:38 11h 28m 759210 IDR
- 12:10 22:15 10h 5m 824285 IDR
- 21:30 07:58 10h 28m 412142 IDR
- 22:15 08:09 9h 54m 878514 IDR
Train Timetable: Pasar Senen, Pasar Baru → Waru, Sidoarjo
- 22:15 08:52 10h 37m 878514 IDR
Train Timetable: Pasar Senen, Pasar Baru → Wonokromo, Surabaya
- 11:10 23:25 12h 15m 845977 IDR
Flight Routes & Schedules from Jakarta to Surabaya
- Travel by flight from CGK Soekarno Hatta Airport, Tangerang to SUB Surabaya Airport, East Java, with flights usually taking 1h 30m to 1h 40m. Services operate from 03:30 until 20:35, and tickets start at 850,955 to 1,395,856 IDR.
- Board a flight at HLP Halim Perdanakusuma Airport, Jakarta and spend approximately 1h 25m to 1h 30m in the air, arriving at SUB Surabaya Airport, East Java. The flight operates from 05:25 until 20:15 with fares from 1,138,071 to 1,484,521 IDR.
Cheapest Flight Jakarta to Surabaya
850955 IDR, from CGK Soekarno Hatta Airport, Tangerang to SUB Surabaya Airport, East Java, departure at 03:30, duration 1h 30mFastest Flight Jakarta to Surabaya
1152989 IDR, from HLP Halim Perdanakusuma Airport, Jakarta to SUB Surabaya Airport, East Java, departure at some times, duration 1h 25mFlight Timetable: CGK Soekarno Hatta Airport, Tangerang → SUB Surabaya Airport, East Java
- 03:30 05:00 1h 30m 850955 IDR
- 05:25 07:00 1h 35m 1012364 IDR
- 06:00 07:30 1h 30m 1092817 IDR
- 06:40 08:15 1h 35m 1336304 IDR
- 06:50 08:25 1h 35m 1395856 IDR
- 07:00 08:35 1h 35m 1067843 IDR
- 08:00 09:30 1h 30m 1092817 IDR
- 08:30 10:05 1h 35m 1247856 IDR
- 08:45 10:25 1h 40m 1395856 IDR
- 09:00 10:30 1h 30m 944147 IDR
- 09:15 10:50 1h 35m 1067843 IDR
- 10:25 12:00 1h 35m 1067843 IDR
- 12:00 13:35 1h 35m 1067843 IDR
- 12:05 13:45 1h 40m 1395856 IDR
- 13:30 15:00 1h 30m 1175616 IDR
- 14:00 15:35 1h 35m 1395856 IDR
- 14:25 16:00 1h 35m 1258080 IDR
- 14:40 16:10 1h 30m 944147 IDR
- 15:20 16:50 1h 30m 1175616 IDR
- 16:00 17:40 1h 40m 1395856 IDR
- 17:00 18:30 1h 30m 1092817 IDR
- 17:15 18:50 1h 35m 1247856 IDR
- 17:30 19:10 1h 40m 1395856 IDR
- 17:45 19:20 1h 35m 1067843 IDR
- 18:30 20:10 1h 40m 1395856 IDR
- 18:55 20:25 1h 30m 1092817 IDR
- 19:00 20:40 1h 40m 1067843 IDR
- 20:00 21:30 1h 30m 1092817 IDR
- 20:35 22:10 1h 35m 1067843 IDR
Flight Timetable: HLP Halim Perdanakusuma Airport, Jakarta → SUB Surabaya Airport, East Java
- 05:25 06:50 1h 25m 1484521 IDR
- 08:50 10:15 1h 25m 1198243 IDR
- 09:30 10:55 1h 25m 1152989 IDR
- 13:00 14:30 1h 30m 1344567 IDR
- 13:35 15:00 1h 25m 1152989 IDR
- 16:35 18:00 1h 25m 1152989 IDR
- 16:45 18:15 1h 30m 1138071 IDR
- 20:15 21:40 1h 25m 1152989 IDR
Combined Routes & Schedules from Jakarta to Surabaya
Board at HLP Halim Perdanakusuma Airport, Jakarta for a flexible route toward Surabaya, combining buses, ferries, or trains. Travel for roughly 3h 55m to 7h 55m before arriving at SUB Surabaya Airport, East Java. Departures run from 10:50 until 15:50, and ticket prices begin at 2,186,640 to 8,334,072 IDR. Reviewing the timetable for connections from Jakarta lets you plan your trip efficiently.
Cheapest & Fastest Combined Jakarta to Surabaya
2186640 IDR, from HLP Halim Perdanakusuma Airport, Jakarta to SUB Surabaya Airport, East Java, departure at 15:50, duration 3h 55mCombined Timetable: HLP Halim Perdanakusuma Airport, Jakarta → SUB Surabaya Airport, East Java
- 10:50 18:45 7h 55m 8334072 IDR
- 15:50 19:45 3h 55m 2186640 IDR
Frequently Asked Questions Jakarta to Surabaya
Below you will find answers to the most common questions about traveling from Jakarta to Surabaya.
How long does the Jakarta to Surabaya route usually take?
Travel time on the Jakarta to Surabaya route depends on the transport and the exact departure and arrival points. Flights take about 1 hour 25 minutes to 1 hour 40 minutes, trains about 7 hours 45 minutes to 12 hours 25 minutes, and buses about 8 hours 40 minutes to 22 hours.
What is the cheapest way to travel from Jakarta to Surabaya?
The cheapest option on the Jakarta to Surabaya route is bus travel, with fares starting at IDR 220,000. Train tickets start at IDR 412,142, while flights start at IDR 850,955. Prices vary by operator, route point, and departure time.
How much does Jakarta to Surabaya cost overall across the available transport options?
For the Jakarta to Surabaya route, bus fares range from IDR 220,000 to IDR 999,992, train fares from IDR 412,142 to IDR 1,030,357, and flight fares from IDR 850,955 to IDR 1,484,521. Combined air services are listed at a higher range.
Which transport is the fastest on the Jakarta to Surabaya route?
Flights are the fastest option on the Jakarta to Surabaya route. The shortest flight times are about 1 hour 25 minutes to 1 hour 40 minutes, depending on whether the trip uses CGK Soekarno Hatta Airport or HLP Halim Perdanakusuma Airport.
Where do buses from Jakarta to Surabaya usually depart and arrive?
Bus departures on the Jakarta to Surabaya route are listed from many points, including Terminal Kampung Rambutan, Pulo Gebang, Terminal Kali Deres, Terminal Tanjung Priok, and other Jakarta-area stops. Arrivals include Terminal Purabaya Bungurasih, Surabaya, Ruko Pengampon Square F3, and Semeru Medeang.
Which train stations are used for Jakarta to Surabaya trips?
Train services on the Jakarta to Surabaya route depart from Gambir, Pasar Senen, or Jatinegara in Jakarta. Arrivals are listed at Surabaya Pasar Turi, Surabaya Gubeng, Waru in Sidoarjo, and Wonokromo in Surabaya, depending on the service.
What airports are used for flights from Jakarta to Surabaya?
Flights on the Jakarta to Surabaya route depart from CGK Soekarno Hatta Airport in Tangerang or HLP Halim Perdanakusuma Airport in Jakarta. All listed arrivals are at SUB Surabaya Airport in East Java. The exact airport pair affects the flight duration.
How often do Jakarta to Surabaya departures run, and what are the first and last times?
The context does not list a fixed frequency for Jakarta to Surabaya services. First departures are 04:45 for buses, 05:00 for trains, and 03:30 for flights. Last departures are 22:00 for buses, 23:35 for trains, and 20:35 for flights.
Why does travel time vary so much on the Jakarta to Surabaya route?
Travel time varies because the route has different transport types and many station pairs. Flights are affected by airport choice, trains by the departure and arrival station, and buses by the specific boarding point, destination stop, and service pattern.
Are there faster or slower train options from Jakarta to Surabaya?
Yes. On the Jakarta to Surabaya route, train times range from about 7 hours 45 minutes to 12 hours 25 minutes. Gambir to Surabaya Pasar Turi is among the faster listed pairs, while Pasar Senen to Surabaya Gubeng is among the slower ones.
Are there different bus durations on the Jakarta to Surabaya route depending on the boarding point?
Yes. Bus durations on the Jakarta to Surabaya route vary widely by boarding and arrival point. Some listed trips take about 8 hours 40 minutes, while others take up to 22 hours. Terminal and neighborhood departures can produce very different travel times.
Where can I book tickets for Jakarta to Surabaya if I want to compare options?
For the Jakarta to Surabaya route, TicketRoutes.com is the booking reference provided in the context. It is the place to check available tickets and compare the listed transport options, including buses, trains, and flights.
More travel routes for Jakarta and Surabaya
Planning more stops after Jakarta to Surabaya?
If your journey doesn’t end with Jakarta to Surabaya, use the TicketRoutes Travel Planner to build a complete multi-city itinerary. Compare buses, trains, ferries, and flights for several destinations at once — faster and easier.
Try the Travel PlannerPerfect for travelers visiting multiple cities on one trip.