# KTM West Coast railway line

The KTM West Coast railway line is a main railway line in Malaysia. It runs from Padang Besar close to the Malaysia–Thailand border in Perlis (where it connects with the State Railway of Thailand) to the Woodlands Train Checkpoint in Singapore. Running near parallel to the West Coast and serving the West Coast states of Peninsular Malaysia. The line is owned and used entirely by Keretapi Tanah Melayu (KTM). Past Padang Besar, the line continues on to become the Thai Southern Line, which continues up towards Hat Yai and Bangkok.
The 1,151-kilometre line is busier than its east coast counterpart, the East Coast railway line since it is double tracked and electrified for most of its route, and has more services. The line handles a variety of passenger train services such as KTM ETS services, KTM Intercity services, State Railway of Thailand International Express services, KTM Komuter services within the Klang Valley and the George Town Conurbation, and freight trains. Of this total length, more than 759 km is double-tracked and electrified, with the entire line except the Singapore section to be fully double-tracked and eletrified by end 2025.
Major stations on the line include KL Sentral in Kuala Lumpur, Butterworth in Penang, Johor Bahru Sentral in the south in Johor and Woodlands Train Checkpoint in Singapore.

## History

The West Coast railway line was developed in stretches on June 1, 1885, with the opening of the Taiping–Port Weld Line, and 1932 when the line opened up to Tanjung Pagar, thus spanning the entire west coast of Peninsular Malaysia from Padang Besar on the Malaysia–Thai border to Singapore. The line began with the construction of branches linking coastal ports with inland tin mining areas before they were gradually linked up by the main truck line running through the interior of the West Coast states of Peninsular Malaysia.
The latest new lines to be built were the branch lines to West Port, North Port, Tanjung Pelepas, Pasir Gudang and the North Butterworth Container Terminal at the Port of Penang. The trunk line had also seen sections becoming disused, abandoned or even removed, with the latest being the closure and subsequent removal of the southernmost stretch of track between the Woodlands Train Checkpoint and Tanjong Pagar in 2011.

### Timeline

Source:
* 6 May 1890: Taiping - Kamunting
* 1 July 1892: Kamunting - Ulu Sepetang
* 7 November 1892: Kuala Lumpur - Rawang
* 1 June 1893: Kuala Lumpur - Pudu
* 10 July 1893: Rawang - Serendah
* 6 September 1893: Sungkai - Tapah Road
* 17 October 1893: Batu Gajah - Ipoh
* 27 April 1894: Kota Bharu - Batu Gajah
* 29 September 1894: Tapah Road - Talam
* 6 October 1894: Serendah - Kuala Kubu Bharu
* 1 March 1895: Pudu - Sungai Besi
* 18 March 1895: Talam - Kampar
* 1 May 1895: Kampar - Kota Bharu
* 1 June 1896: Ipoh - Tanjong Rambutan
* 27 November 1896: Tanjong Rambutan - Chemor
* 14 August 1897: Sungai Besi - Kajang
* 5 July 1897: Chemor - Sungai Siput
* 1 July 1898: Sungai Siput - Enggor
* 1 July 1899: Prai - Bukit Mertajam
* 1 September 1899: Ulu Sepetang - Pondok Tanjong
* 1 November 1899: Krian River - Bagan Serai
* 1 August 1900: Kuala Kubu Bharu - Kalumpang
* 1 September 1900: Bukit Mertajam - Nibong Tebal
* 15 September 1900: Enggor - Kuala Kangsar
* 1 November 1900: Kalumpang - Tanjung Malim
* 1 May 1901: Bagan Serai - Alor Pongsu
* 1 July 1901: Kuala Kangsar - Padang Rengas
* 1 February 1902: Alor Pongsu - Pondok Tanjong
* 1 May 1902: Taiping - Bukit Gantang
* 1 May 1902: Nibong Tebal - Krian River
* 14 June 1902: Kajang - Bangi
* 1 February 1903: Bangi - Batang Benar
* 2 April 1903: Batang Benar - Seremban
* 15 July 1903: Bukit Gantang - Padang Rengas
* 15 July 1903: Slim River - Tanjung Malim
* 15 August 1903: Sungkai - Slim River
* 15 July 1905: Seremban - Tampin
* 1 October 1906: Tampin - Gemas
* 1 March 1908: Gemas - Segamat
* 1 July 1909: Segamat - Johore Bahru
* 19 October 1914: Bukit Mertajam - Pinang Tunggal
* 1 March 1915: Pinang Tunggal - Gurun
* 4 October 1915: Gurun - Alor Star
* 15 October 1917: Alor Setar - Bukit Ketri
* 1 March 1918: Bukit Metri - Padang Besar
* 17 September 1923: Johore Bahru - Woodlands

