What is the best way to travel from Surabaya to Jakarta?
Looking for a trip? Check and compare all the available Flights and Buses to Jakarta from Surabaya. Look at different modes of transportation, search for the cheapest tickets, fastest rides and most popular stations, and see all 18 available companies to find your perfect trip!
What is the cheapest way to reach Jakarta from Surabaya?
You can reach Jakarta with just £8 by taking a Bus from Medali Mas, but there are many more cheap offers: we have selected the best ones for you for the next few days here.
-
Sarwonadhi Trans15h 15m008:00SurabayaCentral Station23:15JakartaTeuku Umar 8 Coach Station0EconomyA Bus from Sarwonadhi Trans goes from Central Station, Surabaya (Indonesia) at 16/09/2026 08:00:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 16/09/2026 23:15:00. 50 Economy ticket for £11 per person are available. Travel duration is 15h 15m
-
Pahala Kencana12h 31m015:30SurabayaTerminal Purabaya-Bungurasih04:01JakartaTerminal Pulo Gebang0EconomyA Bus from Pahala Kencana goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 16/09/2026 15:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 17/09/2026 04:01:00. 50 Economy ticket for £13 per person are available. Travel duration is 12h 31m
-
MTrans14h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 16/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 16/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 14h 0m
-
Tiara Mas12h 18m018:45SurabayaTerminal Purabaya-Bungurasih07:03JakartaTerminal Pulo Gebang0EconomyA Bus from Tiara Mas goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 16/09/2026 18:45:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 17/09/2026 07:03:00. 50 Economy ticket for £15 per person are available. Travel duration is 12h 18m
-
Haryanto Bojonegoro11h 40m016:30SurabayaCentral Station04:10JakartaTerminal Manggarai0EconomyA Bus from Haryanto Bojonegoro goes from Central Station, Surabaya (Indonesia) at 16/09/2026 16:30:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 17/09/2026 04:10:00. 50 Economy ticket for £15 per person are available. Travel duration is 11h 40m
-
Skyscanner1h 30m006:30Surabaya AirportSurabaya Airport08:00Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Skyscanner goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 06:30:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 16/09/2026 08:00:00. 50 Economy ticket for £48 per person are available. Travel duration is 1h 30m
-
Citilink1h 35m020:15Surabaya AirportSurabaya Airport21:50Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 20:15:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 16/09/2026 21:50:00. 50 Economy ticket for £52 per person are available. Travel duration is 1h 35m
-
Garuda Indonesia1h 40m010:15Surabaya AirportSurabaya Airport11:55Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Garuda Indonesia goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 10:15:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 16/09/2026 11:55:00. 50 Economy ticket for £56 per person are available. Travel duration is 1h 40m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 16/09/2026 16:05:00. 50 Economy ticket for £59 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 16/09/2026 18:45:00. 50 Economy ticket for £59 per person are available. Travel duration is 1h 30m
-
Batik Air1h 20m005:10Surabaya AirportSurabaya Airport06:30Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 05:10:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 16/09/2026 06:30:00. 50 Economy ticket for £73 per person are available. Travel duration is 1h 20m
Cheapest Buses Wednesday
Cheapest Flights Wednesday
-
Harapan Jaya10h 0m009:50SurabayaSidotopo Bus Station19:50JakartaTerminal Bus Kota Blok M0EconomyA Bus from Harapan Jaya goes from Sidotopo Bus Station, Surabaya (Indonesia) at 17/09/2026 09:50:00 to Terminal Bus Kota Blok M, Jakarta (Indonesia) arriving at 17/09/2026 19:50:00. 50 Economy ticket for £11 per person are available. Travel duration is 10h 0m
-
MTrans13h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 17/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 17/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 13h 0m
-
Pahala Kencana12h 31m015:30SurabayaTerminal Purabaya-Bungurasih04:01JakartaTerminal Pulo Gebang0EconomyA Bus from Pahala Kencana goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 17/09/2026 15:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 18/09/2026 04:01:00. 50 Economy ticket for £13 per person are available. Travel duration is 12h 31m
-
Gunung Harta12h 45m012:15SurabayaCentral Station01:00JakartaTerminal Manggarai0EconomyA Bus from Gunung Harta goes from Central Station, Surabaya (Indonesia) at 17/09/2026 12:15:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 18/09/2026 01:00:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 45m
-
Kramat Djati20h 15m015:00SurabayaJl. Arjuna11:15JakartaTerminal Kampung Rambutan0EconomyA Bus from Kramat Djati goes from Jl. Arjuna, Surabaya (Indonesia) at 17/09/2026 15:00:00 to Terminal Kampung Rambutan, Jakarta (Indonesia) arriving at 18/09/2026 11:15:00. 50 Economy ticket for £14 per person are available. Travel duration is 20h 15m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 17/09/2026 09:10:00. 50 Economy ticket for £47 per person are available. Travel duration is 1h 30m
-
Pelita Air1h 30m006:10Surabaya AirportSurabaya Airport07:40Jakarta AirportJakarta Airport0EconomyA Flight from Pelita Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 06:10:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 17/09/2026 07:40:00. 50 Economy ticket for £54 per person are available. Travel duration is 1h 30m
-
Citilink1h 35m020:15Surabaya AirportSurabaya Airport21:50Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 20:15:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 17/09/2026 21:50:00. 50 Economy ticket for £54 per person are available. Travel duration is 1h 35m
-
Batik Air1h 30m005:05Surabaya AirportSurabaya Airport06:35Jakarta AirportJakarta Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 05:05:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 17/09/2026 06:35:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 07:40:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 17/09/2026 09:10:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m009:35Surabaya AirportSurabaya Airport11:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 09:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 17/09/2026 11:05:00. 50 Economy ticket for £57 per person are available. Travel duration is 1h 30m
Cheapest Buses Thursday
Cheapest Flights Thursday
-
Medali Mas14h 5m016:30SurabayaCentral Station07:35JakartaTeuku Umar 8 Coach Station0BusinessA Bus from Medali Mas goes from Central Station, Surabaya (Indonesia) at 18/09/2026 16:30:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 19/09/2026 07:35:00. 50 Business ticket for £8 per person are available. Travel duration is 14h 5m
-
Sarwonadhi Trans14h 15m008:00SurabayaCentral Station23:15JakartaTeuku Umar 8 Coach Station0EconomyA Bus from Sarwonadhi Trans goes from Central Station, Surabaya (Indonesia) at 18/09/2026 08:00:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 18/09/2026 23:15:00. 50 Economy ticket for £11 per person are available. Travel duration is 14h 15m
-
Harapan Jaya10h 0m020:30SurabayaSidotopo Bus Station06:30JakartaTerminal Pulo Gebang0EconomyA Bus from Harapan Jaya goes from Sidotopo Bus Station, Surabaya (Indonesia) at 18/09/2026 20:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 19/09/2026 06:30:00. 50 Economy ticket for £11 per person are available. Travel duration is 10h 0m
-
MTrans13h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 18/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 18/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 13h 0m
-
Kramat Djati13h 15m015:00SurabayaCentral Station04:15JakartaTerminal Manggarai0EconomyA Bus from Kramat Djati goes from Central Station, Surabaya (Indonesia) at 18/09/2026 15:00:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 19/09/2026 04:15:00. 50 Economy ticket for £15 per person are available. Travel duration is 13h 15m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 16:05:00. 50 Economy ticket for £58 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 18:45:00. 50 Economy ticket for £58 per person are available. Travel duration is 1h 30m
-
Batik Air1h 20m005:10Surabaya AirportSurabaya Airport06:30Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 05:10:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 06:30:00. 50 Economy ticket for £68 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m007:30Surabaya AirportSurabaya Airport08:50Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 07:30:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 08:50:00. 50 Economy ticket for £68 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m010:55Surabaya AirportSurabaya Airport12:15Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 10:55:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 12:15:00. 50 Economy ticket for £68 per person are available. Travel duration is 1h 20m
Cheapest Buses Friday
Cheapest Flights Friday
-
MTrans13h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 19/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 19/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 13h 0m
-
Pahala Kencana12h 31m015:30SurabayaTerminal Purabaya-Bungurasih04:01JakartaTerminal Pulo Gebang0EconomyA Bus from Pahala Kencana goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 19/09/2026 15:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 20/09/2026 04:01:00. 50 Economy ticket for £13 per person are available. Travel duration is 12h 31m
-
Harapan Jaya11h 30m009:00SurabayaTerminal Purabaya-Bungurasih20:30JakartaTerminal Pulo Gebang0EconomyA Bus from Harapan Jaya goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 19/09/2026 09:00:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 19/09/2026 20:30:00. 50 Economy ticket for £15 per person are available. Travel duration is 11h 30m
-
Tiara Mas12h 18m018:45SurabayaTerminal Purabaya-Bungurasih07:03JakartaTerminal Pulo Gebang0EconomyA Bus from Tiara Mas goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 19/09/2026 18:45:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 20/09/2026 07:03:00. 50 Economy ticket for £15 per person are available. Travel duration is 12h 18m
-
Kramat Djati20h 15m015:00SurabayaJl. Arjuna11:15JakartaTerminal Kampung Rambutan0EconomyA Bus from Kramat Djati goes from Jl. Arjuna, Surabaya (Indonesia) at 19/09/2026 15:00:00 to Terminal Kampung Rambutan, Jakarta (Indonesia) arriving at 20/09/2026 11:15:00. 50 Economy ticket for £15 per person are available. Travel duration is 20h 15m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 19/09/2026 09:10:00. 50 Economy ticket for £47 per person are available. Travel duration is 1h 30m
-
Pelita Air1h 30m006:10Surabaya AirportSurabaya Airport07:40Jakarta AirportJakarta Airport0EconomyA Flight from Pelita Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 06:10:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 19/09/2026 07:40:00. 50 Economy ticket for £54 per person are available. Travel duration is 1h 30m
-
Citilink1h 35m018:45Surabaya AirportSurabaya Airport20:20Jakarta AirportJakarta Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 18:45:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 19/09/2026 20:20:00. 50 Economy ticket for £54 per person are available. Travel duration is 1h 35m
-
Citilink1h 30m009:35Surabaya AirportSurabaya Airport11:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 09:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 19/09/2026 11:05:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 19/09/2026 16:05:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 19/09/2026 18:45:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
Cheapest Buses Saturday
Cheapest Flights Saturday
-
Medali Mas15h 5m016:30SurabayaCentral Station07:35JakartaTeuku Umar 8 Coach Station0BusinessA Bus from Medali Mas goes from Central Station, Surabaya (Indonesia) at 20/09/2026 16:30:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 21/09/2026 07:35:00. 50 Business ticket for £8 per person are available. Travel duration is 15h 5m
-
Sarwonadhi Trans15h 15m008:00SurabayaCentral Station23:15JakartaTeuku Umar 8 Coach Station0EconomyA Bus from Sarwonadhi Trans goes from Central Station, Surabaya (Indonesia) at 20/09/2026 08:00:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 20/09/2026 23:15:00. 50 Economy ticket for £11 per person are available. Travel duration is 15h 15m
-
Harapan Jaya10h 0m009:50SurabayaSidotopo Bus Station19:50JakartaTerminal Bus Kota Blok M0EconomyA Bus from Harapan Jaya goes from Sidotopo Bus Station, Surabaya (Indonesia) at 20/09/2026 09:50:00 to Terminal Bus Kota Blok M, Jakarta (Indonesia) arriving at 20/09/2026 19:50:00. 50 Economy ticket for £11 per person are available. Travel duration is 10h 0m
-
MTrans14h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 20/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 20/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 14h 0m
-
Kramat Djati19h 34m015:00SurabayaJl. Arjuna10:34JakartaTerminal Pulo Gebang0EconomyA Bus from Kramat Djati goes from Jl. Arjuna, Surabaya (Indonesia) at 20/09/2026 15:00:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 21/09/2026 10:34:00. 50 Economy ticket for £14 per person are available. Travel duration is 19h 34m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 20/09/2026 09:10:00. 50 Economy ticket for £47 per person are available. Travel duration is 1h 30m
-
Batik Air1h 30m005:05Surabaya AirportSurabaya Airport06:35Jakarta AirportJakarta Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 05:05:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 20/09/2026 06:35:00. 50 Economy ticket for £54 per person are available. Travel duration is 1h 30m
-
Pelita Air1h 30m006:10Surabaya AirportSurabaya Airport07:40Jakarta AirportJakarta Airport0EconomyA Flight from Pelita Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 06:10:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 20/09/2026 07:40:00. 50 Economy ticket for £54 per person are available. Travel duration is 1h 30m
-
Citilink1h 35m007:35Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 07:35:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 20/09/2026 09:10:00. 50 Economy ticket for £57 per person are available. Travel duration is 1h 35m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 20/09/2026 16:05:00. 50 Economy ticket for £65 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 20/09/2026 18:45:00. 50 Economy ticket for £65 per person are available. Travel duration is 1h 30m
Cheapest Buses Sunday
Cheapest Flights Sunday
-
Medali Mas14h 5m016:30SurabayaCentral Station07:35JakartaTeuku Umar 8 Coach Station0BusinessA Bus from Medali Mas goes from Central Station, Surabaya (Indonesia) at 21/09/2026 16:30:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 22/09/2026 07:35:00. 50 Business ticket for £8 per person are available. Travel duration is 14h 5m
-
MTrans13h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 21/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 21/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 13h 0m
-
Angkasa Trans Jaya18h 0m005:00SurabayaCentral Station23:00JakartaTerminal Pulo Gebang0EconomyA Bus from Angkasa Trans Jaya goes from Central Station, Surabaya (Indonesia) at 21/09/2026 05:00:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 21/09/2026 23:00:00. 50 Economy ticket for £13 per person are available. Travel duration is 18h 0m
-
Pahala Kencana12h 31m015:30SurabayaTerminal Purabaya-Bungurasih04:01JakartaTerminal Pulo Gebang0EconomyA Bus from Pahala Kencana goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 21/09/2026 15:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 22/09/2026 04:01:00. 50 Economy ticket for £13 per person are available. Travel duration is 12h 31m
-
Gunung Harta12h 45m012:15SurabayaCentral Station01:00JakartaTerminal Manggarai0EconomyA Bus from Gunung Harta goes from Central Station, Surabaya (Indonesia) at 21/09/2026 12:15:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 22/09/2026 01:00:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 45m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 07:40:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 21/09/2026 09:10:00. 50 Economy ticket for £46 per person are available. Travel duration is 1h 30m
-
Lion Air1h 30m017:00Surabaya AirportSurabaya Airport18:30Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 17:00:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 21/09/2026 18:30:00. 50 Economy ticket for £46 per person are available. Travel duration is 1h 30m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 21/09/2026 09:10:00. 50 Economy ticket for £48 per person are available. Travel duration is 1h 30m
-
Batik Air1h 30m010:10Surabaya AirportSurabaya Airport11:40Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 10:10:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 21/09/2026 11:40:00. 50 Economy ticket for £51 per person are available. Travel duration is 1h 30m
-
Batik Air1h 30m016:25Surabaya AirportSurabaya Airport17:55Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 16:25:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 21/09/2026 17:55:00. 50 Economy ticket for £51 per person are available. Travel duration is 1h 30m
-
Pelita Air1h 30m006:10Surabaya AirportSurabaya Airport07:40Jakarta AirportJakarta Airport0EconomyA Flight from Pelita Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 06:10:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 21/09/2026 07:40:00. 50 Economy ticket for £54 per person are available. Travel duration is 1h 30m
Cheapest Buses Monday
Cheapest Flights Monday
-
Medali Mas15h 5m016:30SurabayaCentral Station07:35JakartaTeuku Umar 8 Coach Station0BusinessA Bus from Medali Mas goes from Central Station, Surabaya (Indonesia) at 22/09/2026 16:30:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 23/09/2026 07:35:00. 50 Business ticket for £8 per person are available. Travel duration is 15h 5m
-
MTrans14h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 22/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 22/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 14h 0m
-
Haryanto Bojonegoro11h 40m016:30SurabayaCentral Station04:10JakartaTerminal Manggarai0EconomyA Bus from Haryanto Bojonegoro goes from Central Station, Surabaya (Indonesia) at 22/09/2026 16:30:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 23/09/2026 04:10:00. 50 Economy ticket for £15 per person are available. Travel duration is 11h 40m
-
Harapan Jaya10h 59m009:10SurabayaTerminal Purabaya-Bungurasih20:09JakartaTerminal Pulo Gebang0EconomyA Bus from Harapan Jaya goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 22/09/2026 09:10:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 22/09/2026 20:09:00. 50 Economy ticket for £15 per person are available. Travel duration is 10h 59m
-
Gunung Harta11h 0m009:00SurabayaCentral Station20:00JakartaTerminal Manggarai0EconomyA Bus from Gunung Harta goes from Central Station, Surabaya (Indonesia) at 22/09/2026 09:00:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 22/09/2026 20:00:00. 50 Economy ticket for £17 per person are available. Travel duration is 11h 0m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 09:10:00. 50 Economy ticket for £47 per person are available. Travel duration is 1h 30m
-
Pelita Air1h 30m006:10Surabaya AirportSurabaya Airport07:40Jakarta AirportJakarta Airport0EconomyA Flight from Pelita Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 06:10:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 07:40:00. 50 Economy ticket for £54 per person are available. Travel duration is 1h 30m
-
Batik Air1h 30m005:05Surabaya AirportSurabaya Airport06:35Jakarta AirportJakarta Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 05:05:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 06:35:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
-
Garuda Indonesia1h 40m010:15Surabaya AirportSurabaya Airport11:55Jakarta AirportJakarta Airport0EconomyA Flight from Garuda Indonesia goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 10:15:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 11:55:00. 50 Economy ticket for £57 per person are available. Travel duration is 1h 40m
-
Citilink1h 35m007:35Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 07:35:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 09:10:00. 50 Economy ticket for £57 per person are available. Travel duration is 1h 35m
Cheapest Buses Tuesday
Cheapest Flights Tuesday
What are the fastest trips from Surabaya to Jakarta?
You can get to Jakarta from Surabaya in just 1h 20m with a Flight from Batik Air. But this is just one option, click on any of the offers below to compare it with the other available modes of transportations.
-
Batik Air1h 20m005:10Surabaya AirportSurabaya Airport06:30Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 05:10:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 16/09/2026 06:30:00. 50 Economy ticket for £73 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m007:30Surabaya AirportSurabaya Airport08:50Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 07:30:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 16/09/2026 08:50:00. 50 Economy ticket for £73 per person are available. Travel duration is 1h 20m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 16/09/2026 16:05:00. 50 Economy ticket for £59 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 16/09/2026 18:45:00. 50 Economy ticket for £59 per person are available. Travel duration is 1h 30m
-
Skyscanner1h 30m006:30Surabaya AirportSurabaya Airport08:00Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Skyscanner goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 06:30:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 16/09/2026 08:00:00. 50 Economy ticket for £48 per person are available. Travel duration is 1h 30m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Soekarno-Hatta AirportStasiun KA Bandara Bus Stop0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 16/09/2026 07:40:00 to Stasiun KA Bandara Bus Stop, Soekarno-Hatta Airport (Indonesia) arriving at 16/09/2026 09:10:00. 50 Economy ticket for £82 per person are available. Travel duration is 1h 30m
-
Haryanto Bojonegoro11h 40m016:30SurabayaCentral Station04:10JakartaTerminal Manggarai0EconomyA Bus from Haryanto Bojonegoro goes from Central Station, Surabaya (Indonesia) at 16/09/2026 16:30:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 17/09/2026 04:10:00. 50 Economy ticket for £15 per person are available. Travel duration is 11h 40m
-
Tiara Mas12h 18m018:45SurabayaTerminal Purabaya-Bungurasih07:03JakartaTerminal Pulo Gebang0EconomyA Bus from Tiara Mas goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 16/09/2026 18:45:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 17/09/2026 07:03:00. 50 Economy ticket for £15 per person are available. Travel duration is 12h 18m
-
Pahala Kencana12h 31m015:30SurabayaTerminal Purabaya-Bungurasih04:01JakartaTerminal Pulo Gebang0EconomyA Bus from Pahala Kencana goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 16/09/2026 15:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 17/09/2026 04:01:00. 50 Economy ticket for £13 per person are available. Travel duration is 12h 31m
-
MTrans14h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 16/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 16/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 14h 0m
-
Sarwonadhi Trans15h 15m008:00SurabayaCentral Station23:15JakartaTeuku Umar 8 Coach Station0EconomyA Bus from Sarwonadhi Trans goes from Central Station, Surabaya (Indonesia) at 16/09/2026 08:00:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 16/09/2026 23:15:00. 50 Economy ticket for £11 per person are available. Travel duration is 15h 15m
Fastest Flights Wednesday
Fastest Buses Wednesday
-
Batik Air1h 20m005:10Surabaya AirportSurabaya Airport06:30Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 05:10:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 17/09/2026 06:30:00. 50 Economy ticket for £70 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m007:30Surabaya AirportSurabaya Airport08:50Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 07:30:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 17/09/2026 08:50:00. 50 Economy ticket for £70 per person are available. Travel duration is 1h 20m
-
Citilink1h 30m009:35Surabaya AirportSurabaya Airport11:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 09:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 17/09/2026 11:05:00. 50 Economy ticket for £57 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 17/09/2026 16:05:00. 50 Economy ticket for £57 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 17/09/2026 18:45:00. 50 Economy ticket for £57 per person are available. Travel duration is 1h 30m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 17/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 17/09/2026 09:10:00. 50 Economy ticket for £47 per person are available. Travel duration is 1h 30m
-
Harapan Jaya10h 0m009:50SurabayaSidotopo Bus Station19:50JakartaTerminal Bus Kota Blok M0EconomyA Bus from Harapan Jaya goes from Sidotopo Bus Station, Surabaya (Indonesia) at 17/09/2026 09:50:00 to Terminal Bus Kota Blok M, Jakarta (Indonesia) arriving at 17/09/2026 19:50:00. 50 Economy ticket for £11 per person are available. Travel duration is 10h 0m
-
Pahala Kencana12h 31m015:30SurabayaTerminal Purabaya-Bungurasih04:01JakartaTerminal Pulo Gebang0EconomyA Bus from Pahala Kencana goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 17/09/2026 15:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 18/09/2026 04:01:00. 50 Economy ticket for £13 per person are available. Travel duration is 12h 31m
-
Gunung Harta12h 45m012:15SurabayaCentral Station01:00JakartaTerminal Manggarai0EconomyA Bus from Gunung Harta goes from Central Station, Surabaya (Indonesia) at 17/09/2026 12:15:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 18/09/2026 01:00:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 45m
-
MTrans13h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 17/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 17/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 13h 0m
-
Kramat Djati20h 15m015:00SurabayaJl. Arjuna11:15JakartaTerminal Kampung Rambutan0EconomyA Bus from Kramat Djati goes from Jl. Arjuna, Surabaya (Indonesia) at 17/09/2026 15:00:00 to Terminal Kampung Rambutan, Jakarta (Indonesia) arriving at 18/09/2026 11:15:00. 50 Economy ticket for £14 per person are available. Travel duration is 20h 15m
Fastest Flights Thursday
Fastest Buses Thursday
-
Batik Air1h 20m005:10Surabaya AirportSurabaya Airport06:30Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 05:10:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 06:30:00. 50 Economy ticket for £68 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m007:30Surabaya AirportSurabaya Airport08:50Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 07:30:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 08:50:00. 50 Economy ticket for £68 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m010:55Surabaya AirportSurabaya Airport12:15Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 10:55:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 12:15:00. 50 Economy ticket for £68 per person are available. Travel duration is 1h 20m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 16:05:00. 50 Economy ticket for £58 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 18/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 18/09/2026 18:45:00. 50 Economy ticket for £58 per person are available. Travel duration is 1h 30m
-
Harapan Jaya10h 0m020:30SurabayaSidotopo Bus Station06:30JakartaTerminal Pulo Gebang0EconomyA Bus from Harapan Jaya goes from Sidotopo Bus Station, Surabaya (Indonesia) at 18/09/2026 20:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 19/09/2026 06:30:00. 50 Economy ticket for £11 per person are available. Travel duration is 10h 0m
-
MTrans13h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 18/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 18/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 13h 0m
-
Kramat Djati13h 15m015:00SurabayaCentral Station04:15JakartaTerminal Manggarai0EconomyA Bus from Kramat Djati goes from Central Station, Surabaya (Indonesia) at 18/09/2026 15:00:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 19/09/2026 04:15:00. 50 Economy ticket for £15 per person are available. Travel duration is 13h 15m
-
Medali Mas14h 5m016:30SurabayaCentral Station07:35JakartaTeuku Umar 8 Coach Station0BusinessA Bus from Medali Mas goes from Central Station, Surabaya (Indonesia) at 18/09/2026 16:30:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 19/09/2026 07:35:00. 50 Business ticket for £8 per person are available. Travel duration is 14h 5m
-
Sarwonadhi Trans14h 15m008:00SurabayaCentral Station23:15JakartaTeuku Umar 8 Coach Station0EconomyA Bus from Sarwonadhi Trans goes from Central Station, Surabaya (Indonesia) at 18/09/2026 08:00:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 18/09/2026 23:15:00. 50 Economy ticket for £11 per person are available. Travel duration is 14h 15m
Fastest Flights Friday
Fastest Buses Friday
-
Batik Air1h 20m005:10Surabaya AirportSurabaya Airport06:30Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 05:10:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 19/09/2026 06:30:00. 50 Economy ticket for £69 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m007:30Surabaya AirportSurabaya Airport08:50Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 07:30:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 19/09/2026 08:50:00. 50 Economy ticket for £69 per person are available. Travel duration is 1h 20m
-
Citilink1h 30m009:35Surabaya AirportSurabaya Airport11:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 09:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 19/09/2026 11:05:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 19/09/2026 16:05:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 19/09/2026 18:45:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 19/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 19/09/2026 09:10:00. 50 Economy ticket for £47 per person are available. Travel duration is 1h 30m
-
Harapan Jaya11h 30m009:00SurabayaTerminal Purabaya-Bungurasih20:30JakartaTerminal Pulo Gebang0EconomyA Bus from Harapan Jaya goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 19/09/2026 09:00:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 19/09/2026 20:30:00. 50 Economy ticket for £15 per person are available. Travel duration is 11h 30m
-
Tiara Mas12h 18m018:45SurabayaTerminal Purabaya-Bungurasih07:03JakartaTerminal Pulo Gebang0EconomyA Bus from Tiara Mas goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 19/09/2026 18:45:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 20/09/2026 07:03:00. 50 Economy ticket for £15 per person are available. Travel duration is 12h 18m
-
Pahala Kencana12h 31m015:30SurabayaTerminal Purabaya-Bungurasih04:01JakartaTerminal Pulo Gebang0EconomyA Bus from Pahala Kencana goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 19/09/2026 15:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 20/09/2026 04:01:00. 50 Economy ticket for £13 per person are available. Travel duration is 12h 31m
-
MTrans13h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 19/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 19/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 13h 0m
-
Kramat Djati20h 15m015:00SurabayaJl. Arjuna11:15JakartaTerminal Kampung Rambutan0EconomyA Bus from Kramat Djati goes from Jl. Arjuna, Surabaya (Indonesia) at 19/09/2026 15:00:00 to Terminal Kampung Rambutan, Jakarta (Indonesia) arriving at 20/09/2026 11:15:00. 50 Economy ticket for £15 per person are available. Travel duration is 20h 15m
Fastest Flights Saturday
Fastest Buses Saturday
-
Batik Air1h 20m005:10Surabaya AirportSurabaya Airport06:30Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 05:10:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 20/09/2026 06:30:00. 50 Economy ticket for £69 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m007:30Surabaya AirportSurabaya Airport08:50Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 07:30:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 20/09/2026 08:50:00. 50 Economy ticket for £69 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m010:55Surabaya AirportSurabaya Airport12:15Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 10:55:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 20/09/2026 12:15:00. 50 Economy ticket for £69 per person are available. Travel duration is 1h 20m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 20/09/2026 16:05:00. 50 Economy ticket for £65 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 20/09/2026 18:45:00. 50 Economy ticket for £65 per person are available. Travel duration is 1h 30m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 20/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 20/09/2026 09:10:00. 50 Economy ticket for £47 per person are available. Travel duration is 1h 30m
-
Harapan Jaya10h 0m009:50SurabayaSidotopo Bus Station19:50JakartaTerminal Bus Kota Blok M0EconomyA Bus from Harapan Jaya goes from Sidotopo Bus Station, Surabaya (Indonesia) at 20/09/2026 09:50:00 to Terminal Bus Kota Blok M, Jakarta (Indonesia) arriving at 20/09/2026 19:50:00. 50 Economy ticket for £11 per person are available. Travel duration is 10h 0m
-
MTrans14h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 20/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 20/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 14h 0m
-
Medali Mas15h 5m016:30SurabayaCentral Station07:35JakartaTeuku Umar 8 Coach Station0BusinessA Bus from Medali Mas goes from Central Station, Surabaya (Indonesia) at 20/09/2026 16:30:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 21/09/2026 07:35:00. 50 Business ticket for £8 per person are available. Travel duration is 15h 5m
-
Sarwonadhi Trans15h 15m008:00SurabayaCentral Station23:15JakartaTeuku Umar 8 Coach Station0EconomyA Bus from Sarwonadhi Trans goes from Central Station, Surabaya (Indonesia) at 20/09/2026 08:00:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 20/09/2026 23:15:00. 50 Economy ticket for £11 per person are available. Travel duration is 15h 15m
-
Kramat Djati19h 34m015:00SurabayaJl. Arjuna10:34JakartaTerminal Pulo Gebang0EconomyA Bus from Kramat Djati goes from Jl. Arjuna, Surabaya (Indonesia) at 20/09/2026 15:00:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 21/09/2026 10:34:00. 50 Economy ticket for £14 per person are available. Travel duration is 19h 34m
Fastest Flights Sunday
Fastest Buses Sunday
-
Batik Air1h 20m010:55Surabaya AirportSurabaya Airport12:15Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 10:55:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 21/09/2026 12:15:00. 50 Economy ticket for £73 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m011:35Surabaya AirportSurabaya Airport12:55Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 11:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 21/09/2026 12:55:00. 50 Economy ticket for £73 per person are available. Travel duration is 1h 20m
-
Batik Air1h 20m015:40Surabaya AirportSurabaya Airport17:00Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 15:40:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 21/09/2026 17:00:00. 50 Economy ticket for £73 per person are available. Travel duration is 1h 20m
-
Citilink1h 30m014:35Surabaya AirportSurabaya Airport16:05Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 14:35:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 21/09/2026 16:05:00. 50 Economy ticket for £62 per person are available. Travel duration is 1h 30m
-
Citilink1h 30m017:15Surabaya AirportSurabaya Airport18:45Halim Perdanakusuma AirportHalim Perdanakusuma Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 17:15:00 to Halim Perdanakusuma Airport, Halim Perdanakusuma Airport (Indonesia) arriving at 21/09/2026 18:45:00. 50 Economy ticket for £62 per person are available. Travel duration is 1h 30m
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 21/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 21/09/2026 09:10:00. 50 Economy ticket for £48 per person are available. Travel duration is 1h 30m
-
Pahala Kencana12h 31m015:30SurabayaTerminal Purabaya-Bungurasih04:01JakartaTerminal Pulo Gebang0EconomyA Bus from Pahala Kencana goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 21/09/2026 15:30:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 22/09/2026 04:01:00. 50 Economy ticket for £13 per person are available. Travel duration is 12h 31m
-
Gunung Harta12h 45m012:15SurabayaCentral Station01:00JakartaTerminal Manggarai0EconomyA Bus from Gunung Harta goes from Central Station, Surabaya (Indonesia) at 21/09/2026 12:15:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 22/09/2026 01:00:00. 50 Economy ticket for £14 per person are available. Travel duration is 12h 45m
-
MTrans13h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 21/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 21/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 13h 0m
-
Medali Mas14h 5m016:30SurabayaCentral Station07:35JakartaTeuku Umar 8 Coach Station0BusinessA Bus from Medali Mas goes from Central Station, Surabaya (Indonesia) at 21/09/2026 16:30:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 22/09/2026 07:35:00. 50 Business ticket for £8 per person are available. Travel duration is 14h 5m
-
Angkasa Trans Jaya18h 0m005:00SurabayaCentral Station23:00JakartaTerminal Pulo Gebang0EconomyA Bus from Angkasa Trans Jaya goes from Central Station, Surabaya (Indonesia) at 21/09/2026 05:00:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 21/09/2026 23:00:00. 50 Economy ticket for £13 per person are available. Travel duration is 18h 0m
Fastest Flights Monday
Fastest Buses Monday
-
Lion Air1h 30m007:40Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Lion Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 07:40:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 09:10:00. 50 Economy ticket for £47 per person are available. Travel duration is 1h 30m
-
Pelita Air1h 30m006:10Surabaya AirportSurabaya Airport07:40Jakarta AirportJakarta Airport0EconomyA Flight from Pelita Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 06:10:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 07:40:00. 50 Economy ticket for £54 per person are available. Travel duration is 1h 30m
-
Batik Air1h 30m005:05Surabaya AirportSurabaya Airport06:35Jakarta AirportJakarta Airport0EconomyA Flight from Batik Air goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 05:05:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 06:35:00. 50 Economy ticket for £55 per person are available. Travel duration is 1h 30m
-
Citilink1h 35m007:35Surabaya AirportSurabaya Airport09:10Jakarta AirportJakarta Airport0EconomyA Flight from Citilink goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 07:35:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 09:10:00. 50 Economy ticket for £57 per person are available. Travel duration is 1h 35m
-
Garuda Indonesia1h 40m010:15Surabaya AirportSurabaya Airport11:55Jakarta AirportJakarta Airport0EconomyA Flight from Garuda Indonesia goes from Surabaya Airport, Surabaya Airport (Indonesia) at 22/09/2026 10:15:00 to Jakarta Airport, Jakarta Airport (Indonesia) arriving at 22/09/2026 11:55:00. 50 Economy ticket for £57 per person are available. Travel duration is 1h 40m
-
Harapan Jaya10h 59m009:10SurabayaTerminal Purabaya-Bungurasih20:09JakartaTerminal Pulo Gebang0EconomyA Bus from Harapan Jaya goes from Terminal Purabaya-Bungurasih, Surabaya (Indonesia) at 22/09/2026 09:10:00 to Terminal Pulo Gebang, Jakarta (Indonesia) arriving at 22/09/2026 20:09:00. 50 Economy ticket for £15 per person are available. Travel duration is 10h 59m
-
Gunung Harta11h 0m009:00SurabayaCentral Station20:00JakartaTerminal Manggarai0EconomyA Bus from Gunung Harta goes from Central Station, Surabaya (Indonesia) at 22/09/2026 09:00:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 22/09/2026 20:00:00. 50 Economy ticket for £17 per person are available. Travel duration is 11h 0m
-
Haryanto Bojonegoro11h 40m016:30SurabayaCentral Station04:10JakartaTerminal Manggarai0EconomyA Bus from Haryanto Bojonegoro goes from Central Station, Surabaya (Indonesia) at 22/09/2026 16:30:00 to Terminal Manggarai, Jakarta (Indonesia) arriving at 23/09/2026 04:10:00. 50 Economy ticket for £15 per person are available. Travel duration is 11h 40m
-
MTrans14h 0m008:05SurabayaCentral Station22:05JakartaTeuku Umar 8 Coach Station0EconomyA Bus from MTrans goes from Central Station, Surabaya (Indonesia) at 22/09/2026 08:05:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 22/09/2026 22:05:00. 50 Economy ticket for £13 per person are available. Travel duration is 14h 0m
-
Medali Mas15h 5m016:30SurabayaCentral Station07:35JakartaTeuku Umar 8 Coach Station0BusinessA Bus from Medali Mas goes from Central Station, Surabaya (Indonesia) at 22/09/2026 16:30:00 to Teuku Umar 8 Coach Station, Jakarta (Indonesia) arriving at 23/09/2026 07:35:00. 50 Business ticket for £8 per person are available. Travel duration is 15h 5m
Fastest Flights Tuesday
Fastest Buses Tuesday
Here you will find all operators and timetables for a
Bus from Surabaya to Jakarta
What are the most popular stations in Surabaya and Jakarta?
In Surabaya, you will usually depart from Terminal Purabaya-Bungurasih, Gubeng Train Station or Central Station, while in Jakarta you will be arriving at Terminal Senen, Terminal Pasar Minggu or Terminal Manggarai, but there are many more stops to explore in both locations.
How do I decide? Some tips and tricks from our experience
Are you having trouble deciding on how to get to Jakarta from Surabaya? With 15 connections between 18 Flight and Bus operators, it can be difficult to find the one ride that will make you happy. But we have some tips that can help you make the best informed decision. First of all, the best trip is always the one that meets all your needs, so make a list of all the things that you want from this journey and look for something that will satisfy all of them. Here we will go through some of the factors mostly commonly taken into consideration.
Look for the lowest price
Ticket price is usually the main concern: even if you can afford to pay more, why do it if there are cheaper options? Saving on the trip means that you can spend more on the vacation itself! Between Surabaya and Jakarta, you can pay as low as £8 with a Bus from Medali Mas.Travel duration
Time is also an important factor. An earlier departure may allow you to see a beautiful sunset or relax before an important event. And remember, time is money, so paying more for a shorter trip may be well worth it. For longer distances, flights are without doubt the best options, but be mindful of airport times and possible delays: a high-speed train may end up cheaper and faster! Here the quicker option is definitely the Flight from Batik Air: you will get to Jakarta in just 1h 20m.Comfort makes all the difference
You should always take into account what your personal travelling preferences are. Is one hand luggage enough, or are you trasporting more? Would you like to have a snack during the journey? Can you relax in a busy compartment, or do you need space for yourself? Even among the same mode of transportation, different companies will offer you varying levels of comfort and amenities. The main operators connecting Surabaya and Jakarta are Batik Air, Citilink and Lion Air, but be sure to check what they have to offer!Save money with deals, and always compare
One last tip? Even if you live in Surabaya and Jakarta is your only destination, it may be wise to check the offers from and to nearby cities or, if you are flyng, nearby airports. Check the trips from Surbaya or to Tebet, and look at flights from Surabaya Airport, and landing at Halim Perdanakusuma Airport. Comparing different routes may allow you to find deals or promotions you were not aware of. Consider also signing up to CheckMyBus to see even more exclusive promotions!Which companies offer a trip from Surabaya to Jakarta?
The most popular companies between Surabaya and Jakarta, are Batik Air, Citilink and Lion Air. Be sure to check their seat class offers and the amenities that they provide.
Bus companies: MTrans, Harapan Jaya, Pahala Kencana and 7 more.
Airlines: Batik Air, Citilink, Lion Air and 4 more.
All you need to know when you travel from Surabaya to Jakarta
Check all information on comfort and services on all modes of transports from Surabaya to Jakarta. See which seat classes are available, and what amenities are other advantages offered by the operators on your journey.
FAQs about the trip from Surabaya to Jakarta
How can I reach Jakarta from Surabaya?
Every day, there are on average 15 connections between Flight and Bus, with which you can get to Jakarta from Surabaya.
How far is Jakarta from Surabaya?
The distance between Surabaya and Jakarta is 662.2 km.
What is the most ecofriendly mode of transport between Surabaya and Jakarta?
Trains and buses are by far the greenest options, with trains surpassing buses on longer routes. Planes will always be the worst polluters, especially in shorter flights, were the emissions from the takeoff and landing are less offset by the distance.
On this particular route, a bus will emit, per person, a total of 18 kgs of CO2, a train 23 kgs, a car 113 kgs, and a flight 163 kgs.
What is the cheapest mode of transport from Surabaya to Jakarta?
You can get to Jakarta with just £8 by taking a Bus from Medali Mas.
What is the fastest way to get from Surabaya to Jakarta?
While a plane is travelling fastest boarding and transfer to airport consumes a lot of time. Usually, high speed trains are better than flights if pure train travel time is below 4 hours. For this particular route, you can get to Jakarta in just 1h 20m with a Flight from Batik Air.
More routes to Surabaya and to Jakarta
Looking for more options? Here you can see the most popular routes to Surabaya and to Jakarta. Simply click on a connection, and you’ll find all the details about the route!
