Singapore Airlines SQ965: Jakarta Soekarno-Hatta to Singapore by Airbus A330-300

Singapore Airlines is a major player on the lucrative Singapore – Jakarta route with up to 9 pairs of return flights daily. As I didn’t want to fly on the typical Boeing 777s on this regional route, I chose to fly back to Singapore on SQ965 which operates with an Airbus A330-300. I would love to fly on the Airbus A350-900 again though, but there is only one return flight daily with it and it departs Jakarta in the morning, so, nah.

International flights from Terminal 2 depart from Terminal 2D and 2E, with Singapore Airlines operating out of Terminal 2D. Show your flight itinerary to the security personnel before entering the area for security screening.

(The suffixes D and E are actually just the concourse designation which relates on the airside.)

There is just a single row of check-in counters for Terminal 2D and 2E. Look out for the Singapore Airlines logo around the Terminal 2D area.

My boarding pass for the SQ965 flight back to Singapore.

Immigration is at the end of the very long check-in row, at Terminal 2E only.

Once done with immigration, you’ll find yourself very near the E concourse. Walk back to the D concourse past the (overpriced) duty free shops.

A bit of a chore, but it could be my last time doing this as all international flights are expected to move over to Terminal 3 by May 2018, with Garuda Indonesia, Saudi Arabian Airlines, Vietnam Airlines, Korean Air, XiamenAir, China Airlines, China Southern Airlines and AirAsia already operating there, so it’s just a matter of time.

Turn right to the gates when you’re nearing the end of the rows of shops.

There is a single travellator down the middle of the concourse. Take it if you must – it only speeds up your journey by a little because…

… the travellator actually overshoots the entrance of the security screening before the gate and you have to backtrack to it.

Once screened for your cabin baggage, especially on the liquids, aerosols and gels part of things, head on to the gate.

My flight departs from Gate D3.

Present your passport and boarding pass for verification. Similar to Singapore’s side, the staff did not take a portion of the boarding pass but merely scanned the code and returned it back to me, with the whole piece in tact.

My SQ965 flight back to Singapore, ready at the gate.

Waiting for boarding calls to be made.

Because I was seated near the back of the plane, I was part of the first group of Economy Class passengers to board the plane.

Earphones are individually packed for your use on board the flight, and are placed together with the newspapers just before the entrance to the plane. They are yours to take home for free.

The free newspapers available to take if you’d rather read them than to use the KrisWorld entertainment system.

Boarding the Airbus A330-300.

The first Economy Class cabin (in the middle of the aircraft) is decked out in blue and brown colours. About half of the seats towards the front part of this cabin are now designated as Forward Zone Seats.  If you are on a Flexi fare type, these seats are free to select in advance. For other fare types, the fee for seats in this area start from US$8.

The rear cabin, where I belong thanks to my sale fare, has warmer shades of orange and beige. If you are on a Flexi or Standard fare type, these Standard Seats are free to select in advance. For the Lite fare type, the fee for seats in this area start from US$5.

The legroom available on the Singapore Airlines Airbus A330-300.

The safety video plays as the aircraft gets pushed back from the gate.

Taxiing to the runway.

Bye Jakarta (mainly PT KAI though).

My dinner for the evening: Beef Rendang with what I think is Sayur Lodeh (vegetable stew) and plain rice. Oh, and a dessert of Chocolate Cake.

Compared with Garuda Indonesia’s “Nasi Daging, the beef on Singapore Airlines was soft and chewable with a nice Rendang sauce, and not as dry and tough as GA’s. And chocolate cake > fruits of course.

The view of the Singapore skyline on the approach into Changi Airport from the south.

The (almost) empty shot of the rear Economy Class cabin.

The (almost) empty shot of the front Economy Class cabin.

Singapore Airlines operates from Changi Airport Terminals 2 and 3, depending on the destination. For arriving flights, the arrival terminal will only be confirmed about 1 to 2 hours before the actual arrival. Despite having departed from Terminal 2 for my Jakarta-bound flight, I arrived back in Singapore at Terminal 3.

The baggage reclaim belt assigned for my flight was Belt 45, but any baggage were nowhere to be seen, which is strange considering Changi’s efficiencies. Strangely though, there wasn’t a crowd around the belt – guess most passengers were transiting to another destination.

Luckily there were some sofa sets around Balt 45 so it was a comfortable wait, though it’s too long for my liking and my expectations of the airport.

Overall, Singapore Airlines is A Great Way to Fly on this short Jakarta – Singapore flight, especially with the ultra-low S$118 all-in fare I paid during the DBS SQ promotion last year. As compared with Garuda Indonesia, both CGKSIN for CGKSIN and A333 for A333, the meals on Singapore Airlines does taste better, and the overall service on board does feel more like home too. Oh, and not forgetting the part about bus-ing to the plane on GA which I detest. Considering how long I’ve not flown with SQ and am kind of used to budget airlines for short trips, it’s a premium that I’m glad to experience once in a while. So thank you DBS for this great promo!

(And no, this isn’t sponsored. I paid for the ticket with my own money.)


Soekarno-Hatta Airport Railink Services (ARS): Sudirman Baru (BNI City) to Jakarta Soekarno-Hatta International Airport by Train

After 3 fulfilling days of non-stop train rides, it’s time for the fun to end as quickly as it started. I decided to get the Soekarno-Hatta Airport Railink Services (ARS) from Sudirman Baru back to Soekarno-Hatta International Airport (SHIA) despite the previous negative experience because, hey, it’s a train.

Sudirman station on the KRL Loop Line is located just before Sudirman Baru (BNI City) station, with the ends of the platforms almost touching each other. The walk between the two stations takes less than 5 minutes.

Once tapped out of the faregates on the Jatinegara-bound platform (inner track), keep left to access the linkway to Sudirman Baru (BNI City) station.

Keep going straight.

Sudirman Baru (BNI City) station is just up ahead.

Get up the very temporary-looking set of metal stairs to the incomplete-looking walkway.

Continue straight to the station hall.

Beware of passing trains beside you.

Once at the end of the walkway, take the elevator up to the main ticketing hall.

The ticketing level on first look, with nothing opened yet.

Head on straight to buy tickets from the ticketing kiosks.

Touch “Regular Ticket” to start the ticket purchase process.

With the previous hard lesson learnt for purchasing tickets with a foreign credit and debit card, we went straight to purchasing the ticket with a prepaid card.

SHIA Railink ticket sales close 10 minutes before departure. Ensure that you complete your purchase 10 minutes before departure or you will not be able to get on the train.

Tap and hold the prepaid card on the reader for a couple of seconds until the payment has been accepted.

Once done, if you are flying with Garuda Indonesia or Citilink, you can check-in for your flight at the blue check-in kiosks on the left. Other airlines will progressively be able to use the check-in kiosks as evident by the number of black-and-white airline logos which can’t be touched on the screen.

Once done, head one level down to the boarding area.

The platform will only open 10 minutes before departure. Once ready, announcements will be made around the station and staff will be on hand to show you the way.

Scan the ticket code on the reader to access the platform.

Head one level down to the platform.

My SHIA Railink ticket for the journey from Sudirman Baru (BNI City) to Soekarno-Hatta International Airport.

As Sudirman Baru (BNI City) is just a passing-through station for the SHIA Railink, the train will not be ready at the platform yet, but only about 5 minutes before the departure time as stated on the ticket.

This is due to frequent commuter trains passing through the station. As there are no additional tracks built for Sudirman Baru (BNI City) station, there are no overtaking opportunities for KRL trains to bypass the waiting SHIA Railink train. Furthermore, this is a busy stretch with 3 back-to-back stations of Sudirman, Sudirman Baru and Karet, almost forming one very long stretch of platform.

The incoming SHIA Railink train from Manggarai, bound for Soekarno-Hatta International Airport.

