Taking the train in Indonesia
 

Travel Java by train, the civilised way!

Buy train tickets

   
 

Train travel on Java

An excellent train system links all the main cities on Java, including Jakarta, Bandung, Yogyakarta, Solo, Surabaya, Probolinggo (for Mt Bromo) and Ketapang (for the ferry to Bali).  Trains are cheap, comfortable and air-conditioned, an ideal way to get around.  Indonesian trains run on narrow-gauge 3' 6" tracks, but are fast and usually punctual, with efficient computerised reservations.  The Indonesian for train is Kereta Api - literally fire carriage...

small bullet point  Useful country information: Visas, currency, etc.

small bullet point  How to buy tickets

small bullet point  Classes explained: Luxury, Eksekutif, Bisnis & Ekonomi

small bullet point  Luggage on trains

small bullet point  Food, drink & travel tips

small bullet point  A train ride from Jakarta to Bali in pictures

small bullet point  Jakarta airport train link

small bullet point  Travel insurance, mobile data & other tips

small bullet point  Recommended hotels on Java & Bali

Times & fares for Java

small bullet point  Jakarta - Surabaya

small bullet point  Jakarta - Bandung

small bullet point  Jakarta - Yogyakarta & Solo

small bullet point  Yogyakarta - Solo

small bullet point  Bandung - Yogyakarta - Solo - Surabaya

small bullet point  Surabaya - Probolinggo - Ketapang (for Bali)

Sumatra & Bali

It's easy to travel by train & ferry between Java and Bali, or Java & Sumatra.

small bullet point  Java to Bali by train & ferry

small bullet point  Java to Sumatra by train & ferry

small bullet point  Train travel on Sumatra

Other routes

small bullet point  Ferries to Borneo, Sulawesi & Papua

small bullet point  Ferries between Singapore & Jakarta

small bullet point  Europe - Indonesia by Trans-Siberian Railway

Route map:  Click for larger map

Map of train and ferry routes in Indonesia, including Sumatra, Java and Bali

© OpenStreetMap contributors, available under the creative commons licence.


Useful country information

Train operator in Indonesia:

PT Kereta Api - website www.kai.id.  It's easier to use www.tiket.com.

 

Ferry operator in Indonesia:

 

Pelni - www.pelni.co.id

Time zone:

Java & Sumatra GMT+7, Bali & central Indonesia GMT+8

Eastern Indonesia GMT+9.

Dialling code:

 

+62

Currency:

£1 = approx 18,000 rupiah;  $1 = 15,000 rupiah.  Currency converter

Tourist information:

www.indonesia-tourism.com.

Hotels

 

Search hotels in Indonesia

Flights:

 

Search flights to Indonesia

Visas:

Citizens of many countries including the UK, USA, Canada, New Zealand, Malaysia, Thailand & Singapore do not require a visa for stays of up to 30 days.  Some other nationalities including Australia can get a tourist visa on arrival for a stay of up to 30 days.  You must enter through a major airport or designated seaport and a return or onward ticket is required, see www.indonesianembassy.org.uk for details.

Page last updated:

11 September 2023.


Train travel on Java

Maps

How to check train times & fares

Back to top


How to buy tickets

Option 1, buy online at booking.kai.id, only Indonesian cards accepted

Buy tickets dfrom Tiket.com

Option 2, buy online at www.tiket.com, recommended

Tiket.com confirmation   Train boarding pass

Booking confirmation from www.tiket.com with booking reference and QR barcode...

 

You must exchange this for an orange boarding pass at the station.

Option 3, buy tickets at Indomaret convenience stores

Indomaret convenience store   Ticket selling terminal

Many though not all Indomaret stores have these terminals...

 

Ticket terminal...

Option 4, buy tickets at the station

Train ticket office at Gambir   Self-service ticket machines

The north concourse ticket office at Jakarta Gambir.  You'll find a desk with pens & blank booking forms nearby, fill one out before going to the window.

 

The desk with pens & blank booking forms at Ketapang ticket office, together with a self-service ticket machine which accepts banknotes...

Important Orange boarding passes

Train check-in machines, Jakarta Gambir   Train check-in counters, Surabaya Gubeng

1.  Check-in to get your orange boarding pass by scanning your QR barcode or typing in your booking reference.  These are the check-in counters at Jakarta Gambir (above left) and more basic ones at Yogyakarta (above right)...

ID check gate at Jakarta Gambir   Checking passports & boarding passes at Jakarta Gambir

2.  ID check before accessing platforms.  Your orange boarding pass is scanned (beep!) and your passport checked at the entrance gate to the platforms.  This is the South Concourse departures gate at Jakarta Gambir...

On board Indonesian trains

Eksekutif, Bisnis & Ekonomi class

Eksekutif class train seats   Bisnis class train seats

Eksekutif class...

 

Bisnis class...

Power sockets on the Argo Dwipangga   Ekonomi class train seats

Sockets in all classes, European 2-pin type.

 

Ekonomi class...

Eksekutif Luxury class

Available on the Argo Bromo Anggrek & Sembrani between Jakarta & Surabaya, Argo Dwipangga between Jakarta, Yogyakarta & Solo.  This is a major step above normal Eksekutif class, introduced in 2018.  It only exists on a few trains, including the premier Argo Bromo Anggrek & Sembrani between Jakarta & Surabaya and Argo Dwipangga between Jakarta, Yogyakarta & Solo, in addition to the normal Eksekutif class seats.  There is usually just one Eksekutif Luxury car on each train.  The first generation cars used between Jakarta & Surabaya have 18 flatbed seats arranged 1+1 across the car width, with a 170 degree power-recline with surround walls for privacy and individual flat-screen TV entertainment.  It's the closest thing to a sleeper you'll find on any Indonesian overnight train, although only a blanket is provided, not sheets.  The second generation luxury class cars (used on the Jakarta-Yogyakarta route amongst others) have seats arranged 2+1 across the car width and only a 140 degree recline.  See www.kaorinusantara.or.id/newsline/111626 for photos & video at www.youtube.com/watch?v=Kn3Yt52H5TMPhotos courtesy of www.discoverbyrail.com.

