
There is no direct train service from Singapore to Kuala Lumpur, so this guide shows how to make the journey by two different trains.
Getting the train from Singapore to Kuala Lumpur used to be a straightforward affair. The train would leave Tanjong Pagar railway station (near downtown Singapore), clear immigration for both countries at Woodlands, and then continue on the same train to Kuala Lumpur. I did this journey in 2009 and it was a great way to travel overland.
In 2011 the service from Tanjong Pagar was discontinued and the train service then began at Woodlands, near the Singapore-Malaysia border. The railway corridor from Tanjong Pagar to Woodlands has since been turned into a park (the Singapore Rail Corridor) so it’s unlikely that this line will ever be restored.
Then in 2015 the Woodlands-KL service was discontinued, and a shuttle train from Woodlands to Johor Bahru was introduced.
Also in 2015, the ETS (Electric Train Service) began operations from Kuala Lumpur to Gemas (which is about halfway to Johor Bahru). The electric train service was extended Johor Bahru in December 2025, so it now takes two trains to go from Singapore to Kuala Lumpur.
You need to book tickets individually as the train booking sites don’t book multiple sections on one ticket. Here is how to book train tickets from Singapore to Kuala Lumpur.

[The old Johor Bahru Station.]
Tickets to book for Singapore-Kuala Lumpur train
Tickets for each segment need to be booked individually, so it’s best to open a browser tab for each segment to make sure there is a seat available on every segment first before committing to a single ticket.
To do this, go to online.ktmb.com.my and do a search for each leg on separate browsers. You can also book via the online booking agent Baolau.
Train combinations from Singapore to Kuala Lumpur
Shuttle Tebrau 72: Woodlands – Johor Bahru (Shuttle Tebrau)
Depart Woodlands 08:30
Arrive JB Sentral 08:35
The first shuttle train to JB Sentral is not timed to connect to the JB-KL train.
Train 9510: Johor Bahru (JB Sentral) – Kluang (Intercity)
Depart Johor Bahru (JB Sentral) 08:40
Arrive Kuala Lumpur (KL Sentral) 13:00
If you want to get this morning service from JB, then you will need to cross the border by bus.
An alternative itinerary would be to stay in Johor Bahru overnight. That gives you a chance to explore the JB old town and not having to leave Singapore so early.
The second train of the day leaves in the afternoon, so you get the have the morning in Singapore
Shuttle Tebrau – 82
Depart Woodlands 15:00
Arrive JB Sentral 15:05
Platinum – 9532
Depart Johor Bahru (JB Sentral) 16:20
Arrive Kuala Lumpur (KL Sentral) 20:40
There are plans to add more ETS trains, so there should be a better morning connection in the future.
Kuala Lumpur to Singapore
Here is my guide on how to go from Kuala Lumpur to Singapore by train.
Bus from Singapore to Kuala Lumpur
If you’ve read all this and it all sounds too complicated, then book one of the many direct bus services from Singapore to Kuala Lumpur.
Read more about railways in Malaysia and other train travel articles.
Read more about the railways of Southeast Asia.

If you want to save money, take the overnight bus e.g. 2200 hrs depart golden mile. Here you also save on the hotel for that night, arrive in KL early in the morning
It’s a real shame they have put the station on hold in East Singapore. I have done the KL – Sin route quite a bit over the years and would certainly take the train over flying any day, but not until it’s more straight forward.
I’d also hope there to be immigration at both ends, similar to the Channel Tunnel, or least at one end. Not sure how easy this would be in practice.
Thanks sooo much for this very honest post. I WAS planning on doing this on my next visit but as a tourist with limited time I am going to pass on this
Thanks!
Thank you James Clark, this is an extremely useful post. I was thinking of taking the train from SG-KL over a 3 day break, but have now decided against it as it’s too time consuming and cumbersome. Your post helped provide a detailed insight and a direct train from SG-KL (like in the past) would’ve been a great alternative than a coach ride or flying.
The HSR between SG-MY would’ve been a great addition to improve connectivity between the two close neighbours, but cost has to be considered so that it does not burden tax payers. It must also be more efficient than flying.
Glad to be of help! I think now that the East Coast Rail Link was renegotiated for a better price the same will also happen for this important project.
Interesting post, thanks!
Looking online now though, it seems the JB to Gemas train departs at 8.45am, meaning its impossible to do Woodlands-KL in a single day.
Such a shame.
Hi Pete,
thanks for letting me know of the timetable change, I’ve now updated it. As the Woodlands train arrives at JB at 8.35 you should still be able to make the 8.45. Customs is cleared at Woodlands so you should just be able to cross platforms. It’s a tight connection, but I would assume the 5 minute Woodlands-JB service doesn’t suffer from delays.
Thnks !
Has the train from Woodland to JB resume?
Is the ETS service from JB to KL starting operation in 2022?
The problem with the Tebrau Shuttle is that they sell tickets by the seats, but many people just end up standing for the 5 minute journey anyway. They could have sold more tickets if they got rid of half the seats so tickets end up selling out but there’ll be no shows and it will only be half full. The good alternative is that there are plenty of buses that go across the causeway to get to JB Sentral.
I recently took the train from KL Sentral to Kluang and then Kluang to JB Sentral and made to Singapore by bus in record time. Left at 7.45am and arrived just after 3pm.
Yes it would have been an easy win to convert the Tebrau Shuttle into a transit-style carriage. Good to know about the improve travel time. I was going to wait until the whole line is complete, so hopefully there are no more delays.
This guide clearly explains how train travel from Singapore to Kuala Lumpur has changed over the years and shows the current two-train route in a simple, easy to understand way for travellers.