The interior of the SHIA Railink.

Departing Sudirman Baru (BNI City).

Passing by local houses on the way to Duri.

Approaching Duri.

Looking back at the Tangerang Line which the SHIA Railink will take to Batu Ceper.

The train stops at Duri for about 5 minutes for the driver to walk to the front end of the train to take it onwards to Soekarno-Hatta International Airport. No boarding or alighting is possible yet as the new separate platforms for the SHIA Railink are not ready yet.

Splitting off from the main Loop Line to the Tangerang Line.

The scenery on the way to Batu Ceper.

Splitting off the main Tangerang Line to the dedicated SHIA Railink Batu Ceper platforms.

Arriving at Batu Ceper (Railink).

The train arrived at Batu Ceper about 5 minutes before schedule, so there was a bit of waiting before the correct departure time.

The SHIA Railink train waiting at Batu Ceper.

Departing Batu Ceper, parallel to the main Tangerang Line.

Splitting off from the main Tangerang Line onto the new 12km branch line to Soekarno-Hatta International Airport.

The scenery along the way to the airport.

Looping around the airport perimeter.

Approaching Soekarno-Hatta International Airport.

The view of Platform 2. Looks complete, wonder why it’s never used.

Ah, so this is the reason why Platform 2 can’t be used yet.

Arrived at Soekarno-Hatta International Airport.

Bye SHIA Railink, you weren’t that much of an express ride from the city but I guess the journey is slightly more bearable because you’re a train.

My verdict on this journey? Pretty much the same as the previous onward journey – meh.

Scan the ticket again at the faregates to exit the platform.

Head straight on to exit the station.

Follow the signs to get onto the Skytrain to access the terminal buildings. In my case, I’ll be heading to Terminal 2 for my Singapore Airlines flight back to Singapore.

Head upstairs to the  Skytrain platform.

The Skytrain ride from Airport Railway Station to Terminal 2 takes just 2 minutes, however the waiting time was 6.5 minutes because I’d just missed one train. So including the walking time from the SHIA Railink train to the Airport Railway Station Skytrain station, and from Terminal 2 Skytrain station to the Terminal 2 building itself, I’d say factor in 15 minutes in total.

As the direct exit to the Terminal 2 building proper isn’t ready yet, you have to make a loop around the station via the car park.

Follow the temporary-looking shelter to the terminal building.

Once across to the terminal building, get the lifts up to the Departure level.

And as with most, if not all Indonesian airports, there is a security check before entering the check-in area and thereafter immigration. So I headed straight in first to check-in for my Singapore Airlines flight back to Singapore, just in case there was going to be a queue for immigration.

KA Walahar Ekspres: Jakarta Tanjung Priok and Jakarta Kemayoran to Cikampek and Purwakarta by Train

The Walahar Ekspres is an Ekonomi AC (Lokal) train serving the Tanjung Priok – Cikampek – Purwakarta route. 3 pairs of trains serve the route daily, along with 2 pairs of Jatiluhur Ekspres trains serving the slightly shorter Tanjung Priok – Cikampek route.

These 5 pairs of trains bridge the gap between the city of Jakarta and the outer towns west of Jakarta, in particular smaller stations between Lemahabang and Purwakarta which are currently not served by the frequent KRL Bekasi Line trains. They are also the only locomotive-hauled trains to serve Jakarta Tanjung Priok station and the only passenger trains to take the shortcut line on the wye junction between Ancol and Rajawali to access Tanjung Priok.

Purchase your ticket at the dedicated Go Show counters for local trains at Tanjung Priok. Flat fares of Rp.6,000 (~S$0.58) apply for the Walahar Ekspres regardless of distance travelled. For the Jatiluhur Ekspres, flat fares of Rp.5,000 (~S$0.49) apply.

As I was stopped from taking photos of the station by the strict security personnel immediately after taking the above photo of the ticket counter, there are no photos of the boarding process at Tanjung Priok station.

Preparing to depart Tanjung Priok station.

The route maps of the Walahar Ekspres and the Jatiluhur Ekspres on board the train.

The Walahar Ekspres operates with Ekonomi AC (Lokal) coaches with a capacity of 106 passengers per coach.

My Walahar Ekspres ticket for the 17-minute journey to Kemayoran. Really wished that I could travel further though, but I had a flight to catch back to Singapore later in the afternoon.

Departing Tanjung Priok station on the quadruple-track sector.

A different side of Jakarta when seen from the train.

Approaching Ancol station.

The Walahar Ekspres takes the line that leads to Rajawali, bypassing the longer and more crowded Jakarta Kota – Kampung Bandan junction.

From this line, you can see the triangular platform of Ancol in a better curved angle.

The train narrowly bypasses houses and structures by the side of the tracks along this shortcut.

Merging back onto the main line at Rajawali station.

Approaching Kemayoran station.

17 minutes was all I had, but at least now I can say that I’ve taken a train on the line between Ancol and Rajawali.

Despite this train operating as the Walahar Ekspres, the train bears the name of the Jatiluhur Ekspres on the side of the train cars. Perhaps someone forgot to switch them out when the train arrived Tanjung Priok on the previous trip.

At Kemayoran, I got on the next KRL Loop Line train to get back to the hotel before heading back to Singapore.

PT KAI Train Ticket Booking Methods
For Eksekutif, Bisnis and Ekonomi AC only. All other tickets are only sold at stations where the train serves.

  • PT KAI counters
  • Online from PT KAI‘s ticketing website but foreign credit cards do not work
  • Online from – foreign credit cards accepted

Tickets are open for sale 30 to 90 days before departure, depending on train service.

Hotel Booking

Attractions Booking

  • Klook (Get FREE $4.30*/RM12.90* voucher for your first purchase when you sign up here! *subject to exchange rate)

KA Argo Parahyangan 25: Bandung to Jakarta Gambir by Train

The Argo Parahyangan is a very popular cluster of train services running on the Jakarta Gambir – Bandung route with 8 pairs of regular services daily. Most Argo Parahyangan services operate with both Eksekutif Class and Ekonomi New Image coaches on each train, though some operate with Eksekutif Class coaches only, or with the new Premium Class coaches for the additional Argo Parahyangan Premium services.

The afternoon train, Argo Parahyangan 25, departs Bandung at 2.45pm and gets into Jakarta Gambir station at 6.03pm, just after the sunset.

The Check-In Counter (CIC) for long-distance trains in the old Bandung station is located just before the entrance to the platform at Door 2.

I got my ticket through as usual, since PT KAI’s website does not accept foreign credit cards. If you have your printout, scan the code located on the top right hand corner of the printout, or key the 6-character PNR code on the on-screen keyboard with the mouse provided. (Unfortunately, there is no touch-screen at Bandung.)

Click on “Print” to print your boarding pass.

My boarding pass for the Argo Parahyangan 25 journey back to Jakarta Gambir.

As Seat 5D is only available on the highest fare class, I paid the full fare of Rp.125,000 for my ticket.

At Door 2 before entering the platform area to board the train, provide your identification documents (for the case of foreigners, your passport) to the staff who will verify your identity before letting you through.

The staff will let you know of which track the train is departing from, but if that fails or you misheard it, just look out for the signboard placed in front of the train when crossing the tracks.

Goodbye Bandung.

The exterior of the Eksekutif Class coaches, currently decked out with Jakarta Palembang 2018 advertisements promoting the 2018 Asian Games which will be held in Jakarta and Palembang.

The interior of the Eksekutif Class coaches on board the Argo Parahyangan 25.

My seat, 5D, with the full window view on the right side of the train. I had wanted 7D which was in the exact middle of the coach but it was sold out across all 4 coaches.

The mixed-review single seat at the end of the saloon by the borders.

On board the old Eksekutif Class coaches, only squat toilets are available. Two toilets are available per coach, one on each end.