Eksekutif luxury class on Jakarta-Surabaya train   Eksekutif luxury class on Jakarta-Surabaya train

Luxury class, first generation.  Operates day and night between Jakarta Gambir & Surabaya.  Click for larger photos.

Eksekutif luxury class on Jakarta-Yogyakarta Argo Dwippanga train   Eksekutif luxury class on Jakarta-Yogyakarta Argo Dwippanga train

Luxury class, second generation.  Routes include Jakarta Gambir to Yogyakarta on the Argo DwipanggaClick for larger photos

Luggage allowance 20 Kg

Luggage scales at Jakarta Gambir   Overhead luggage racks on an indonesian train   Suitcases can go behind the rear seats

Luggage limit sign at Gambir.

 

Luggage goes on the overhead racks...

 

Or behind the rearmost seats...

Food & drink

Preparing the microwaved tray means on train 102, the Ranggajati   Typical Indonesian train food

Orders taken, staff start the complex process of microwaving batches of rice and meat then restoring them to the plastic trays.  This is train 102, the Ranggajati.

 

A typical microwaved tray meal.  Chicken (ayam), rice (nasi) and beans.  Tastier than it looks and only around Rp 30,000, about $2.50.

Travel tips

Indonesian train seat plan

Back to top


Jakarta Soekarno–Hatta International airport train

Back to top


Jakarta to Semarang & Surabaya

A range of trains links Jakarta with Surabaya, but the best train is the Argo Bromo Anggrek with Eksekutif Luxury & Eksekutif classes, clean, modern and powerfully air-conditioned.  It has comfortable reclining seats with footrests and a catering car.  There is both a daytime service and a time-effective overnight service.  The overnight train doesn't have sleepers (these disappeared from Indonesian trains in the 1990s), but the Eksekutif Luxury class car (shown as Lux in the timetable below) has flatbed seats that go completely flat, blanket provided.

 Jakarta ► Surabaya

Train number:

2

130

256

106

76

78

4

Classes:

Lux,Eks

Eks,Eko

Eko

Eks,Eko

Eks

Lux,Eks

Lux,Eks

 Jakarta Gambir depart

08:20

-

-

-

17:10

19:00

20:35

 Jakarta Pasar Senen depart

|

08:55

14:10

16:45

|

|

|

 Semarang arrive/depart

13:44

15:07

20:52

23:23

(via Y)

01:10

01:58

 Surabaya Pasar Turi arrive

16:30

19:35

01:25

03:39

|

04:00

04:45

 Surabaya Gubeng arrive

-

-

-

04:05

04:11

-

-

 Surabaya ► Jakarta

Train number:

1

105

75

77

3

255

129

Classes:

Lux,Eks

Eks,Eko

Eks

Lux,Eks

Lux,Eks

Eko

Eks,Eko

 Surabaya Gubeng depart

-

13:56

17:30

-

-

-

-

 Surabaya Pasar Turi depart

09:35

14:20

|

19:25

21:05

21:20

22:35

 Semarang arrive/depart

12:00

19:07

(via Y)

21:45

23:45

01:34

03:07

 Jakarta Pasar Senen arrive

|

01:25

|

|

|

08:25

09:25

 Jakarta Gambir arrive

17:45

-

04:40

04:27

05:15

-

-

Shaded = the best quality trains, recommended.  There are no sleepers on the overnight trains, only reclining seats and (in Eksekutif Luxury class) flatbed seats.

This timetable is only a summary, there are other trains, check times & fares at www.tiket.com (in English) or booking.kai.id (in Indonesian).

The station in Semarang is Semarang Tawang.   See map of Jakarta showing stations

(via Y) = runs via Yogyakarta & Solo, not Semarang, see route map at top of page.

Trains 1, 2, 3 & 4 are the Argo Bromo Anggrek (the Bromo Orchid), all Eksekutif class, fully-air-conditioned.  As well as regular Eksekutif class seats these trains have one car of Eksekutif Luxury class with 18 flatbed seats similar to airline business class, the closest thing to a sleeper on any Indonesian train, see above.

Trains 75 & 76 are the Bima, Eksekutif class only, air-conditioned

Trains 77 & 78 are the Sembrani, Luxury Eksekutif class, Eksekutif class, air-conditioned.

Trains 129 & 130 are the Dharmawangsa, Eksekutif & Ekonomi class, air-conditioned

Trains 105 & 106 are the Jayabaya, Ekonomi class only, air-conditioned.

Trains 255 & 256 are the Kertajaya, Ekonomi class only, air-conditioned.

Jakarta to Surabaya is 725 km, 450 miles.

 How much does it cost?

 Example one-way fare in rupiah

Eksekutif Luxury

Eksekutif

Bisnis

Ekonomi

 Jakarta - Surabaya

1,250,000

795,000

360,000

260,000

£1 = approx 18,000 rupiah;  $1 = 15,000.  Prices vary by date & train, check fares at booking.kai.id or www.tiket.com.

Children under 3 travel free, no ticket required.  Passengers 3 and over count as adults.

Prices vary significantly, with cheaper fares if you pre-book, for example Eksekutif class from 400,000 rupiah.

How to buy tickets:  At the station, at Indomaret minimarkets or online at Tiket.com as shown here.

