From Singapore to Kuala Lumpur by Train (2024 Overland Travel Guide)
Going overland between countries (rather than flying) can be really fun, especially if you enjoy a more adventurous style of travel. Singapore and Malaysia in particular are easy to get between, as Singapore is attached to Malaysia and there’s multiple ways of getting between the two countries by land.
I particularly enjoy taking trains, so when I found out that you can take a train from Singapore to Kuala Lumpur, I decided to go for it.
This is my experience going overland from Singapore to Kuala Lumpur in July 2023.
This post contains affiliate links. If you click on a link and buy something, I get a small percentage at no extra cost to you. Your support helps keep this blog running— thank you! Read full disclosure here.
From Singapore to Johor Bahru
My route was planned using Seat61.com’s overview, my favorite resource for train travel around the world.
First off, you actually start this train ride in Malaysia. To get to the border you can take either a metro train or a bus in Singapore, and then cross over to end in JB Sentral in Joho Bahru, Malaysia.
The train route is split into two parts, one from JB Sentral to Gemas, and then from Gemas to Kuala Lumpur. You have to book each segment separately, which you can do online.
I used Baolau.com because I couldn’t get the other websites to work; there’s a slight delay between when you book your ticket and actually getting your ticket, because they’re manually ordering them from the train company, but I got my ticket confirmed within a few hours.
Total cost for train tickets: RM78.72 / $17 USD (including service fees)
There are several trains a day going towards Kuala Lumpur, but direct connection between the two segments is only once a day on the morning schedule.
However, that train leaves at 8:30am. It takes over an hour to get to JB Sentral from the main part of Singapore, and my hostel was located on the east side of town, putting me even further away. I’d have to leave at 5:00 or 5:30 am to make it on time! Generally, I try to be kind to my future self by not planning travel days that start before the sun rises.
That meant I had to take the afternoon train. However, that train didn’t have a connection to the second segment until the next morning. So now I’d have to spend the night in Gemas, which honestly has nothing for tourists to do but wait for trains.
Still, that was better than dragging myself across the country at dawn, so I booked the later train.
Getting to Johor Bahru
Now that I had that problem solved, I had to tackle the next one: how to get to JB Sentral from Singapore.
Generally the route is: go to the Woodlands station, go through Singaporean passport control, cross border into Johor Bahru, do Malaysian passport control, then board the train towards Kuala Lumpur.
It’s easy enough to say “take public transportation” but there’s several options and routes available, all for varying prices. If I had a larger budget, I would’ve just forked over the cash for a private transfer to just take me through the border directly, but as a solo traveler that’s just not cost-effective.
The budget backpacker option is a combo of MRT and bus, which is the one I used. And actually, I recommend taking the MRT as much as you can in Singapore, because traffic can sometimes be bad enough that buses are significantly late.
I took the metro to Woodlands MRT station, then went next door to the bus depot and got on bus 950, which takes passengers over the border to Johor Bahru. Because I used a transfer from the metro to the bus, the whole 1.5 hour trip cost me something like S$2 / $1.47 USD.
I left Singapore around 12:00 pm and arrive at JB Sentral almost exactly at 2:00 pm– including a 10 minute shopping trip at a 7-11 at the Woodlands station. Good timing!
Johor Bahru Sentral
JB Sentral is huge, and it’s well connected to the downtown part of Johor Bahru. JB itself looks like a nice place to visit, and I think a lot of Singaporeans go there for discounted shopping.
Boarding for the train opens exactly 30 minutes before departure. I didn’t see any departure boards or signs indicating where to go, but I asked the staff at the ticket desk and they pointed me to the right direction.
The intercity trains all leave from the upper floor of the train station. The train staff will come to the gate (Gate B) and announce the train number and route, and then open the gates for entry. They check your ticket there, informally, and then tell you the platform number that your train is at.
The train itself was fairly nice. Unfortunately, I didn’t realize that I had picked a seat with only half a window view! Bummer. Odd number seats had full window views, but even number ones were partially obscured.
Important note: There is NO cafe car or food service on this train (which is why I grabbed food at the 7-11 at Woodlands). There’s some restaurants and fast food options at JB Sentral but if you’re taking the morning train then most would be closed– so grab something in Singapore if you can. There’s bathrooms and luggage racks, plus a pretty deep overhead shelf for bags, and the seats themselves are comfortable.
Gemas
Gemas is a teeny tiny town only there for the train station, really, but they’ve gotten some new businesses that should be nice for visitors. There’s a new KFC, a well-stocked Family Mart, a Tealive (bubble tea place), and a big-ish Maybank with several ATMs.
Important note about Gemas: there are barely any hotels, and none of them are listed on any booking websites.
This threw me off big time, as I’m used to booking everything online, either through a OTA like Booking.com or Agoda, or just directly on the hotel’s website. None of the hotels I saw on Google Maps even HAD websites!
Eventually, I found the Facebook page for Tropicana Hotel, the “nicest” of the hotels in the immediate area next to the train station. The Tropicana Hotel FB page had a Whatsapp number, so I messaged asking if I could make a reservation through there. The very nice front desk worker said I could, and so booked one night. Huzzah! Total: RM89 / $20 USD.
See also: Why you should download WhatsApp as one of your travel apps.
The hotel was…fine. Kind of run down in places, and my sheets had stains. More annoyingly there was NO RUNNING WATER. Something had broken earlier in the day and it was totally out. Nobody mentioned this either via Whatsapp or when I checked in; I had to go down to the desk to ask about it. Ugh.
The hotel was also full of police officers, who might’ve been there for training or something? They all started getting up at 5:00 am and the walls are so thin I could hear every single alarm going off. Not fun!
Gemas Station
The actual train station is fairly bare. There’s a small convenience store type business on the bottom floor, and a selection of water bottles for sale with an honesty box. There’s toilets and benches and plenty of seating for waiting for your train, but otherwise not much else.
Like JB Sentral, the procedure here is gates open 30 minutes before departure, and the staff announce the train and destination at the actual gate. The Gemas station gates have a barcode/QR code scanner that accepts paper or mobile tickets.
The ETS train is fancier than the first one I took, with nicer seats and shiny white interior walls. However, my window was totally cracked on the outer layer, which was a bit worrying.
Also, there’s TVs on the walls and hanging from the ceiling, and they blast advertisements and train info the WHOLE RIDE. My seat was also right next to the speaker AND a TV.
It’s also absolutely freezing, so much so that I put on a sweater and my jacket. I did NOT have a good time on this train.
Final Thoughts
Beautiful scenery, but I’m not sure it’s worth going on this particular train route unless you really want to go to KL by train. There’s actually a bus from Singapore which goes direct to Kuala Lumpur for a similar price (or cheaper!), and you wouldn’t have to leave at the crack of dawn OR stay in an iffy hotel room in Gemas.
Previous Entry
Next Entry
Kuala Lumpur
Save to Pinterest
Explore More
More overland travel guides and reviews:
- From Malaysia to Singapore by bus — going back the other way, the cheapest way possible
- Taking the Laos Slow Boat to Luang Prabang (2023)
- From Tam Coc to Hue by overnight bus
- From Fukuoka to Busan with the JR Queen Beetle ferry
- How to book bus tickets in Southeast Asia
Best Travel Resources
- 🛌Search Hostelworld for budget stays
- ✈️Search SkyScanner for discounted flights around the world
- 😺Join TrustedHousesitters and do petsitting in exchange for accommodation
- 💳Carry Chase Sapphire Preferred for a travel-friendly credit card
- 📱Use Airalo for eSIMs around the world
- 🚙Check DiscoverCars for international car rentals
- 👩💻Snag ExpressVPN to stay safe while browsing the web
- 🧑⚕️Sign up with VisitorsCoverage for trip insurance