The familiar start of the KATV programming as the train departs.

Accompanying the automated welcome announcements is the safety video for a smooth train journey.

Unfortunately, the windows on the old Eksekutif Class coaches are all tinted, so it didn’t make for very nice pictures.

Passing through the Sasaksaat Tunnel.

Exiting from the Sasaksaat Tunnel.

The route map of the Argo Parahyangan.

Time for lunch/dinner/lunner(?) at the dining car or Kereta Makan.

Unfortunately, this MP3 or Kelas 3 Kereta Makan dan Pembangkit, or Class 3 Dining and Power Car, is even smaller than the one on the Argo Parahyangan Premium, and only 2 tables are available to sit at.

Click on the image to enlarge.

Click on the image to enlarge.

The Reska menu of the food available on board.

The Zuppa-Zuppa (Rp.20,000 (~S$1.85)) is a cream soup with a puff pastry on top.

Unfortunately the puff seems undercooked and the soup had pretty much the same colour and consistency of Lao Ban (老伴) Soya Beancurd. Avoid ordering this.

Here’s the Nasi Goreng Parahyangan (Rp.33,000 (~S$3.06)) again, with a shot of the packaged foodstuff as it is. Tastes reasonably fine but not anything memorable.

And surprisingly, the Bistik (Beef Steak) (Rp.45,000 (~S$4.17)) was available on the Argo Parahyangan 25, something which I’ve never had before from Reska.

The Bistik looks more impressive when the box is first opened as compared to the rice dishes, although the black pepper sauce packet still sticks out like a sore thumb. The steak part of things turned out to be a hamburger patty (minced meat) instead, but at least it’s a new Reska taste for me. In my opinion, this is potentially the best dish available on board.

Merging back to the line from Cirebon to Jakarta at Cikampek.

Making a short stop at Bekasi. If you are changing to the KRL Bekasi Line for stations between Klender and Cikarang, you should alight here.

After some passengers have alighted at Bekasi, it’s time for me to explore the Ekonomi New Image coach. Similar to the Premium Class, the Ekonomi New Image coach seats 80 passengers.

The seat pitch on the Ekonomi New Image coach is exactly the same as Premium Class coaches, minus the reclining function on each seat.

And since the seats don’t recline, cup holders are available in front of each seat on the Ekonomi New Image coach. You can’t have that on Premium Class unless you want Teh Tarik on the floor when the person in front of you suddenly reclines.

The legroom available on board the Ekonomi New Image coach.

The view from “my seat” on the Ekonomi New Image coach.

Just like the Premium Class coach, two types of toilets are available: the Western sit-down type and the Asian squat type. One of each is available on each end of the coach.

Comparing the Ekonomi New Image coach to the Premium Class, I do personally prefer the Ekonomi New Image due to the fact that the seat does not recline.

Okay, sounds weird but hear me out.

The Ekonomi New Image seat has a similar seat pitch and width as compared with an Economy Class seat on a plane. If you have sat on such a plane seat before (which is almost everyone nowadays because Now Everyone Can Fly), you’d know how it feels like when the person in front of you reclines, especially when on budget airlines. Sure, I can recline my seat into the person’s space behind me as well , but I would be a bit self-conscious when I do that. Guess that’s the little bit of Japanese habit in me in which I would check behind my seat before reclining. So having a seat that does not recline saves me the guilt of reclining into someone else’s space, the convenience of not having anyone being able to recline their seat into my knees and face, and a Rp.10,000 fare saving should I decide to ride on Ekonomi Class instead of Premium Class. The seats on the old 106-seater Ekonomi AC coaches definitely do not recline and I’m used to those classic coaches, so this Ekonomi New Image seat is already an upgrade anyway.

The Argo Parahyangan 25 arrived right on time at Jakarta Gambir station at 6.03pm. Here are shots of the almost-empty coach since there’s no opportunities at Bandung or on the way to Jakarta with the full-booked train.

The rake will form the Argo Parahyangan 28 which will depart back to Bandung at 6.45pm.

If connecting to the TransJakarta busway, head for the North Exit at Gambir station. No KRL services call at Gambir – you have to take the busway to Juanda station to continue onwards via KRL.

Follow the “Exit” signs so that you don’t clash with those entering the departure area.

Follow the car park exit out to Gambir 1 Halt of the TransJakarta busway.

Gambir 1 Halt of the TransJakarta busway is up ahead.

Enter the fare gates with your prepaid card, or purchase one from the ticket counter. Cash is not accepted on TransJakarta services.

Board Corridor 2 or 2A to get to Juanda station to change to the KRL or to Harmoni Central Busway for other key TransJakarta services.

Overall, the new mix of Eksekutif Class and Ekonomi New Image coaches on typical Argo Parahyangan train sets are, in my opinion, a perfect combination for a short-haul journey.

While not as comfortable as the brand new K10 bogie Eksekutif Class coaches on the Gajayana and Bima, the old Eksekutif Class has sufficient space all around and a wide footrest (though the tinted windows are not to my liking).

The Ekonomi New Image coaches are, though a downgrade in seat pitch from the previous Bisnis Class on service, improved with modern facilities such as the same KATV programming as Eksekutif Class and a western sit-down type toilet, and also provides for a fare “discount” because of the different class of travel, making journeys on the Argo Parahyangan slightly more affordable now for those who are price-sensitive.

PT KAI Train Ticket Booking Methods
For Eksekutif, Bisnis and Ekonomi AC only. All other tickets are only sold at stations where the train serves.

  • PT KAI counters
  • Online from PT KAI‘s ticketing website but foreign credit cards do not work
  • Online from – foreign credit cards accepted

Tickets are open for sale 30 to 90 days before departure, depending on train service.

Hotel Booking

Attractions Booking

  • Klook (Get FREE $4.30*/RM12.90* voucher for your first purchase when you sign up here! *subject to exchange rate)

KA Argo Parahyangan Premium 10554: Jakarta Gambir to Bandung by Train

The Argo Parahyangan is a very popular cluster of train services running on the Jakarta Gambir – Bandung route with 8 pairs of regular services daily. To meet the growing capacity demands, the Argo Parahyangan Premium now operates 2 additional pairs of services on this route during peak periods such as weekends and holidays, with an entirely new train set formed of the new Premium Class coaches.

KA Argo Parahyangan Premium 10554 is a perfect daytime service for me to ride on these new coaches, leaving from Jakarta Gambir station at 7.50am and getting into Bandung at 11.07am.

NOTE: The Argo Parahyangan Premium 10554 operates on the same time slot as the Argo Parahyangan Premium 7058 (Premium Class) and the Argo Parahyangan Tambahan 38F (Eksekutif/Eksekutif+Bisnis/Eksekutif+Ekonomi/Bisnis). Train numbers and/or train sets are interchangeable and only one service will operate on one time slot at any one time. Do check the actual train running on the day of your departure.

From Gambir 2 TransJakarta busway halt, walk into the station premises.

Walk under the shelter to the South Entrance.

Go to the Check-In Counters (CIC), or rather, kiosks, to check-in for your train journey.

I got my ticket through as usual, since PT KAI’s website does not accept foreign credit cards. If you have your printout, scan the code located on the top right hand corner of the printout. Unfortunately, no longer sends an SMS with the booking code a couple of hours before departure.

Fares for the Argo Parahyangan Premium between Jakarta and Bandung go for Rp.90,000 (~S$8.32) with only one fare class available (non-dynamic fare).

Click on “Print” to, well, print your boarding pass.

Within 2 seconds, your boarding pass will be printed.

My boarding pass for the Argo Parahyangan Premium 10554.

Once done, follow the signs to the departure area for ticket checking.

Provide your identification documents (for the case of foreigners, your passport) to the staff who will verify your identity before letting you through.