A journey on the Argo Bromo Anggrek

The Argo Bromo Anggrek (the Bromo Orchid) is Indonesia's premier train, linking Java's two largest cities in 9 hours at a creditable average speed of 80 km/h (50mph) start to stop on its narrow gauge tracks.  The train keeps up a relentless 110 km/h (75 mph) between the few stops it makes, hooting ceaselessly at each level crossing, speeding non-stop through most smaller stations on its 9 hour dash - the same journey would take 15 hours by road.  As you pass through each station, look for the station master in his red and gold hat, standing to attention outside his office watching the train pass through.  The countryside is largely flat, rice paddies, villages, towns, palms and the occasional mosque.  After Semarang there's a brief stretch where the train skirts the Java Sea, and around Cirebon you'll see the vast shadow of Mt Cereme in the distance to the south, its summit usually hidden by cloud.  It's an active volcano and the highest point in west Java.

Train 1, Argo Bromo Aggrek at Surabaya Pasar Turi

Indonesia's premier train, the Argo Bromo Anggrek, is ready to leave Surabaya on its 9 hour dash to Jakarta.

Refreshment trolley   Driver of the train to Jakarta about the leave Surabaya

Trolley serving tea, coffee, soft drinks, crisps & tray meals.

 

The driver of the Argo Bromo Anggrek is ready to go...

Eksekutif class seats on the Argo Bromo Anggrek

Eksekutif class on the Argo Bromo Anggrek, comfortable and powerfully air-conditioned...

Catering car on the Argo Bromo Anggrek   Passing Semarang

The catering car on the Argo Bromo Anggrek...

Semarang...

Coastline seen from the train   Rice fields

The train briefly skirts the Java Sea...

 

Rice, rice and more rice...

Rice fields and Mt Cereme seen from the train

Around Cirebon you'll see the imposing shadow of Mt Cereme to the south, an active volcano & highest point in West Java.

Back to top


Jakarta to Bandung

There is a train every hour or two from Jakarta Gambir station to Bandung, with Eksekutif & Bisnis class, taking about 3 hours 10 minutes for the 173 km, fare about 100,000 Rupiah in Eksekutif, 80,000 in Ekonomi.  See www.kereta-api.co.id or www.tiket.com to check times & fares for your date.

A high-speed line is under construction from Jakarta to Bandung, which was due to open in mid-August 2023, now looks like it may open in October 2023.

Back to top


Jakarta to Yogyakarta & Solo

Jakarta may be Java's capital, but Yogyakarta, known locally at Yogya, is its heart.  Solo, also known as Surakarta, is Yogya's long-standing rival an hour to the east.  Both cities should feature on any sensible trip to Java.  It's easy to travel from Jakarta to Yogya or Solo by comfortable air-conditioned train, indeed it's the best way.

 Jakarta ► Yogyakarta & Solo

Train number:

134

144

10

82

122

76

8

136

138

Classes:

Eks,Eko

Eks,Eko

Lux,Eks

Eks

Eks,Eko

Eks

Lux,Eks

Eks,Eko

Eks,Eko

 Jakarta Gambir (GMR) depart

-

-

08:50

09:10

-

17:10

20:45

-

-

 Jakarta Pasar Senen (PSE) depart

05:55

06:45

|

|

11:40

|

|

21:05

23:00

 Yogyakarta (YK) arrive

13:34

15:23

15:01

15:35

19:42

00:09

02:56

05:08

07:31

 Solo (Solobalapan, SLO) arrive

14:29

-

15:54

-

20:40

00:57

03:49

06:11

-

 Solo & Yogyakarta ► Jakarta

Train number:

143

81

121

7

135

137

9

75

Classes:

Eks,Eko

Eks

Eks,Eko

Eks

Eks,Eko

Eks,Eko

Lux,Eks

Eks

 Solo (Solobalapan, SLO) depart

-

-

08:12

08:35

08:50

-

20:10

20:42

 Yogyakarta (YK) depart

07:00

08:50

09:07

09:24

09:47

09:58

20:59

22:00

 Jakarta Pasar Senen (PSE) arrive

15:01

|

17:26

|

18:08

18:56

|

|

 Jakarta Gambir (GMR) arrive

-

15:10

-

15:35

-

-

03:10

04:40

Shaded = the best quality recommended trains.  See map of Jakarta showing stations

There are no sleepers on the overnight trains, only reclining seats and (on trains 8 & 9) flatbed seats in Eksekutif Luxury class.

You can check train times & fares using www.tiket.com (in English) or booking.kai.id (in Indonesian).

Trains 7 & 8 are the Argo Lawu, Eksekutif Luxury class flatbed seats & regular Eksekutif class seats, air-conditioned.

Trains 9 & 10 are the Argo Dwipangga, Eksekutif Luxury class flatbed seats & regular Eksekutif class seats, air-conditioned.

Trains 75 & 76 are the Bima, Eksekutif class only, air-conditioned.

Trains 81 & 82 are the Taksaka, Eksekutif Luxury class & Eksekutif class, air-conditioned.

Trains 121 & 122 are the Bangunkarta, Eksekutif & Ekonomi class, air-conditioned.

Train 134 is the Fajar Utama Solo, Eksekutif & Ekonomi class, air-conditioned.

Trains 135 & 136 are the Mataram, Eksekutif & Ekonomi class, air-conditioned.

Trains 137 & 138 are the Bogowonto, Eksekutif & Ekonomi class, air-conditioned.

Trains 143 & 144 are the Fajar Utama Yogya, Eksekutif & Ekonomi class, air-conditioned.

Jakarta to Yogyakarta is 522 km, 326 miles.

 How much does it cost?

 Example one-way fare in rupiah