## Services

The West Coast railway line is served by a variety of train services:
* KTM Intercity
** Ekspres Rakyat Timuran between Tumpat and Johor Bahru Sentral.
*** The route between Gemas and JB Sentral is part of the West Coast Line while the route between Gemas and Tumpat is on the East Coast Line)
** Ekspres Selatan between Gemas and Johor Bahru Sentral.
** Shuttle Tebrau between Johor Bahru Sentral and Woodlands Train Checkpoint
* KTM ETS
** ETS Express (express service that only stops at fewer main stations)
*** Between KL Sentral and Ipoh
*** Between KL Sentral and Butterworth
*** Between KL Sentral and Padang Besar
** ETS Platinum (express service that only stops at major stations, one of 6 coaches upgraded to business class with free wifi, charging sockets, on board dining & single seats)
*** Between KL Sentral and Butterworth
*** Between KL Sentral and Padang Besar
** ETS Gold (stops at all major stations and a few minor stations)
*** Between KL Sentral and Ipoh
*** Between Segamat and Butterworth
*** Between Segamat and Padang Besar
** ETS Silver (stops at all stations)
*** Between KL Sentral and Ipoh
* KTM Komuter
** 1 Batu Caves-Pulau Sebang Line between Batu Caves and Pulau Sebang/Tampin.
** 2 Tanjung Malim-Port Klang Line between Tanjung Malim and Port Klang.
** 10 KL Sentral-Terminal Skypark Line between KL Sentral and Terminal Skypark. (suspended due to low ridership)
** 1 Butterworth–Ipoh Line between Butterworth and Ipoh.
** 2 Padang Besar–Butterworth Line between Padang Besar and Butterworth.
* International Express between Padang Besar and Bangkok's Krung Thep Aphiwat Central Terminal

## Projects
### Gemas–Johor Bahru electrification and double-tracking

After many years of announcements about the intention to upgrade the final stretch of single track of the West Coast Line, the Government began the public display exercise for the Gemas–Johor Bahru electrification and double-tracking project (EDTP) on 27 October 2015. The public display exercise, required for all development of new railways under Section 84 of Malaysia's Land Public Transport Act 2010, ran until 27 January 2016. Chinese company China Railway Construction Company (CRCC) has been awarded to build the Gemas–Johor Bahru electrification and double-tracking project.
The length of the line to be electrified and double-tracked is 197 km between Chainage 563.040 at Gemas to Chainage 754.180 at Johor Bahru. The project includes the construction of 11 stations at Segamat, Genuang, Labis, Bekok, Paloh, Kluang, Mengkibol, Rengam, Layang-Layang, Kulai and Kempas Baru, and 3 future stations at Tenang, Chamek and Senai. The upgraded line is supposed to cater for at least 22 services daily involving KTM ETS, KTM Intercity and shuttle train services. Electrification for the stretch will have the same specifications as that of the Seremban-Gemas stretch, name at 25 kV AC 50 Hz single phase and supplied via an overhead catenary. Train operations for this stretch will be integrated with the Train Control centres at KL Sentral and Gemas. The design speed for the tracks is 160 km/h.
Construction began in 2016 and is expected to be completed by the third quarter of 2025.
On 15 March 2025, Segamat became the first station on the EDTP to be served by the KTM ETS service, replacing Gemas as the suuthern terminal of the ETS service.