Follow the signs to Platform 1 & 2 for the Argo Parahyangan.

Take the escalator up to the platform.

Once at the end of the escalator, you will find this sign which will inform you of which platform to wait for your train at.

The incoming Argo Parahyangan Premium 10553 arriving at Gambir from Bandung. This train will turnaround to form my Argo Parahyangan Premium 10554.

The Argo Parahyangan Premium 10553 pulling into Platform 1.

The exterior of the new Premium Class coaches.

The locomotive immediately runs around to form the Argo Parahyangan Premium 10554.

The coupling process of the locomotive to the coaches.

The Argo Parahyangan Premium 10554 is now formed.

The Argo Parahyangan Premium 10554, ready to depart for Bandung.

Boarding Coach 8, my chosen coach for this journey.

The view of Seat 8D, my chosen spot for the next 3 hours or so. Not that I’m superstitious or anything, but this seat has a perfect window alignment, a forward facing seat on the left of the train (based on gut feel) for the best views to Bandung, plus it makes for good shots at curves from the last coach of the train.

Yes, I am very particular about where I sit on trains. Don’t believe that I planned my seat way in advance? Scroll up to view my boarding pass again.

While both Ekonomi New Image and Premium Class coaches have the same capacity of 80 seats on board, the new Premium Class offers reclining seats.

NOTE: This does not apply for the 64-seat wheelchair-friendly coach (not available on Argo Parahyangan Premium) whereby there are special bays of seats which change directions similar to how it’s done on Bisnis Class, and therefore do not recline.

The overall interior of the Premium Class coach.

Reading lights are available for each seat on Premium Class.

While both the Ekonomi New Image and Premium Class coaches adopt a fixed direction airline-style seat layout with each direction facing either forwards or backwards on half of the coach instead of facing bays of seats like Ekonomi AC or Ekonomi AC Plus coaches, if you still prefer to have a bay of 4 seats to your group, you can choose the facing seats on Rows 11 and 12.

The legroom available on the Premium Class coach, just like an economy class seat on a plane.

Time for a seat comfort test. This picture shows the amount of space for your legs and face when seated with no recline.

This is how it looks like with the seat fully reclined.

With the seat reclined, it encroaches into your legroom, with your knee touching the seat in front of you. Also, you may feel claustrophobic on a fully-packed train when the seat in front of you is reclined as you’ll have less breathing space in front of your face.

So, it will be your turn to recline so as to give yourself more space, thus launching a domino effect on all other seats.

Two types of toilets are available: the Western sit-down type and the Asian squat type. One of each is available on each end of the coach.

Upon departure from Gambir station, the Reska staff commence their drinks sales.

Power sockets are available by the window, with one socket meant for each seat.

While the new coaches are branded as Premium Class, they are still logically classified as K3 which stands for Class 3 or Economy Class.

The route map of the Argo Parahyangan.

Passing by the future depot at Cipinang.

The conductor then comes around to check for the validity of tickets.

However, as seen in my previous post on the Gajayana, the conductor no longer “checks for tickets” but merely verifies your name against your seat via the app on his phone, since you have completed the check-in process before boarding. This time though, the conductor did greet us and verified our identity by calling out our names as appeared in the app as he passed our seats.

And after our identities were verified, it’s time for breakfast/lunch/brunch(?) at the dining car or Kereta Makan. Sure, food can be served to our seats but checking out the Premium Class Kereta Makan was important too.

Notice the different types of payment modes available at the Kereta Makan.

The makan part of things only make up half the coach as this is designated as an MP3 or Kelas 3 Kereta Makan dan Pembangkit, or Class 3 Dining and Power Car.

Notice how clean the generator area is without a single drop of oil on the floor.

The Reska menu of the food available on board. Click on the images to enlarge.

Passing through Cikampek station where there are old BB locomotives on display.

Since I was disappointed with Reska on my previous trip already, I didn’t have much high hopes for meals this round too. So here’s what we ordered:

I had a Bakso PopSo Cup (Rp.25,000 (~S$2.32)), which is an enhanced version of typical instant noodles with 2 pieces of bakso halus and 1 bakso tahu included in the cup from the factory.

Here’s the Nasi Goreng Bakso (Rp.33,000 (~S$3.06)) again, without effort to make it look nice for the camera. Tastes reasonably fine but not anything memorable.

The reasonably presented Nasi Rames (Rp.33,000 (~S$3.06)), which looks okay since it’s just plain rice with side dishes.

At Purwakarta station, disused KRL trains can be seen stacked on top of each other awaiting for scrap. Among the disused trains that can be found here are KRL Rheostatik, BN-Holec, Hitachi, Toyo Rapid 1000 and Tokyo Metro 5000.

Some old coaches and former KRD (DMU) are also here with their paint stripped.

The scenic route starts here, and lasts all the way to Bandung as the train climbs up the hills and crosses over valleys.

Lots of fields on the way with curves for this kind of shots. Now you know why Coach 8 was carefully chosen.

The old single-track alignment versus the new line with smoother curves.

Passing by the Cisomang Bridge, with the old bridge still in tact.

The view down to the valley from Cisomang Bridge.

Entering the Sasaksaat Tunnel.

And because the rest are nice views without much to caption, I’ll just leave the following pictures in because pictures are worth a thousand words. So here’s a 5000 word essay:

Approaching Bandung station.

The Premium Class coaches, side by side with the Ekonomi New Image coaches attached on the next Argo Parahyangan 23 to Gambir.

The destination sign on the Argo Parahyangan Premium 10554 still uses the existing ones for the Argo Parahyangan.

The Argo Parahyangan Premium 10554 arrived right on time in Bandung at 11.07am.

After all passengers has disembarked from the Argo Parahyangan Premium 10554, the crew immediately starts cleaning both the interior and exterior of the train to get ready for the next departure.

The path towards the new side of Bandung station. However, since we were going to get the next Bandung Raya train, we opted to exit through the old station as it was easier to buy tickets and return back to the platform for the local train.

Overall, the Argo Parahyangan Premium 10554 offers a value-for-money train service from Jakarta to Bandung at a reasonable fare of Rp.90,000 (~S$8.32) with new seats that are comfortable enough for the short 3-hour journey. The Jakarta – Bandung route is also in my opinion the most scenic railway route in Indonesia, so considering that train fares are charged by distance and not by scenery, this would make a good introduction to Indonesian train services and natural landscapes in Indonesia if you were looking for a joyride out of Jakarta.

PT KAI Train Ticket Booking Methods
For Eksekutif, Bisnis and Ekonomi AC only. All other tickets are only sold at stations where the train serves.

  • PT KAI counters
  • Online from PT KAI‘s ticketing website but foreign credit cards do not work
  • Online from – foreign credit cards accepted

Tickets are open for sale 30 to 90 days before departure, depending on train service.

Hotel Booking

Attractions Booking

  • Klook (Get FREE $4.30*/RM12.90* voucher for your first purchase when you sign up here! *subject to exchange rate)

Jakarta Soekarno-Hatta International Airport Skytrain: The New Inter-Terminal People Mover System Connecting Terminals 1, 2 and 3 To Airport Railway Station

The Jakarta Soekarno-Hatta International Airport (SHIA) Skytrain is a new people mover system connecting all 3 passenger terminals for free, which were once only connected by an infrequent free shuttle bus, or in desperate situations, a taxi ride. The Skytrain also links the 3 terminals with the SHIA Airport Railway station, which is the terminal for the SHIA Railink to get you to downtown Jakarta.

Skytrain Interior

The Skytrain currently operates with 2 2-car train sets with a capacity of 176 people per train. The trains are built by state-owned company PT Len Industri (Persero) in cooperation with Woojin from South Korea, with the line operated directly under PT Angkasa Pura II. Once the line is fully ready, it will operate with 3 train sets.