Eksekutif luxury class

Eksekutif class

Ekonomi

 Jakarta - Yogyakarta

1,200,000

560,000

225,000

£1 = approx 18,000 rupiah;  $1 = 15,000.  Prices vary by date & train, check fares at www.kereta-api.co.id or www.tiket.com.

Children under 3 travel free, no ticket required.  Passengers 3 and over count as adults.

How to buy tickets:  At the station, at Indomaret minimarkets or online at Tiket.com as shown here.

A journey on the Argo Dwipangga

Approaching Cirebon you'll see the vast shadow of Mt Cereme in the distance to the south, its summit usually hidden by cloud.  It's an active volcano and the highest point in west Java.  The nicest part of the journey from Jakarta to Yogya or Solo comes beyond Cirebon, where the train slows right down and snakes through gentle hills, past rice paddies nestling in narrow valleys amongst the jungle...

Train 10, Argo Dwipangga about to leave Jakarta Gambir   Steward selling tea & coffee

Train 5, the Argo Dwipangga boarding at Jakarta Gambir...

 

Refreshments on board...

Eksekutif class seats on the Argo Dwipangga

Eksekutif class seating on the Argo Dwipangga, one of the new air-conditioned trainsets introduced in 2016.  The Bima, Argo Lawu & Argo Dwipangga have similar new trainsets like this

Locomotive at the fron of the Argo Dwipangga at Gambir   The catering car on the Argo Dwipangga

The Argo Dwipangga ready to leave Gambir...

 

Buffet car on the Argo Dwipangga...

Rice fields and Mt Cereme seen from the train

Around Cirebon you'll see the imposing shadow of Mt Cereme to the south, an active volcano & highest point in West Java.  See more photos of this journey.

Watch the video

Back to top


Yogyakarta to Solo

These two Javan cities are only an hour apart by train.  Both are key stops on the tourist trail, Yogya is a must-see and Solo is well worth visiting.  You can see Solo as a day trip from Yogyakarta by train if you like.  There are two options for travel between Yogya & Solo:

Kommuter train to Solo, at Yogyakarta   KAI Kommuter train

KAI Kommuter train at Yogyakarta.  Photos courtesy of Peter Gremse.

Back to top


Bandung - Yogyakarta - Solo - Surabaya

 Bandung Yogyakarta, Solo ► Surabaya

Train number:

178

112

160

6

176

116

76

120

80

132

Classes:

Eks,Eko

Eks,Bis

Eks,Eko

Eks

Eks,Eko

Eks,Eko

Eks

Eks,Bis,Eko

Eks

Eks,Eko

 Bandung depart

-

-

07:05

08:15

-

-

-

17:20

18:40

20:30

 Yogyakarta arrive

-

-

14:30

14:18

-

-

-

00:28

00:55

04:06

 Yogyakarta depart

06:45

11:15

14:35

14:21

17:10

18:20

00:14

00:32

01:00

04:11

 Solo (Surakarta) arr/dep

07:31

12:04

15:25

15:01

17:56

19:08

00:57

01:16

01:44

04:57

 Surabaya Gubeng arrive

10:45

15:57

-

18:10

21:15

22:50

04:11

-

04:58

08:45

 Probolinggo arrive

-

18:19

-

-

-

01:22

-

-

-

-

 Surabaya ► Solo, Yogyakarta Bandung

Train number:

159

5

175

111

75

115

79

119

131

Classes:

Eks,Eko

Eks

Eks,Eko

Eks,Bis

Eks

Eks,Eko

Eks

Eks,Bis,Eko

Eks,Eko

 Probolinggo depart

-

-

-

06:59

-

15:45

-

-

-

 Surabaya Gubeng depart

-

07:30

09:00

09:22

17:30

18:15

19:00

-

19:45

 Solo (Surakarta) arr/dep

-

10:31

12:15

13:10

20:42

22:19

22:05

-

23:34

 Yogyakarta arrive

-

11:11

13:04

14:01

21:26

23:08

22:48

-

00:08

 Yogyakarta depart

08:15

11:14

-

-

-

-

22:53

23:28

00:14

 Bandung arrive

16:10

17:25

-

-

-

-

05:19

06:56

08:00

The station in Yogyakarta is Yogyakarta, station code YK.  The station in Solo is Solobalapan, station code SLO.

Probolinggo is the usual railhead for visiting Mt Bromo.  Surabaya Gubeng station code is SGU.

You can check train times & fares using www.tiket.com (in English) or booking.kai.id (in Indonesian).

There are no sleeping-cars, night trains just have reclining seats.

Trains 5 & 6 are the Argo Wilis, Eksekutif class only, air-conditioned.

Trains 75 & 76 are the Bima, Eksekutif class only, air-conditioned.

Trains 79 & 80 are the Turangga, Eksekutif class only, air-conditioned.

Trains 111 & 112 are the Ranggajati, Eksekutif & Bisnis class, air-conditioned.

Trains 115 & 116 are the Wijayakusuma, Eksekutif & Ekonomi classes, air-conditioned.

Train 119 is the Malabar, Eksekutif, Bisnis & Ekonomi classes, air-conditioned.

Trains 131 & 132 are the Mutiara Selatan, Eksekutif & Ekonomi class, air-conditioned.

Trains 159 & 160 are the Lodaya, Eksekutif & Bisnis class, air-conditioned.

Trains 175, 176, 178 are Sancaka, Eksekutif & Ekonomi class, air-conditioned.

Bandung to Surabaya is 696 km, 435 miles.  Yogyakarta to Surabaya is 308 km, 193 miles. 

 How much does it cost?

 Example one-way fares in rupiah

Eksekutif class

Bisnis class