### Klang Valley Double Track Project

The project was implemented by Keretapi Tanah Melayu began in 2016 and phase 1 is expected to be completed by 2021. The project entails the rehabilitation of 42 km of tracks between Rawang and Salak Selatan as well as Sentul and Simpang Batu. This will focus on enhancing 16 stations along these routes and upgrade the existing signalling and electrification system. This will be reduced to just seven-and-a-half minutes once the KVDT is completed.
The 42km rehabilitation under Phase I, which are:
* Phase 1A (Rawang – Simpang Batu)
* Phase 1B (Kuala Lumpur – Simpang Bangsar)
* Phase 2 (Simpang Batu – Kuala Lumpur)
* Phase 3 (Sentul – Simpang Batu)
* Phase 4 (Simpang Bangsar – Salak Selatan)
Phase II is from Simpang Bangsar - Pelabuhan Klang and Salak Selatan - Seremban.

## Line network
### Main trunk line

The West Coast main trunk line stretches from Padang Besar on the Malaysia–Thailand border to the Woodlands Train Checkpoint in Singapore.
The main trunk line is double-tracked and electrified from Padang Besar to Segamat. From Segamat to Johor Bahru Sentral, the line is single-tracked and not electrified in some parts. Loops at stations allow trains to pass. Double tracking and electrification works are nearing completion. The line between Johor Bahru Sentral and the Woodlands Train Checkpoint will remain single-tracked and not electrified.
The West Coast railway line connects with the State Railway of Thailand at Padang Besar, while the East Coast line branches off at Gemas.

### Branch lines

The West Coast railway line includes several branch lines from the main trunk line, namely:
* Bukit Mertajam Junction to Butterworth
* Batu Junction to Batu Caves
* Port Klang/Bangsar Junction to Port Klang and West Port, with further branch lines:
** Subang Jaya to Terminal Skypark at the Sultan Abdul Aziz Shah (Subang) Airport
** Port Klang to Northport
** Pulau Indah to various West Port shipping terminals
* Skudai Junction to the Port of Tanjung Pelepas
* Kempas Baru to Pasir Gudang
The Bukit Mertajam Junction to Butterworth, Batu Junction to Batu Caves, Port Klang Junction to Port Klang station, as well as the branch line to Terminal Skypark is double tracked and electrified.
The line from Port Klang to Westport and its shipping terminals, as well as the branch lines between Skudai Junction and the Port of Tanjung Pelepas and the Kempas Baru and Pasir Gudang are single lines and not electrified.
There are also branch lines where the tracks exist but are not used for any service or closed are:
* Between Tapah Road and Teluk Intan (abandoned and not connected to the main line)
* Between Kuang, Batu Arang and Batang Berjuntai
* Between Connaught Bridge Junction, Klang Utara and Kuala Selangor
* Between Seremban and Port Dickson
* Between Tasek and Tanjung Rambutan (abandoned after double tracking, and not connected to the new main line, never used and meant as branch line compared to Teluk Intan branch line)
None of these disused branch lines are double tracked nor electrified.

### Stations
#### Main Trunk Line