For the first 6 months of operation, the trains will be operated manually with a set of crew.

The interior of the 2-car Woojin train set. One side of the train is fitted with seats, and the opposing area is a space for wheelchair-bound passengers, big luggage or just simply standing passengers.

Each train car has 9 seats – 5 on the main row in the centre and a pair of 2 seats by the gangway.

The handgrips on board are distinctively South Korean.

The route map on board the train, denoting the travel time through the line. However, it seems that this timing does not take into account stops at stations, and you probably need to add 1 minute for every station you pass through when heading to your destination.

An LCD screen featuring advertisements on board.

Despite not being operated under PT Kereta Api Indonesia, the main operator of railways in Indonesia, the numbering of the train sets follow the same order. So for this case of the number being K1 1 17-05

K1: Class 1/First Class
1: Car with own motive power
17: Manufactured in 2017
05: Car number

SHIA Terminal 2 to SHIA Airport Railway Station

Terminal 2 is where most international flights land in SHIA, including Singapore Airlines.

Once out of the baggage reclaim area, head straight to the temporary-looking shelter across the road.

The Skytrain station is up ahead.

However, the entrance on the terminal side isn’t ready, so you have to access it from the car park side.

Get on the escalator up to the platform.

The Skytrain system currently operates on two bi-directional single tracks. Each train operates on its own track, with the points at the ends of the line currently not in operation. As such, trains on either platform may head to either destination. Listen out for the staff calling out the train’s destination or watch which direction the train is travelling in.

The view of SHIA Airport Railway Station from Terminal 2 Station.

On board the Skytrain. A minimum of two crew is needed to man the train – one to drive it and another to make manual announcements and communicate with possibly the operations control centre. I suspect it’s because the Skytrain does not operate with any signalling yet, hence the arrangement for the bi-directional single track and the staff having to inform the operations control centre at the precise time of every departure and arrival of the train and even whether the doors are closed or not.

Announcing the impending arrival of the train at the SHIA Airport Railway Station.

As all stations have island platforms and the train only opens the doors on one side, the protective tape for the buttons on the side which is not opened is still not removed.

Follow the signs to the SHIA Airport Railway Station to hop on board the SHIA Railink to BNI City (Sudirman Baru), in the heart of Jakarta’s business district.

The overview of the SHIA Skytrain alignment.

SHIA Airport Railway Station to SHIA Terminal 1

Continuing onwards to Terminal 1, a maintenance facility can be seen under construction.

The unused points leading to the maintenance facility and the crossovers before approaching Terminal 1.

Approaching Terminal 1 Station.

The buffer stop at Terminal 1, with cables strewn around the area. Hmm…

SHIA Terminal 1 to SHIA Airport Railway Station

From Terminal 1, another staff does the communications with the operations control centre, one does the announcements and one drives the train.

Question: How many people does it take to drive a supposedly driverless train?
Answer: 3.

SHIA Airport Railway Station to SHIA Terminal 2

The facade of the SHIA Airport Railway Station.

Heading on to Terminal 2.

The opposing Skytrain on the other track heading for Terminal 2 as well, from Terminal 3.

Approaching Terminal 2 Station.

SHIA Terminal 2 to SHIA Terminal 3

The stretch from Terminal 2 to Terminal 3 is the longest, due to the new Terminal 3 not within the same cluster as Terminals 1 and 2.

The opposing Skytrain heading off to SHIA Airport Railway Station and Terminal 1.

The long stretch to Terminal 3.

Approaching Terminal 3.

Passing over the unused crossovers.

Arriving at the platforms of Terminal 3 Station. The main user of Terminal 3 currently is Garuda Indonesia, however, all international flights are expected to move to Terminal 3 by June 2018.

A stray vehicle on the tracks at the overrun towards the buffer stop. Hmm…

The schedule for this outer-track train on the driving console. The journey time on schedule can be deduced as follows:

Terminal 1 to Airport Railway Station: 3 minutes
Stop at Airport Railway Station: 1 minute
Airport Railway Station to Terminal 2: 2 minutes
Stop at Terminal 2: 1 minute
Terminal 2 to Terminal 3: 5 minutes
Stop at Terminal 3: 1 minute
Terminal 3 to Terminal 2: 5 minutes
Stop at Terminal 2: 1 minute
Terminal 2 to Airport Railway Station: 2 minutes
Stop at Airport Railway Station: 1 minute
Airport Railway Station to Terminal 1: 3 minutes
Stop at Terminal 1: 1 minute

Total journey time for each loop: 13 minutes
Average frequency for each direction with 2 trains: 6.5 minutes

Overall, the Skytrain’s opening, while necessary, feels incomplete and inconvenient with entrances to the station from the Terminal not ready, the system possibly operating without a signalling system (thus trains have to be driven manually on bi-directional single tracks) and without proper signages to the station from the terminal building at Terminals 1 and 2. Yes, it is a great improvement from free shuttle buses but it’s not close to being fully operational yet.

It is necessary to take the Skytrain to the Airport Railway Station, however, at a 6.5 minute frequency with no information at the platform on how long more your train will arrive on which track, it adds a bit more stress to travelling to and from the airport. Not to mention the additional travel time needed to get to the Airport Railway Station which you need to factor into the total journey time to and from the city.

Overall, an improvement in the connectivity around SHIA, but there’s definitely more room for improvement. When the next phase of the line opens with 3 trains running on it fully automated (and thus at 4-minute frequencies), I’ll give it another review.

Singapore Airlines SQ956: Singapore to Jakarta Soekarno-Hatta by Airbus A350-900

Singapore Airlines is a major player on the lucrative Singapore – Jakarta route with up to 9 pairs of return flights daily. While the typical Boeing 777s are in use on this regional route, one particular flight, SQ956, currently uses the Airbus A350-900 for this short hop.

Similar to ScootCathay Pacific and a bunch of other airlines now, Singapore Airlines now uses FAST (Fast and Seamless Travel) Check-In at Changi Airport as well. While it’s sort of fun to use, that little bit of premium feels lost at the check-in counter now.

Press the Singapore Airlines logo on the screen to start the check-in process.

Remember to only print the exact number of baggage tags you need.

My baggage tag being spat out by the kiosk.

Soon after, my NTUC receipt boarding pass is printed.

After a final reminder from the kiosk, I tagged my bag, picked up my boarding pass and headed over to the Bag Drop counter.

Unlike the 100% self-service bag drop counter for my Cathay Pacific flight from Terminal 4, while you still have to place your bags yourself one by one at the FAST bag drop, the touch screen is not for your use this time, but rather, a check-in agent is stationed behind the counter to facilitate the process. Not sure if I like this half-automated system though.

Furthermore, the boarding pass has lost all its premium value – you used to feel that little bit of prestige in your heart when you held on to the boarding pass with the green Economy Class band on top.

Here’s my FAST and flimsy boarding pass.

Decided to use the mobile boarding pass instead.

Time to head for immigration and to my flight.

My flight was departing from Gate F35, so it’s a walk through the entire length of the departure transit hall from the North departure immigration area.

After the end of the rows of shops, it’s a final diverge to the pier.

Surprisingly, there wasn’t a queue for security screening at the gate. Guess it’s going to be a light load today.

The Singapore Airlines Airbus A350-900 9V-SME getting ready for departure.

Hmm, not many people as I expected for this Saturday morning flight. Perhaps most people booked their flights based on departure timings rather than aircraft type. ¯\_(ツ)_/¯

With no response for passengers with children or needing assistance, it was a quick call for Group 4, or those seating from Row 51 onwards in the aft cabin.

Since the Singapore Airlines Airbus A350 is a long-haul product, the walk to Economy Class requires you to walk through all cabin classes, as the premium demand on long-haul routes is pretty high. Here are the brand new Business Class seats.