Ekonomi class

 Bandung - Surabaya

500,000

-

-

 Bandung - Yogyakarta

350,000

295,000

210,000

 Yogyakarta - Surabaya

300,000

210,000

180,000

£1 = approx 18,500 rupiah;  $1 = 15,000.  Prices vary significantly by date & train, check fares at booking.kai.id or www.tiket.com.

Children under 3 travel free, no ticket required.  Passengers 3 and over count as adults.

How to buy tickets:  At the station, at Indomaret minimarkets or online at Tiket.com as shown here.

Traveller William Bernstein reports:  "The Argo Wilis is one of the world's great trains in terms of scenery, particularly the first 100 km east of Bandung; if Bali had a railroad, this is what the scenery would look like.  Reserving in advance wasn't really necessary, service was about on a level with a local European second class train."

Traveller Edmund Carew travelled Surabaya-Bandung on the Argo Wilis:  "The aircon trains were only 50 to 75 per cent full: it was incredibly easy to book, with no queues at Surabaya or Bandung.  However, third class trains around Surabaya were packed as were local trains on the 'snappy' Bogor line from Jakartakota station.  The Indonesian railways make a real effort to run on time.  Mostly they seem to be no more than 15 minutes late, which is good although schedules between Surabaya and Bandung (hilly last bits) was only an average speed of 57 - 58 km/h."

Traveller William Bernstein reports:  "The Yogyakarta -Surabaya train was squeaky clean, the service was exquisite and the scenery as gorgeous as from the Bandung-Surabaya train.  The Indonesians have definitely upgraded their system, and particularly their day trains, from what we’ve seen, over the past 40 years."

A journey on the Ranggajati

Train 102 Ranggajati at Solo Balapan

Train 102, the Ranggajati calls at Solobalapan.

Eksekutif seats on the Ranggajati   Bisnis class seats on the Ranggajati

Eksekutif class on the Ranggajati...

 

Bisnis class on the Ranggajati...

More rice fields

Rice fields from the train.  See more photos of this journey.

Back to top


Surabaya - Probolinggo - Ketapang (for Bali)

The railway linking Surabaya with Probolinggo (the usual jumping-off point for Mt Bromo) and Ketapang (the ferry terminal for Bali) is a treat, snaking through eastern Java's rice fields and jungle.  For the ferry connections to Bali, see the next section Also see the video below.

 Surabaya ► Ketapang

Train number:

317

288

112

238

116

Class:

Eko

Eko

Eks,Bis

Eks,Eko

Eks,Eko

 Surabaya Gubeng depart

05:30

13:40

16:22

22:44

23:35

 Probolinggo arrive/depart

07:53

15:42

18:19

00:48

01:27

 Ketapang (Banyuwangi Baru) arrive

12:30

20:05

-

04:40

05:45

 Ketapang ► Surabaya

Train number:

111

287

115

318

 237

 

Eks,Bis

Eko

Eks,Eko

Eko

Eks,Eko

 Ketapang (Banyuwangi Baru) depart

-

07:00

11:30

14:45

19:30

 Probolinggo arrive/depart

06:59

11:19

15:45

19:37

23:34

 Surabaya Gubeng arrive

08:52

13:11

17:32

21:36

01:21

Shaded = recommended trains.

Banyuwangi Baru station was renamed Ketapang in 2020, station code KTG.

You can check train times & fares using www.tiket.com (in English) or booking.kai.id (in Indonesian).

Trains 111 & 112 are the Ranggajati, Eksekutif & Bisnis class, runs to/from Solo & Yogyakarta.

Trains 115 & 116 are the Wijayakusuma, Eksekutif & Ekonomi class, all air-conditioned, recommended.

Trains 183 & 184 are the Mutiara Timur (Eastern Pearl), Eksekutif & Ekonomi class, all air-conditioned, sadly suspended post-pandemic.

Trains 237 & 238 are the Blambangan Ekspres, Eksekutif & Ekonomi class, all air-conditioned.

Trains 287 & 288 are the Sri Tanjung, Ekonomi class only, air-conditioned.

Trains 317 & 318 are the Probowangi, Ekonomi class only, air-conditioned.

Fare:  Surabaya to Ketapang costs around 105,000 rupiah (£8 or $13) in Eksekutif, 75,000 rupiah (£6 or $9) in Bisnis. 

How to buy tickets:  At the station, at Indomaret minimarkets or online at Tiket.com as shown here.

A journey to Ketapang

Mutiara Timur en route from Surabaya to Banyuwangi

An express train (the former Mutiara Timur, which has not resumed post-pandemic) at Probolinggo, on its way to Ketapang (Banyuwangi) to meet the ferry to Bali.

Great scenery from the train in eastern Java

In eastern Java the scenery just keeps on coming:  Jungle, hills, rice paddies, palms, bananas, villages. See more photos of this journey.

Back to top


Java to Bali by train & ferry

It's easy, cheap and fun.  Take a comfortable air-conditioned train from Surabaya to Ketapang (the station was called Banyuwangi Baru until 2020) at the eastern tip of Java.  It's then a 350m 5-minute walk from the station to Ketapang ferry terminal, from where ferries sail every 15 minutes to Gilimanuk on Bali, crossing time just 45 minutes.  Buses run from Gilimanuk to Bali's capital Denpasar, or you can take a taxi or get your hotel to arrange a transfer from Gilimanuk to anywhere on Bali.  See the video guide here.

It's safe, comfortable, cheap and easy to arrange.  The train needs a reservation, but you can buy the ferry ticket at the ferry terminal and just find a bus or taxi on arrival at Gilimanuk.  With great scenery on the train ride through eastern Java, this is the best way to travel from cities on Java to anywhere on Bali.