| Station names | Cities or Towns served | Territory | Services | Major landmarks | Remarks |
| (Connects to Padang Besar branch line, Southern Line, Thailand) ||||||
| Padang Besar | Padang Besar | Perlis | ETS  2 | Padang Besar Immigration, Customs, Quarantine and Security (ICQS) Complex | |
| Bukit Ketri | Bukit Ketri | Perlis | 2 | | |
| Arau | Arau Pulau Langkawi | Perlis | ETS  2 | | |
| Kodiang | Kodiang | Kedah | 2 | | |
| Megat Dewa | | Kedah | | | Closed and demolished |
| Tunjang | | Kedah | | | Closed and demolished |
| Anak Bukit | Anak Bukit | Kedah | ETS  2 | | |
| Alor Setar | Alor Star | Kedah | ETS  2 | | |
| Kobah | Pendang | Kedah | 2 | | |
| Ladang Jenun | | Kedah | | | Closed and demolished |
| Gurun | Gurun | Kedah | ETS  2 | | |
| Sungai Petani | Sungai Petani | Kedah | ETS  2 | | |
| Pinang Tunggal | | Penang | | | Closed and demolished |
| Tasek Gelugor | Tasek Gelugor | Penang | ETS  2 | | |
| Penanti | | Penang | | | Closed and demolished |
| Simpang Ampat | Simpang Ampat | Penang | 1 | | |
| Nibong Tebal | Nibong Tebal | Penang | ETS  1 | | |
| Parit Buntar | Parit Buntar | Perak | ETS  1 | | |
| Bagan Serai | Bagan Serai | Perak | ETS  1 | | |
| Bukit Merah | Bukit Merah | Perak | | Bukit Merah Laketown Resort | Closed and demolished |
| Pondok Tanjung | | Perak | | | Closed and demolished |
| Kamunting | Kamunting | Perak | 1 | | |
| Taiping | Taiping | Perak | ETS  1 | | |
| Bukit Berapit | | Perak | | | Closed and demolished |
| Padang Rengas | Padang Rengas | Perak | ETS  1 | | |
| Kuala Kangsar | Kuala Kangsar | Perak | ETS  1 | | |
| Salak Utara | | Perak | | | Closed and demolished |
| Sungai Siput | Sungai Siput | Perak | ETS  1 | | |
| Chemor | | Perak | | | Closed and demolished. Freights only |
| Tanjung Rambutan | Tanjung Rambutan | Perak | | | Closed |
| Tasek | Ipoh | Perak | | | Currently not in use |
| Ipoh | Ipoh | Perak | ETS  1 | | |
| Lahat | Lahat Simpang Pulai | Perak | | | Freights only |
| Batu Gajah | Batu Gajah | Perak | ETS | | |
| Kota Bharu | Gopeng | Perak | | | Freights only |
| Malim Nawar | Malim Nawar | Perak | | | Closed and demolished |
| Kampar | Kampar | Perak | ETS | Universiti Tunku Abdul Rahman (UTAR) | |
| Tapah Road | Tapah Cameron Highlands | Perak | ETS | | |
| Sungkai | Sungkai | Perak | ETS | | |
| Trolak | Trolak | Perak | | | Closed and demolished |
| Slim River | Slim River | Perak | ETS | | |
| Behrang | Behrang | Perak | | | Currently not in use |
| Tanjung Malim | Tanjung Malim | Perak | ETS 2 | Sultan Idris Education University (UPSI) | |
| Kalumpang | | Selangor | | | Closed and demolished. |
| Kerling | | Selangor | | | Closed and demolished. |
| Kuala Kubu Bharu | Kuala Kubu Bharu | Selangor | ETS 2 | | Replaced the nearby station formerly Kuala Kubu Road. |
| Rasa | Rasa | Selangor | 2 | | |
| Batang Kali | Batang Kali | Selangor | ETS 2 | | Replaced the nearby station formerly Ulu Yam. |
| Serendah | Serendah | Selangor | 2 | | |
| Rawang | Rawang | Selangor | ETS 2 | | |
| Kuang | Kuang | Selangor | 2 | | |
| Sungai Buloh | Sungai Buloh | Selangor | ETS 2 Interchange: 12 | | |
| Kepong Sentral | Kepong Bandar Sri Damansara | Selangor | ETS 2 Interchange: 12 | | |
| Kepong | Kepong | Kuala Lumpur | 2 | | |
| Segambut | Segambut | Kuala Lumpur | 2 | | |
| Putra | Kuala Lumpur (city centre) | Kuala Lumpur | 1 2 Interchange: 3 4 | | |
| Bank Negara | Kuala Lumpur (city centre) | Kuala Lumpur | 1 2 Interchange: 3 4 | | |
| Kuala Lumpur | Kuala Lumpur (city centre) | Kuala Lumpur | ETS 1 2 Interchange: 5 9 | | |
| Kuala Lumpur Sentral | Kuala Lumpur (city centre) Brickfields | Kuala Lumpur | ETS 1 2 Interchange: 5 6 7 8 9 10 | | Central interchange for intercity and commuter trains, rapid transit, monorail and airport rail links |
| Mid Valley | Mid Valley City | Kuala Lumpur | 1 Interchange: 2 5 | | |
| Seputeh | Seputeh | Kuala Lumpur | 1 | | |
| Salak Selatan | Salak South | Kuala Lumpur | 1 | | |
| Bandar Tasik Selatan | Bandar Tasik Selatan Bandar Tun Razak | Kuala Lumpur | ETS 1 Interchange: 4 7 | Southern Integrated Terminal (TBS) | |
| Serdang | Seri Kembangan | Selangor | 1 | | |
| Kajang | Kajang | Selangor | ETS 1 Interchange: 9 | | |
| Kajang 2 | Kajang 2 Bandar Baru Bangi | Selangor | 1 | | |
| UKM | UKM Bangi Lama | Selangor | 1 | National University of Malaysia (UKM) | |
| Bangi | Bangi Lama | Selangor | 1 | | |
| Batang Benar | Batang Benar | Negeri Sembilan | 1 | | |
| Nilai | Nilai | Negeri Sembilan | 1 | | |
| Labu | Labu | Negeri Sembilan | 1 | | |
| Tiroi | Tiroi | Negeri Sembilan | 1 | | |
| Seremban | Seremban Kuala Pilah Port Dickson | Negeri Sembilan | ETS 1 | | |
| Senawang | Senawang | Negeri Sembilan | 1 | | |
| Sungai Gadut | Sungai Gadut | Negeri Sembilan | 1 | | |
| Rembau | Rembau | Negeri Sembilan | 1 | | |
| Pulau Sebang/Tampin | Pulau Sebang Malacca City Alor Gajah Tampin | Malacca | ETS 1 | Melaka Heritage City | Main station serving Malacca |
| Batang Melaka | Batang Melaka Jasin | Malacca | ETS | | Nearest Station to Jasin |
| Air Kuning Selatan | | Negeri Sembilan | | | Closed and demolished |
| Gemas | Gemas | Negeri Sembilan | ETS | | Interchange with East Coast railway line |
| Batu Anam | | Johor | | | Closed |
| Segamat | Segamat Muar Tangkak | Johor | ETS | | |
| Genuang | Genuang | Johor | | | Freights only |
| Tenang | Tenang | Johor | | | Closed |
| Labis | Labis | Johor | | | |
| Bekok | Bekok | Johor | | | |
| Beradin | | Johor | | | Closed and demolished |
| Jagoh | | Johor | | | Closed and demolished |
| Paloh | Paloh | Johor | | | |
| Batang Ridan | | Johor | | | Closed and demolished |
| Chamek | Chamek | Johor | | | Closed |
| Niyor | | Johor | | | Closed and demolished |
| Kluang | Kluang Batu Pahat Mersing | Johor | | | |
| Mengkibol | Mengkibol | Johor | | | Freights only |
| Renggam | Renggam | Johor | | | |
| Layang-Layang | Layang-Layang | Johor | | | |
| Sedenak | | Johor | | | Closed and demolished |
| Kulai | Kulai Pontian | Johor | | Senai International Airport | |
| Skudai | Skudai | Johor | | | Freights only |
| Tanjung Pelepas | Iskandar Puteri | Johor | | Port of Tanjung Pelepas | Freights only |
| Kempas Baru | Kempas | Johor | | | |
| Danga City Mall | Johor Bahru | Johor | | Danga City Mall | Closed |
| Johor Bahru Sentral | Johor Bahru Kota Tinggi Pontian & Woodlands | Johor | | Southern Integrated Gateway | Interchange with Shuttle Tebrau to Singapore |
| Woodlands Train Checkpoint | Woodlands | Singapore | | | Shuttle Tebrau services only |
| Bukit Timah | Bukit Timah | Singapore | | | Closed |
| Tanjong Pagar | Tanjong Pagar | Singapore | | | Closed |