The new Premium Economy Class is located just behind the Business Class cabin. Just a cozy 3 rows of seats here.

Following which is the Economy Class cabin. This little cabin of just 6 rows of seats is defined as the Forward Zone which does require an additional surcharge to book if you are purchasing this ticket on a low fare. Hence, I’m not seated here.

Rows 47 to 62 form the main Economy Class cabin on the Singapore Airlines Airbus A350.

Pretty generous legroom for Economy Class. Also, the leg rest is appreciated. I could visualize myself flying long haul pretty comfortably on this, ignoring the budget portion of things.

The KrisWorld in-flight entertainment system has also been refreshed with a touchscreen and a controller. Two USB ports are available – one for charging only, and the other for charging and syncing with the in-flight entertainment system.

In case the touch screen isn’t enough for you, the controller also has a screen on it for you to touch.

Free in-ear earphones are distributed alongside the newspaper rack while boarding the plane. They are yours to take home after the flight.

The free in-ear earphones have a classy Singapore Airlines branding on them.

Some new movies on the KrisWorld entertainment system. Hmm… Murder on the Orient Express. Nah, flight’s too short to complete the movie.

The interactive route map featuring the flight path to Jakarta.

Before pushback, hot towels were distributed to all passengers. I think I haven’t had one of these on a plane for almost five years now. Singapore Airlines might be the only airline in the world which still provides hot towels to every Economy Class passenger.

Pushing back with a United Airlines Boeing 787 at the next gate.

Boat Quay

Soon after, the safety video is played. This new video is played across all aircraft and features familiar places of interests in Singapore, and also acts as an introduction to those coming here for the first time.

Haji Lane

Henderson Waves

Adventure Cove Waterpark

Gardens by the Bay

Watch the new Singapore Airlines safety video in full here:

Some SilkAir and Scoot narrow-body aircraft are parked at Terminal 4. My guess is that this might be an “extension” of Terminal 2 with passengers boarding via Gate F51, the bus gate, to get to their planes here, or just simply as extra “remote” parking bays for T2 since T4 took away some actual remote parking bays anyway.

The prepared cabin, ready for take-off.

Take-off was headed north towards Malaysia.

Making a u-turn to head south to Indonesia.

The view over Batam while climbing.

In the toilet of the Singapore Airlines Airbus A350.

Amenities include hand creams, toothbrush kits, combs and mouthwash which you can rinse your mouth with with the little cups provided. Put 4 squirts into the cup and add water before you gargle.

Reaching cruising altitude.

And breakfast is served! Two choices were available – the Scrambled Egg with Veal Sausage or Chicken with Bee Hoon.

The decision is obvious.

(I’m not sure if anyone would excitedly pick economical bee hoon over the scrambled egg.)

I haven’t had scrambled egg on a plane before, just omelettes or frittata, so this was a refreshing taste. And surprisingly creamy too, since this is, after all, served on a plane where things dry out.

The obligatory Singapore Sling cocktail on board Singapore Airlines to kick start the holiday. (Dry gin, DOM Benedictine, Cointreau, cherry brandy, Angostura bitters and Grenadine, mixed with lime & pineapple juice.) Unfortunately, individual menu cards are no longer handed out so you may have to order your drinks by heart.

Tip: For a non-alcoholic mocktail instead, try the Fruit Spritzer (Apple Juice and 7-Up).

Time to fiddle around with the connectivity options on the plane.

SMS and data services are also available on board. Unlike Cathay Pacific, you have to reply to the SMS with a code in order to activate the service. Still, do remember to switch off data roaming or put it on airplane mode altogether to prevent bill shock.

WiFi on board costs US$11.95 for 1 hour, US$16.95 for 3 hours and US$21.95 for 24 hours, similar to Scoot’s old WiFi pricing.

Scoot has changed to a volume-based pricing instead.

Some flight information in the browser along the way.

Descending into Jakarta.

A last look at my seat.

The rear view of the Singapore Airlines Premium Economy Class.

The rear view of the Singapore Airlines Business Class.

Maybe one day I’ll be able to afford this.

Heading for the terminal building.

Heading downstairs to immigration.

The last time I used Terminal 2, the immigration counters for foreigners were on the side and the middle one was for locals. This time though, they’ve swapped positions.

The wait for baggage took about 15 minutes. And considering that I was one of the last ones off the plane and all other passengers are already waiting for their bags, that’s really slow. Although this ground side of things would be under PT Angkasa Pura II and not Singapore Airlines.

Once done with the baggage, it’s time to head outside for a fresh way to get to the city: via the new Skytrain to the Soekarno-Hatta Airport Rail Link station.

Overall, the Singapore Airlines Airbus A350 was a very comfortable product for a short-haul flight, and I would say that it is a tight race, but SQ might have been the best A350 Economy Class product I’ve tried so far, with my previous experiences being on Thai Airways and Cathay Pacific.

In general for the A350 though, while it is touted as being a quiet aircraft, even with the initial nickname of “Hushliner”, I still find the Boeing 787 Dreamliner to actually live up better to that claim when seated at the back of the plane behind the engines. However, I haven’t had the opportunity to sit in front of the wing on full-service airlines’ wide-body aircraft yet, so no comparisons yet for that.

Garuda Indonesia GA838: Jakarta Soekarno-Hatta to Singapore by Airbus A330-300

Terminal 3 (also known as Terminal 3 Ultimate) is the newest passenger terminal of Jakarta Soekarno–Hatta International Airport. It is located nearer to the highway to Jakarta city than the existing Terminal 1 and Terminal 2 cluster. With my Garuda Indonesia flight back to Singapore, it also gives me my first opportunity to use this new terminal for departures.

Check-in for Garuda flights are at Row A.

While the terminal is new, I wasn’t expecting seeing signboards that look a little too familiar for my comfort.

With Garuda Indonesia being only one out of very few airlines currently operating out of Terminal 3, immigration and security queues were non-existent. A fantastic start to a flight.

Inside the massive new terminal.

The signs leading to the gates. At present, only Gates 5 to 10 are operational for international flights.

At Gate 6 where my flight will depart from.

Hmm two delayed flights, with the Jeddah one not even being updated to the new delayed timing. I don’t have a lot of hope in my flight too.

Ooh look at Airbus A330 at Gate 6 pulling in at 4.15pm, 15 minutes before my scheduled departure.

Hmm, why do you make me feel uneasy.

The crowd formed as it approached departure time, at 4.30pm.

And at once, the doors to the aerobridge of Gate 6 were shut.


While I am sort of okay with bus rides, it’s not very okay when I’m taking it to board a plane.

Going down a second set of escalators to the bus lounge.

Boarding my “bus” from Jakarta to Singapore.

The bus got pretty crowded for the ride. Wonder where they’re taking me. I hope it’s not the plane on the remote gate in the far distance – it’s raining.

8 gates away and we arrived on the domestic side of Terminal 3.

Feels strange to board a bus from gate to gate within the terminal. Maybe they should have designed the airport with a stacked domestic and international area like KLIA, Suvarnabhumi Airport or other airports in general around the world.

No money to fly Bisnis Class but I’ve got a Bis. Ha.

Boarding through Gate 14 of the domestic area.

The next bus has arrived with more passengers.

Boarding my flight to Singapore.

Passing through the Business Class cabin.

Ah yes, those welcoming smiles are exactly how I remembered Garuda when I first flew with them to London last year. A far cry from the glum crew on my way to Jakarta.

Here comes the bags.

The IFE was also more familiar to use than the clunky and dated one on my way to Jakarta. While the entertainment selection is the same, it’s way easier to navigate on this newer screen and interface.

Even the safety video has the correct dimensions to fit on the screen. Oh wait, it is probably a basic requirement I guess.

Pushing back from the gate.

Taxiing away from the terminal building.