Surabaya & Probolinggo ► Bali

Bali ► Probolinggo & Surabaya

Java to Bali in pictures

Train arrived at Banyuwangi station   Banyuwangi Baru station

1.  The train arrives at Ketapang station, renamed from Banyuwangi Baru in 2020.  Walk forward to find the station exit (keluar).

Ketapang ferry terminal   Ketapang ferry ticket office

2.  Walk 150m directly away from Ketapang station down the station approach road, turn right onto the main road and walk another 150m.  The ferry terminal is on your left on the far side of the road (pictured above left), see it on Google Maps.  Or you can take a taxi or cycle rickshaw.  Walk into the passengers entrance (marked by the blue arrow above), along the retail tunnel to the ticket office (pictured above right)...

Ferry to Bali boarding at Ketapang   Seats on the ferry

3.  Ferries sail every 15 minutes around the clock.  Board the next ferry via the car ramp and go upstairs into the passenger area.  There's a kiosk selling water, drinks, biscuits & crisps.

Crossing by ferry from Java to Bali

4,  Bali ahead!  The crossing takes just 45 minutes...

Ferry arrived at Gilimanuk on Bali

5.  Arrival at Gilimanuk on Bali...  The bus terminal is right next to the ferry terminal for buses to Denpasar.  See more photos of this journey.

Watch the video

Back to top


Java to Sumatra by train & ferry

It's easy to travel between Java and Sumatra by train  & ferry, it's incredibly cheap, safe, a real experience, and no prior reservation or planning is necessary. 

You take a train the 151 km from Jakarta to the port of Merak from where ferries sail to Bakauheni on the southern tip of Sumatra every 20 minutes around the clock taking between 90 & 120 minutes.  A local bus or taxi will then take you the 94 km from Bakauheni to the main southern Sumatra town of Bandar Lampung in about 90 minutes.  Once in Bandar Lampung, there's a twice-daily train to Palembang.  Here are the details, feedback would be appreciated.

Jakarta ► Bandar Lampung (Sumatra)

Bandar Lampung (Sumatra) ► Jakarta

The journey in pictures

Jakarta Tanah Abeng station   Suburban train from Tanah Abeng to Rangkasbitung

Jakarta Tanah Abeng station.

 

1.  Tanah Abeng to Rangkasbitung by suburban train.

The local train to Merak

2.  Take an Ekonomi class local train from Rangkasbitung to Merak.  This is the train at Merak station.  photos above & below courtesy of Dennis Nicoll.

Seats on the train to Merak   Merak station

Ekonomi class seats on the train to Merak.

 

End of the line, all change for Sumatra!  Merak Station.

If you take this route and get photos of the ferry, ferry journey or bus to Bandar Lampung, please email me!

Train & bus travel on Sumatra

There are a handful of train services in Sumatra, but no system covering the whole island.  See map of Sumatra.  There's a daily train to Palembang from Bandar Lampung, although just to confuse you the station at Bandar Lampung is known as Tanjungkarang, its former name, even though it's been known as Bandar Lampung since 1983 - and Palembang station is usually referred to as Kertapati.  See the timetable below.  You can travel by bus from Palembang to Padang.  It's 900km, one bus daily, probably overnight, but no information is available on the bus times.

 Bandar Lampung ► Palembang

 Trains run every day...

S12

 Bandar Lampung (Tanjungkarang station, TNK) depart:

08:30

 Palembang (Kertapati station, KPT) arrive:

17:57

 Palembang ► Bandar Lampung

 Trains run every day...

S11

 Palembang (Kertapati station, KPT) depart:

08:30

 Bandar Lampung (Tanjungkarang station, TNK)  arrive:

17:57

Trains S11 S12 = comfortable Ekonomi class seats, air-conditioned.

Palembang Kertapati station

Palembang's Kertapati station.  Photos courtesy of Dennis Nicoll.

Train S7 on Sumatra   Ekonomi seats

The train from Palembang to Bandar Lampung.

 

Comfortable Ekonomi seats.

Back to top


Borneo, Sulawesi & Papua

Ferries between Java and Borneo

Ferries run by www.pelni.co.id link Tanjong Priok (near Jakarta) with Pontianak on Borneo, also Semarang (Java) with Ketapang, Kumai & Sampit (Borneo), and Surabaya (Java) with Sampit, Kumai or Batulicin (Borneo), with each route operating on a handful of dates each month, see www.pelni.co.id.  Here is a Pelni ferry route map, dating from 2006 but still useful today:  upload.wikimedia.org/wikipedia/ commons/a/a6/Pelni_Schifffahrtsnetz_2006.png.

Ferries between Java and Sulawesi, Java & Papua

Ferries run by www.pelni.co.id link various ports on Java with various ports on Sulawesi and Papua, see www.pelni.co.id.  This Pelni ferry route map dates from 2006 but is still useful today:  upload.wikimedia.org/wikipedia/ commons/a/a6/Pelni_Schifffahrtsnetz_2006.png.

Back to top


Singapore to Jakarta by ferry

You can travel between Singapore and Jakarta by PELNI ferry, with a change of ferry at Pulau Batam, an Indonesian island just off Singapore.  The service operates once a week.  This Penli ferry route map may be useful, even if outdated!  It's also possible to by-pass Singapore and travel by direct ferry between Pulau Batam and Johor Bahru in Malaysia, from where trains run to Kuala Lumpur.

Singapore ► Jakarta

Jakarta ► Singapore

Ferry fares & accommodation

How to buy ferry tickets

The Pelni ferry 'm/v Kelud' from Pula Batam to Jakarta...

The ferry m/v Kelud at Jakarta in late 2022.  Photos in this section courtesy of DiscoverByRail.com.

