How to travel from Bogor to Surabaya, Indonesia

The distance between Bogor and Surabaya is around 730km (454 miles) and the quickest way to get there is to fly which takes around 2h 55m.

8 routes found

We've found 8 different ways to get from Bogor to Surabaya by plane, train, bus and car. The recommended routes, which include information on duration, ticket price, and level of difficulty, can be found below.

👋 Also check out SurabayaBogor if you're planning a return trip.

🚀 Fastest
1
plane
+

Fly

Fly from Jakarta Halim Perdana Kusuma (HLP) to Juanda International (SUB).

  • Duration2h 55m
  • Flight time1h 30m
  • Typical cost
    IDR 1,542,730($105)
Operated by

Batik Air

+ 1 others

2 similiar routes

We’ve grouped similar routes together, click the arrows to see the other options.

💰 Cheapest
2
train
+
train
+

Train

Take the train to Gambir Central and then to Surabaya Pasar Turi.

  • Duration9h 30m
  • Departsevery 20 mins
  • Typical cost
    IDR 269,605($18)
Operated by

Multiple train operators

1 similiar route

We’ve grouped similar routes together, click the arrows to see the other options.

3
bus
+

Bus

Take the bus to Surabaya Kota.

  • Duration13h 5m
  • Departsonce daily
  • Typical cost
    IDR 464,315($31)
Operated by

Damri

1 similiar route

We’ve grouped similar routes together, click the arrows to see the other options.

4
car
+

Drive

Drive to Surabaya.

  • Duration9hrs
  • Distance815km (507 miles)
Get turn-by-turn directions

Frequently asked questionsabout travel between Bogor and Surabaya

There are several options for getting from Bogor to Surabaya by plane, train, bus and car. The cheapest option is to take the train which costs around IDR 269,605 ($18) and will take around 9h 30m. If you need to get there more quickly, you can fly and arrive in approximately 2h 55m, though it is a bit more costly at approximately IDR 1,542,730 ($105).

The distance between Bogor and Surabaya is around 730km (454 miles). In a direct line (as the crow flies), the distance is 660km (410 miles)

It takes around 2h 55m to get from Bogor and Surabaya by plane. If you are travelling by car it will take around 9hrs to drive there.

The quickest way to get from Bogor to Surabaya is to fly which takes around 2h 55m and will set you back approx IDR 1,542,730 ($105).

The cheapest way to travel between Bogor and Surabaya, if you exclude driving, is to take the train which will typically cost around IDR 269,605 ($18) for a standard one-way ticket.

Train travel

Yes there is a train service that runs between Bogor and Surabaya. It typically takes around 9h 30m and departs every 20 mins.

There are no direct train services that runs from Bogor to Surabaya. However, you can instead can take several connecting trains with a changeover in Gambir Central. These services run every 20 mins and will take a minimum of 9h 30m.

Commuter Line and Kereta API run train services between Bogor and Surabaya. Trains depart every 20 mins and will take around 9h 30m, however, this may vary depending on the particular service and whether it runs express or stops all stations.

Bus travel

Yes there is a bus that runs regularly from Bogor and Surabaya. It typically takes around 13h 5m and departs once daily.

There are no direct bus services that runs from Bogor to Surabaya. However, you can instead can take several connecting buses with changeovers in Jakarta Halim Perdana Kusuma Airport, Jakarta Halim Perdana Kusuma Airport, Rawamangun Bus Terminal, Pemuda Rawamangun, Pasar Rumput and Jakarta. These services run once daily and will take a minimum of 13h 5m.

Damri and Nusantara run regular bus services between Bogor and Surabaya. Buses run once daily and take around 13h 5m on average but will vary depending on you book with.

Flights and Airlines

Yes you can fly from Bogor and Surabaya. Flights depart from Jakarta Halim Perdana Kusuma (HLP) and arrive at Juanda International (SUB). The flight takes around 1h 30m.

Yes there is a direct flight between Bogor and Surabaya with no stop-overs required. Flights typically take around 1h 30m.

Batik Air and Citilink Indonesia fly between Bogor and Surabaya. Flights depart from Jakarta Halim Perdana Kusuma (HLP) and and arrive into Juanda International (SUB). These flights usually take around 1h 30m.

The flight from Bogor to Surabaya typically takes around 1h 30m. Flights depart from Jakarta Halim Perdana Kusuma (HLP) and and arrive into Juanda International (SUB).

The closest major airport to Surabaya is Juanda International Airport (SUB) (SUB) which is approximately 16km (10 miles) from Surabaya. Abdul Rachman Saleh Airport (MLG) (MLG) and Blimbingsari Airport (BWX) (BWX) are also nearby and might be a better alternative airport depending on where you are flying from.

Drive yourself

Yes it is possible to drive from Bogor and Surabaya. The distance is around 815km (507 miles) by road and it will take around 9hrs in normal traffic conditons.

If you don't have a car, the easiest way to get from Bogor to Surabaya is to fly which takes, on average, 2h 55m and will usually cost around IDR 1,542,730 ($105).

How do I get from Bogor to Surabaya

Compare travel optionsbetween Bogor and Surabaya

Transport options from Bogor to Surabaya
Transport optionDurationCostFrequencyDistance
Fly + 2 similar
2h 55m
IDR 1,542,730($105)
hourly730km (454 miles)
Train and Plane4h 20m
IDR 1,407,930($95)
every 15 mins806km (501 miles)
Plane and Train4h 45m
IDR 1,677,530($110)
once daily809km (503 miles)
Train + 1 similar
9h 30m
IDR 269,605($18)
every 20 mins768km (477 miles)
Train via Gambir Central12h 45m
IDR 284,580($19)
once daily873km (542 miles)
Bus + 1 similar
13h 5m
IDR 464,315($31)
once daily852km (529 miles)
Bus via Kudus21h 45m
IDR 374,450($25)
once daily799km (497 miles)
Drive
9hrs
IDR 1,362,995($90)
on demand815km (507 miles)

Top Carriersoperating between Bogor and Surabaya

Airlines

Train operators

Bus companies

Airports near Surabaya

The following major airports near Surabaya offer regular flights to various popular destinations within Indonesia and internationally.

SUB
Juanda International Airport (SUB)
International Airport
Distance
16km (10 miles) from Surabaya
MLG
Abdul Rachman Saleh Airport (MLG)
Domestic Airport
Distance
76km (47 miles) from Surabaya
BWX
Blimbingsari Airport (BWX)
Domestic Airport
Distance
213km (132 miles) from Surabaya