It’s a long queue for take-off.

And finally, take-off. 1 hour delayed from schedule.

On my way to, uh, Jakarta from Bali? I guess that with the quick turnaround of the aircraft stacking up the delays, the IFE wasn’t reset for this flight. The timings were all correct for the current flight with Denpasar Bali taking the time for Jakarta and Jakarta taking the time for Singapore.

This time, there was a choice of “Nasi Daging” or “Nasi Ayam“. Since beef seems to be rare for economy in-flight meals, I opted for that option. My seat neighbour opted for chicken though, which made me really disappointed when I saw it – it wasn’t nasi (rice), it was an Italian Chicken Crespelle.

Back on home soil after circling above Batam for 5 times. There probably weren’t any available landing slots for us after we missed the original slot due to the late departure.

Overall, this flight finally reminded me of Garuda’s 5-Star Airline Rating on Skytrax. The food was still missing an appetizer but it’s probably Garuda’s regional catering style. Overall a comfortable trip with Garuda, but there’s probably a great way to fly too. Stay tuned!

Garuda Indonesia GA825: Singapore to Jakarta Soekarno-Hatta by Airbus A330-200

Garuda Indonesia operates flies the Singapore – Jakarta route 9 times daily. While the Boeing 737-800 is commonplace in the fleet especially for regional flights, twice a day, one of their widebody jets supplement the schedule with extra seats. During the day, GA825 uses the Airbus A330-200 for the short shuttle.

GA825 departed from Gate A21 on the day of my departure.

PK-GPL on duty for my flight to Jakarta.

Passing through the Business Class cabin.

Loks pretty comfy for the short flight.

Heading into the Economy Class cabin.

The seat seems to be an older product instead of what has been advertised.

The legroom available in the seat.

Do note of the entertainment box on the “K” seats.

The IFE’s touch screen is pretty dated, requiring a hard or sharp press into it to sense your touch. I just used my fingernail after a couple of seconds of wrongly pressing things.

Hmm, the dimensions of the new safety video is off in the IFE.

Pushing back from the gate.

Passing by the smaller sibling of Garuda’s fleet.

Crossing over Airport Boulevard to the runway on the T2 and T4 side.

Passing by Terminal 4.

An AirAsia Airbus A320 on taxi parallel to my plane.

The new Singapore Airlines Airbus A350-900 following behind.

Bye Singapore.

And in just a couple of minutes, it was all clouds due to the wet weather.

And lunch is served, or rather given. The stewardess just said “Nasi Ikan” and gave me my tray. I’d assume the other option was not available.

Seems a little plain but it’s actually rather salty. Compared with my Garuda flight to London, this was kind of disappointing.

Time for a toilet visit after the meal.

Amenities available in the toilet are a bottle of cologne, hand lotion and toothbrush kit. Not bad for a short flight.

Descending into Jakarta.

Touchdown at Jakarta Soekarno-Hatta International Airport.

Whoops, wouldn’t want to be downgraded to this Firefly plane for a 2-hour flight.

Might not want to be in this 440-seater Lion Air Airbus A330-300 too.

Heading towards Soekarno-Hatta International Airport Terminal 3.

Arriving at Garuda’s home base.

Heading for immigration at the new Terminal 3.

Overall, the flight was a decent but forgettable experience. Having been able to compare their service last year when they were having awards coming their way regularly and with the new route launch to London via Singapore, I’d have to say that either their service standards have dropped, or they have different standards for regional and long-haul flights. The IFE was clunky and a chore to flip through the many pages to access a TV episode, and the food, while understandably is catered from Jakarta and which came along with the inbound flight, didn’t look very appetizing (though the taste was sort of fine to me). Oh, and the meal did not have an appetizer course unlike the flight to London. True, the flight to London is significantly longer but a meal catered as a “lunch” should still be a lunch regardless of destination.

Let’s see how other full-service airlines fare on the same route soon. Stay tuned!

Singapore to Bali by Land and Sea: A 7-day mini-adventure for under $500!

Singapore to Bali by Land and Sea 04

After having read all my posts on my trip from Singapore to Bali by Land and Sea, you might think that I’ve spent a lot on this trip considering that I’ve travelled in First Class on the ship from Batam to Jakarta, in Eksekutif Class on all long-distance trains and slept in hotels instead of hostels while not on the move.

However, tickets alone, including my additional unplanned train joyrides, car rental with driver in Bali and airfare back to Singapore, costed me just S$498.68.

Let me show you how.

NOTE: This amount does not include my expenditure on food and souvenirs, which was minimal anyway.

Day 1: Batam Fast from Singapore (HarbourFront Centre) to Batam (Batam Centre)

Singapore to Bali Day 1 BatamFast HarbourFront to Batam Centre 08

Price in Singapore Dollars: S$25

Planning for this trip was really easy – every step of the booking process can be done online. You can get your ticket online from EasybookBusOnlineTicket or directly from the ferry operators’ websites. For this trip, I chose to travel with Batam Fast since I have tried Majestic and SINDO already.

Whichever method you choose to book your ticket, you can check-in online at Batam Fast’s website and print your boarding pass at home.

Day 1: Trans Batam Corridor 05 from Batam Centre to Batu Ampar Port

Singapore to Bali Day 1 Trans Batam Batam Centre to Batu Ampar 02

Price in Indonesian Rupiah: Rp. 4,000
Price in Singapore Dollars: S$0.42

Just across the road from the Batam Centre Ferry Terminal lies the familiar Trans Batam Central Busway halt (and now you know why I went to familiarize myself with the busway system during my past two trips).

Here’s a price comparison between the taxi counter at Batam Centre Ferry Terminal versus the Trans Batam Corridor 05.

Taxi from Batam Centre to Batu Ampar: Rp80,000
Trans Batam from Batam Centre to Batu Ampar: Rp4,000 (95% discount)

Well, my choice of commute seems obvious now doesn’t it.

Day 1-2: The PELNI KM Kelud from Batam to Jakarta

Singapore to Bali Day 1 PELNI KM Kelud Batu Ampar Tanjung Priok 43

Price in Indonesian Rupiah: Rp. 994,000
“Additional fee” in Indonesian Rupiah: Rp. 100,000
Price in Singapore Dollars: S$104.11 + S$10.50

PELNI, which is an abbreviation of PT. Pelayaran Nasional Indonesia, is the national shipping company of Indonesia, operating ferries which connect the main islands of the Indonesian archipelago.

The KM Kelud departs from Batu Ampar in Batam for Tanjung Priok, Jakarta at 1.00pm on Wednesdays and returns to Batam and Belawan on Fridays at 8.00am.

Day 2: Transjakarta Corridor 12 from Tanjung Priok to Jakarta Kota

Singapore to Bali Day 2 Tanjung Priok to City 10

Price in Indonesian Rupiah (TransJakarta): Rp. 3,500
Price in Indonesian Rupiah (KRL): Rp. 3,000
Price in Singapore Dollars: S$0.37 + S$0.32

After walking about 1km from the Port of Tanjung Priok, I got to Tanjung Priok Railway Station at 7.15pm, 5 minutes after the scheduled departure of the last KRL train bound for Jakarta Kota.

Disappointed, I backtracked to the Transjakarta halt.

Overnight in Jakarta: S$26.53

Day 3: Covering the Tanjung Priok – Gambir Stretch by KRL

Singapore to Bali Day 3 Jakarta KRL 43

Price in Indonesian Rupiah (KRL): Rp. 3,000
Price in Indonesian Rupiah (KRL): Rp. 3,000
Price in Singapore Dollars: S$0.32 + S$0.32

In the morning, I set off from my hotel to cover the rail lines that would have been otherwise skipped if I had concentrated solely on the long-distance routes.

Day 3: Getting to Gambir Railway Station with KRL and Transjakarta