#### Batu Junction–Batu Caves Branch Line

| Station names | Cities or Towns served | Territory | Services |
| Batu Junction between Segambut and Putra stations (Continue to main West Coast Line) ||||||
| Sentul | Sentul | Kuala Lumpur | 1 |
| Batu Kentonmen | Batu Kentonmen Jalan Ipoh | Kuala Lumpur | 1 |
| Kampung Batu | Bandar Baru Selayang Kampung Batu | Kuala Lumpur | 1 Interchange: 12 |
| Taman Wahyu | Taman Wahyu | Kuala Lumpur | 1 |
| Batu Caves | Batu Caves | Selangor | 1 |

#### Port Klang Junction–Port Klang Branch Line

| Station names | Cities or Towns served | Territory | Services | Major landmarks |
| Port Klang (Bangsar) Junction between KL Sentral and Mid Valley stations (Continue to main West Coast Line) ||||||
| Abdullah Hukum | Kampung Haji Abdullah Hukum Bangsar KL Eco City Mid Valley City | Kuala Lumpur | 2 Interchange: 1 5 | |
| Angkasapuri | Angkasapuri | Kuala Lumpur | 2 | |
| Pantai Dalam | Pantai Dalam | Kuala Lumpur | 2 | |
| Petaling | Kampung Pasir Jalan Klang Lama Taman OUG | Kuala Lumpur | 2 | |
| Jalan Templer | Jalan Templer and Petaling Jaya | Selangor | 2 | |
| Kampung Dato Harun | Kampung Dato Harun | Selangor | 2 | |
| Seri Setia | Seri Setia Sungai Way | Selangor | 2 | |
| Setia Jaya | Sungai Way Bandar Sunway | Selangor | 2 Interchange: B1 | |
| Subang Jaya | Subang Jaya | Selangor | 2 10 Interchange: 5 | |
| Terminal Skypark | Subang | Selangor | 10 | Sultan Abdul Aziz Shah Airport |
| Batu Tiga | Batu Tiga | Selangor | 2 | |
| Shah Alam | Shah Alam | Selangor | 2 | |
| Padang Jawa | Padang Jawa i-City UiTM | Selangor | 2 | |
| Bukit Badak | Jalan Bukit Badak, Klang | Selangor | 2 | |
| Klang | Klang (city centre) | Selangor | 2 | |
| Teluk Pulai | Teluk Pulai | Selangor | 2 | |
| Teluk Gadong | Teluk Gadong | Selangor | 2 | |
| Kampung Raja Uda | Kampung Raja Uda | Selangor | 2 | |
| Jalan Kastam | Jalan Kastam, Port Klang | Selangor | 2 | |
| Port Klang | Port Klang | Selangor | 2 | |
| (Continue to West Port) ||||||

#### Bukit Mertajam Junction–Butterworth Branch Line

| Station names | Cities or Towns served | Territory | Services | Major landmarks |
| Bukit Mertajam Junction between Simpang Ampat and Tasek Gelugor stations (Continue to main West Coast Line) ||||||
| Bukit Mertajam | Bukit Mertajam Kulim | Penang | ETS  1  2 | |
| Bukit Tengah | Bukit Tengah | Penang | 1  2 | |
| Perai | Perai | Penang | Freights only | |
| Butterworth | Butterworth | Penang | ETS  1  2 | Penang Bridge Penang Sentral Port of Penang |