Economy class sleeping area on the Pelni ferry m/v Kelud to Java   2-berth cabin on the Pelni ferry 'm/v Kelud' from Pula Batam to Jakarta...

3rd class bunks on the m/v Kelud

 

1st class 2-bed cabin on the m/v Kelud.

Buffet restaurant   Buffet restaurant

Servers in the buffet restaurant.

 

Food is included in the fare in 1st & 2nd class

Travellers' reports

Penang (Malaysia) to Medan (Sumatra, Indonesia)

Back to top


Europe to Indonesia by Trans-Siberian Railway

Back to top


Recommended hotels

Java has some classic hotels, below I recommend some of the best places to stay in each city.

Jakarta:  The Hermitage

Strangely, all the tourist sights in Jakarta (for example, Old Batavia) are north of Merdeka Square, when all the decent tourist class hotels are to the south, with nothing you'd want to see within walking distance.  But until someone opens a decent place walking distance from Old Batavia, I recommend the wonderful Hermitage in the popular Menteng district just south of Gambir station.  It's a fabulous hotel which only opened in 2016, with great staff, great food, free WiFi, free gym, a cigar lounge and an excellent rooftop pool & bar.  The front building has been converted from a lovely Dutch colonial PTT (Post, Telephone & Telegraph) office built in 1943 with a new 9-floor building behind it containing the rooms and rooftop pool.  The art deco design has been carried through the hotel with acres of white marble, this place is utter luxury but as this it's Indonesia a stay here is more affordable that you'd think.

The Hermitage Hotel, Jakarta   Suite at the Hermitage

The Hermitage, converted from a Dutch colonial PTT office built in 1943...

 

Double room at the Hermitage, in art deco style with acres of white marble.

Cigar lounge, Hermitage Hotel Jakarta   Rooftop terrace, pool & bar, Hermitage Hotel Jakarta

The cigar lounge...

 

Rooftop terrace, above the rooftop pool & bar...

Yogyakarta:  The Phoenix Hotel

The venerable Phoenix Hotel is the place to stay in Yogyakarta.  A landmark since 1918, the main building was originally the home of a wealthy merchant which became the residence of the Chinese consul after World War 2 before being converted into a hotel.  The hotel has bags of quirky character, friendly staff and is excellently located, 15 minutes walk or 5 minutes by taxi from Yogyakarta station.  There's free WiFi and an excellent swimming pool - it's worth paying a little extra for the pool-view rooms which have balconies overlooking the pool.

Phoenix Hotel Yogyakarta   Deluxe pool view room at the Phoenix Hotel

The Phoenix Hotel, Yogyakarta...

 

Deluxe pool view room, with balcony.

Phoenix Hotel pool   Phoenix Hotel restaurant

The pool...

 

Restaurant:  Part open, part covered, part inside.

Surabaya The Majapahit Hotel

In Surabaya, the place to stay is the historic Majapahit Hotel.  Don't argue, trust me on this.  I'll give you three reasons.

First, it's easily the best place in town, a true oasis amongst the tower blocks with elegant suites opening onto colonnades surrounding gardens with fountains.  They simply don't make hotels like this any more.  Great staff, two great restaurants, free WiFi, spa, and a good swimming pool.

Second, this old-world charm is no accident, this is no ordinary hotel.  It's a genuine Sarkies Brothers hotel like Raffles in Singapore, the E&O in Penang and the Strand in Rangoon, opened in 1911 as the Hotel Oranje by Lucas Martin Sarkies, son of Martin Sarkies, co-founder of Raffles.  But Raffles costs upwards of £400 a night, a similar suite at the Majapahit can be yours for £80.  Like I said, don't argue, even if you're on a budget, splurge here.

And there's a third reason.  There is major Indonesian history here - the Flag Incident of September 1945 is a key event in the history of Indonesian independence and it occurred right here at the Hotel Majapahit (at that period called the Hotel Yamato) in Room 33 and on the left-hand lobby flag tower, see en.wikipedia.org/wiki/Battle_of_Surabaya.  I couldn't resist staying in a bit of history - on our way back through Surabaya I contacted the hotel and upgraded our room to the Merdeka Suite, the famous Room 33.  Though I still don't know if Dutchman W.V.Ch.Ploegman met his end inside or outside that room.  The Sarkies Suite next door (room 32) is the room that was reserved for the Sarkies family when they stayed.

Hotel Majapahit, the former Hotel Oranje

Hotel Majapahit, formerly the Oranje Hotel.  These art deco buildings were added at the front in 1936, their inauguration attended by Charlie Chaplin and writer Joseph Conrad amongst others...

Hotel majapahit, an oasis in the city   Typical suite at the Hotel Majapahit

An oasis in the city.  They don't build hotels like this any more...

 

Just a regular suite...

The original 1910 building today   The Hotel Oranje as was

The original building of 1910 is still there behind the 'new' art deco buildings of 1936.  The original towers were demolished when the 1936 buildings were added.

The Flag Incident tower, 2017   The Flag Incident tower, 1945   Majapahit Hotel, formerly Yamato Hotel, room 33

The Flag Incident, September 1945...

 

Inside room 33, where it all kicked off in 1945...

Hotels in Ketapang, Gilimanuk

If you want to stop overnight on a journey between Java and Bali, you'll find more hotels in Ketapang on the Javan side of the Strait of Bali than a Gilimanuk on the Bali side, though the choice still isn't great.  For somewhere half decent with free WiFi, a good swimming pool and (albeit somewhat characterless) rooms set in gardens, try the Ketapang Indah Hotel about 2km south of Ketapang ferry terminal, just off the main road.