Singapore to Bali Day 3 Access to Gambir 15

Price in Indonesian Rupiah (KRL): Rp. 3,000
Price in Indonesian Rupiah (TransJakarta): Rp. 3,500
Price in Singapore Dollars: S$0.32 + S$0.37

If you are going by KRL, you have two main choices, to go to Jakarta Kota or Juanda. I opted to go via Juanda as the next train was arriving at Mangga Besar station as compared to another few minutes wait for the Jakarta Kota-bound one.

Take TransJakarta BRT Service 2C from Juanda direct to Gambir 2. Alternatively, take TransJakarta BRT Service 2, 2A, 3, 5C or T12 from Juanda to Harmoni Central Busway and change to Service 2 or 2A to Gambir 2 bus stop. As you can see, based on probability, you’ll end up at Harmoni most of the time, but it’s okay because the frequency is good thanks to the parallel bus corridors. Just get the first bus that comes along – it makes your journey faster than waiting for the elusive 2C.

Day 3-4: KA Gajayana from Jakarta Gambir to Malang

Singapore to Bali Day 3 Gajayana Jakarta Gambir to Malang 17

Price in Indonesian Rupiah: Rp. 535.000 + Rp. 14.500 booking fee – Rp. 100.000 discount code = Rp. 449.500
Price in Singapore Dollars (POSB’s rate): S$48.77

The KA Gajayana is a daily overnight train running between Jakarta Gambir and Malang via Purwokerto and Blitar, and is one of the first trains to run with the new K10 bogie Eksekutif Class coaches. The train departs Jakarta Gambir at 5.45pm and arrives in Malang the next day at 9.20am.

Day 4: KA Bima from Malang to Surabaya Gubeng

Singapore to Bali Day 4 Bima Malang to Surabaya Gubeng 21

Price in Indonesian Rupiah: Rp. 60,000
Price in Singapore Dollars: S$6.30

It’s only a short hop from Malang to Surabaya with a distance of less than 100km. However, the only afternoon train with a good timing that suits me so happens to be the most expensive option – the KA Bima.

Luckily though, there is a special flat fare of Rp60,000 for journeys on the KA Bima between Malang and Surabaya Gubeng.

Day 4: KA Komuter SuPor from Surabaya Gubeng to Surabaya Kota

Singapore to Bali Day 4 Komuter SuSi Surabaya Gubeng to Surabaya Kota 06

Price in Indonesian Rupiah: Rp. 5,000
Price in Singapore Dollars: S$0.53

The Komuter SuPor (Surabaya-Porong) plies between Surabaya Kota and Porong via Sidoarjo. A flat fare of Rp5,000 applies for a ticket on the Komuter SuPor.

This train is still affectionally known to locals as the Komuter SuSi, with the old name attributed to the original Surabaya – Sidoarjo route before the extension to Porong.

Day 4: KA KRD Kertosono from Surabaya Kota to Surabaya Gubeng

Singapore to Bali Day 4 KRD Kertosono Surabaya Kota to Surabaya Gubeng 01

Price in Indonesian Rupiah: Rp. 10,000
Price in Singapore Dollars: S$1.05

The intra-city transport in Surabaya isn’t as efficient as many other cities in Indonesia, with the only means of public transport being the bemos. I could always have Uber-ed, Grab-ed or taxied back to my hotel, but where’s the fun in that?

And since I already came here by train, it’s only logical in my sense that I got another train back.

Day 5: KA Rapih Dhoho from Surabaya Gubeng to Kertosono

Singapore to Bali Day 5 Rapih Dhoho Surabaya Gubeng to Kertosono 07

Price in Indonesian Rupiah: Rp. 12,000
Price in Singapore Dollars: S$1.26

Once I realised that there’s no way I’m going to enjoy walking around Surabaya City for the next 11 hours to wait for the Mutiara Timur to Banyuwangi Baru and onwards to Denpasar, I opted to cover the missing line between Surabaya Gubeng and Kertosono which I missed out due to my detour to Malang.

Welcome to my kind of holiday.

Day 5: KA Rapih Dhoho from Kertosono to Surabaya Gubeng

Singapore to Bali Day 5 Rapih Dhoho Kertosono to Surabaya Gubeng 06

Price in Indonesian Rupiah: Rp. 12,000
Price in Singapore Dollars: S$1.26

As quickly as I arrived, it was time to head back.

Day 5-6: KA Mutiara Timur Malam from Surabaya Gubeng to Denpasar

Singapore to Bali Day 5 Mutiara Timur Malam Surabaya Gubeng to Banyuwangi Baru 16
Singapore to Bali Day 6 Ferry Ketapang to Gilimanuk 08
Singapore to Bali Day 6 DAMRI Bus Gilimanuk to Denpasar 01

Price in Indonesian Rupiah: Rp. 290.000 + Rp. 14.500 booking fee – Rp. 40.000 discount code = Rp. 264.500
Price in Singapore Dollars (POSB’s rate): S$28.71

It felt like just two days ago when I started the train journey from Jakarta, which indeed it was, and now it’s time for the last train journey to the eastern end of the railway in Java.

The KA Mutiara Timur Malam plies the route from Surabaya Gubeng to Banyuwangi Baru and onwards to Denpasar, despite there being no bridges to Bali island and no railway tracks on Bali island itself. However, it is considered a train destination and service in PT KAI’s books and the KA Mutiara Timur Malam night train service terminates there, even as announced in the station. That means to say that you can buy a single ticket from Surabaya Gubeng to Denpasar.

Day 7: Car Rental with Driver in Bali for Sightseeing

Singapore to Bali Day 7 Denpasar 54

Price in Indonesian Rupiah: Rp. 300.000
Price in Singapore Dollars: S$31.50

Pantai Melasti or Melasti Beach is a lesser known beach in Bali, since it doesn’t have any great sunrise or sunset views as it faces south, but it has one main feature which makes it of key importance for my trip to Bali – a spit from the beach, making it the southernmost point of Bali island.

From YorkSheffieldLondon, and et cetera all the way down here.

This is it – London to Singapore to Bali overland is completed.

Day 7: KLM Royal Dutch Airlines from Bali to Singapore

Singapore to Bali Day 7 KLM Denpasar Singapore 26

Price in Singapore Dollars: S$132.89

This is my first personal flight ever since I left for London (with a working trip in between as an exception, but that was a return so it cancels itself out), so the journey from London has been fulfilled unbroken on land.

I know, I know, I flew to London with Garuda Indonesia but am now flying from Indonesia on a European airline. Well, I go with whatever is the cheapest.

Food-wise, you can get really satisfying local meals for around Rp. 30,000 (S$3.15), and that’s already on the high side based on local prices. So this experience didn’t really break the bank as well, and I recommend you do it to. After all, how else can you say that you travelled by ship, in the most authentic sense of the word, from Singapore to Jakarta and Bali?

On top of that, the upper classes of the PELNI ships have all been removed except for the KM Kelud, KM Tidar & KM Tatamailau, so if you want to try out the First Class, you’d better plan your trip now for it is not known if PELNI will finally convert these 3 ships’ upper classes to Economy just like they’ve done to all their other 23 ships.

Given the time and opportunity, I would willingly do this all over again in a blink of an eye.

Revisit my journey from Singapore to Bali by Land and Sea here!

PT KAI Train Ticket Booking Methods
For Eksekutif, Bisnis and Ekonomi AC only. All other tickets are only sold at stations where the train serves.

  • PT KAI counters
  • Online from PT KAI‘s ticketing website but foreign credit cards do not work
  • Online from – foreign credit cards accepted

Tickets are open for sale 30 to 90 days before departure, depending on train service.

Hotel Booking

Attractions Booking

  • Klook (Get FREE $4.30*/RM12.90* voucher for your first purchase when you sign up here! *subject to exchange rate)