Hotels on Bali:  Bloo Lagoon Eco Village

There are many resort towns on Bali, some better for surfing, some for diving.  Padangbai is on the southeast coast of Bali, family-friendly, good for diving, day trips to Ubud, fast ferries to the Gili islands and conventional ferries to Lombok.  If that suits you, the place to stay is the Bloo Lagoon Eco Village on the headland just above the town with views over the bay.  The village consist of self-contained bungalows with small kitchens, there's free WiFi, a good pool with water slide, a spa, and an excellent restaurant serving truly wonderful home-cooked food.  Staff are great.  The Bloo Lagoon Village was opened in 2009 by English architect Tony Gwilliam who has written a book about it, Far from boring...

Bloo Lagoon Village, pool   Bloo Lagoon Village 2-bedroom bungalow

The pool...

 

Bloo Lagoon Village 2-bedroom bungalow...

Find hotels at Booking.comMy favourite hotel search: www.booking.com

Booking.com is my favourite hotel booking site and I generally use it to book all my hotels in one place.  I've come to trust booking.com's review scores, you won't be disappointed with any hotel that scores 8.0 or more.  Crucially, booking.com usually lets you book with free cancellation, which means you can confirm accommodation risk-free before train booking opens and/or you can hold accommodation while you finalise your itinerary and alter your plans as they evolve - a feature I use all the time when planning a trip.  I never book hotels non-refundably!

Tip:  It's sometimes worth comparing prices across multiple hotel booking sites:  HotelsCombined.com compares hotel prices on Booking.com, Hotels.com, Expedia, Agoda & many others.  If there's not much in it, I prefer to keep all my bookings together at www.booking.com, but it's sometimes worth checking!

Back to top


Flights to Jakarta

Overland travel by train & bus around Indonesia is an essential part of the experience, so once there, don't cheat and fly, stay on the ground!  But a long-haul flight might be unavoidable to reach it in the first place.  For flights to Jakarta, compare airlines at Skyscanner.

skyscanner generic 728x90

Back to top


Travel insurance & other tips

 

Staysure travel insurance

 

Columbus Direct logo

Always take out travel insurance

Never travel overseas without travel insurance from a reliable insurer, with at least £1m or preferably £5m medical cover.  It should also cover cancellation and loss of cash and belongings, up to a sensible limit.  An annual multi-trip policy is usually cheaper than several single-trip policies even for just 2 or 3 trips a year, I have an annual policy with Staysure.co.uk myself.  Here are some suggested insurers.  Seat61 gets a small commission if you buy through these links.

UK flag  www.staysure.co.uk offers enhanced Covid-19 protection & gets 4.7 out of 5 on Trustpilot.

UK flag  www.columbusdirect.com is also a well-know brand.

US flag  If you live in the USA try Travel Guard USA.

 

Maya.net logo

Get an eSIM with mobile data package

Don't rely on WiFi, download an eSIM with a mobile data package for the country you're visiting and stay connected.  Most newer mobile phones can download a virtual SIM card so you don't need to buy a physical SIM, including iPhone 11 & later, see device compatibility listMaya.net is a reliable eSIM data retailer with a 4.5 out of 5 Trustpilot rating and a range of packages including unlimited data.

 

Curve card

Curve card

Get a Curve card for foreign travel

Most banks give you a poor exchange rate, then add a foreign transaction fee on top.  A Curve MasterCard means no foreign transaction fees and gives you the mid-market exchange rate, at least up to a certain limit, £500 per month at time of writing.  The money you spend on your Curve card goes straight onto one of your existing debit or credit cards.

How it works:  1. Download the Curve app for iPhone or Android.  2. Enter your details & they'll send you a Curve MasterCard - they send to the UK and most European addresses.  3. Link your existing credit & debit cards to the app, you can link up to two cards with the free version of Curve, I link my normal debit card and my normal credit card.  4. Now use the Curve MasterCard to buy things online or in person or take cash from ATMs, exactly like a normal MasterCard. Curve does the currency conversion and puts the balance in your own currency onto whichever debit or credit card is currently selected in the Curve app.  You can even change your mind about which card it goes onto, within 14 days of the transaction.

I have a Curve Blue card myself, it means I can buy a coffee on a foreign station on a card without being stung by fees and lousy exchange rates, just by tapping the Curve card on their card reader.  The money goes through Curve to my normal debit card and is taken directly from my account (in fact I have the Curve card set up as payment card on Apple Pay on my iPhone, so can double-click my phone, let it do Face ID then tap the reader with the phone - even easier than digging a card out).  I get a little commission if you sign up to Curve, but I recommend it here because I think it's great.  See details, download the app and get a Curve card, they'll give you £5 cashback through that link.

 

Express VPN

Get a VPN for safe browsing.  Why you need a VPN

When you're travelling you often use free WiFi in public places which may not be secure.  A VPN encrypts your connection so it's always secure, even on unsecured WiFi.  It also means you can select the geographic location of the IP address you browse with, to get around geoblocking which a surprising number of websites apply.  See VPNs & why you need one explainedExpressVPN is a best buy with a 4.7 out of 5 Trustpilot ranking which I use myself - I've signed up as an ExpressVPN affiliate, and if you go with expressvpn.com using the links on this page, you should see a special deal, 3 months free with an annual subscription.  I get a small commission to help support this site.

 

Anker Powerrbank

Carry an Anker powerbank

Tickets, reservations, vaccination records and Interrail or Eurail passes are often held digitally on your mobile phone, so it's vital to keep it charged.  I always carry an Anker powerbank which can recharge my phone several times over if I can't get to a power outlet.  Buy from Amazon.co.uk or from Buy from Amazon.com.

 


Back to top

Back to home page