Railway Stations

Station Codes

Q. I see messages referring to trains going to "CBE" or "SBC"; what are these codes?

IR uses alphabetic codes to identify the railway stations. Some selected codes are given below. The selection below is not really meant as an aid to the traveller; many entries are chosen for railfan interest and may be otherwise obscure.

Extensive lists of station codes are available:

  • See the section on books for details of a publication, "Alphabetical List of Indian Railway Stations", which has a pretty comprehensive list of station codes.
  • You can also use the Indian Railways Reservation Online web site to get station codes for various stations.
  • See the related sections listed above for some large lists of station codes.

Many codes have obvious connections to the names of the stations they represent (AGC = Agra Cantonment, ALD = Allahabad). Others are less obvious but nevertheless have some mnemonic value. Some codes were chosen not to conflict with other codes by adding or altering a letter (perhaps MAQ, ADI, etc. originated this way).

A few codes come from old spellings of places (BZA from Bezwada for today's Vijayawada). A 'C' sometimes stands for Cantonment; a 'J' for Junction; sometimes 'S' and 'N' stand for south and north. Letters 'X', 'Q', 'Z' are sometimes used when the code for one station has to be distinguished from the code for another of a similar name. But one can't go too far in analyzing the codes in this way.

Some codes are complete mysteries, such as HX for Cuddappah in the Guntakal division of SCR, and BXS for Pichchandarkovil in the Tiruchirapalli division of SR. PTC for Kodikkarai, another oddity, is likely explained by its former name, Point Calimere. Other odd ones are CHE (Srikakulam Road, VSKP-HWH line), CJ (Kanchipuram, probably from Canjeevaram Junction), and YP (Errupalem, perhaps from Yerrupalem?). Sometimes codes inadvertently spell out words, such as Seroni Road on CR, whose code is SEX.

In recent years (1991?), IR has changed some 2- and 3-letter codes for stations whose names have only 4 letters or fewer (e.g., Ajni) by making the name of the station itself the station code. Examples of these include Pune (PA became PUNE), Gaya (GYA became GAYA), Puri (PUI became PURI), Kota (KTT became KOTA), Adra (ADA became ADRA).

Important station codes that changed because the station name changed in recent years include BB (Bombay Victoria Terminus) which became CSTM (Chhatrapati Shivaji Terminus Mumbai), CLAT (Kurla Terminus) which became LTT (Lokmanya Tilak Terminus). A new code, MCT (Mumbai Central) has been introduced to replace BCT (Bombay Central) but the latter continues in use. On the other hand, sometimes station names change without any changes to the codes; e.g., MAS (Madras) for Chennai Central, and also Kolhapur (KOP) which was renamed Chhatrapati Sahuji Maharaj Station.

(See Ajai Banerji's article on station name changes.)

Different station codes are sometimes used for the same location served by different gauges. E.g., GIMB for Gandhidham BG, and GIM for the station on the meter-gauge route. INDB is the BG Indore code, and INDM the MG code. Sometimes these really are separate stations, even if located close to each other; sometimes the stations may be part of the same complex. The stations in such cases may or may not have separate station masters and other staff. Dadar is an interesting case as it has two codes DDR (on WR) and DR (on CR) both of which are part of a large station complex (all broad-gauge); the two stations have separate station masters and staff, as they belong to different zonal railways.

Station codes are, as a rule, purely alphabetic. All passenger stations certainly have codes that are solely alphabetic. However, IR also uses codes to distinguish particular signal cabins and minor halts, and sometimes these may have digits as well. An example is 'M5B' for Cabin Mile 5B on the Budge Budge section of ER. A few codes have other characters such appended to them, perhaps to distinguish particular signal cabins within a station's jurisdiction -- these therefore can also exceed the usual 4-character limit on station codes. E.g., IBP No. 10 is 'IBP10' (on ER) (?? an intermediate block post?); Sitarampur Link Cabin is 'STN L/C'

There are station codes that are single letters, as well as those that are four letters long (and perhaps one that is five letters long). These and other miscellanea about station codes can be found in the section on trivia.

Some selected station codes are given below.

Other station abbreviations

Q. What about the abbreviations used for suburban services, and other (non-standard) station abbreviations?

In some places -- especially Mumbai -- special codes are used to indicate the destination of a suburban train (either on the rake (CR), or on platform indicators (CR/WR)). These are not the official station codes, but usually just 1- or 2-letter mnemonics.

Some of the commonly-used ones around Mumbai are:

  • A : Andheri (WR), Ambarnath (CR)
  • AD : Andheri (CR)
  • AS : Asangaon
  • B : Bandra (CR Bandra locals via the Harbour Line)
  • BL : Badlapur
  • Bo : Borivali
  • BR, BP : Belapur
  • BY : Bhayander
  • C : Kurla (from Coorla), also Churchgate??
  • CH : Kurla via Harbour line
  • CM : Chembur
  • D : Dadar
  • G : Ghatkopar
  • Go : Goregaon
  • K : Kalyan
  • M : Mankhurd, also Malad??
  • MU, MB : Mumbai (used at Itarsi, Bhopal, etc.)
  • N : Kasara (from North-East line)
  • PL, P : Panvel
  • S : Karjat (from South-East line)
  • T : Thane
  • TL : Titwala
  • V : Vashi, also Virar?
  • Vs : Vasai Road

'Y' is often used to indicate an empty rake returning to its shed for service (at termini -- Churchgate, CSTM)

Other 2- or 3-letter codes are sometimse used to refer to stations, in a seemingly ad hoc manner. E.g., at Nellore, Chennai Central bound trains are marked 'CEN' on the indicator boards. At Bhopal and Itarsi, Mumbai-bound trains are marked 'MU' or 'MB'.

Station classes

Q. What are the different classes of stations?

IR's classification of stations is linked to their rules for block system working.

  • Class A: Such a station is one where the Line Clear indication for the block may not be given unless the line where the train is to be received is clear at least for up to the starter signal (or, in some cases, for at least 400m ahead of the home signal). These are stations where many trains normally run through without stopping at a high speed, hence the need for the safety margin to prevent accidents in cases of trains overrunning signals. [4/00]
  • Class B: Such a station is one where the Line Clear indication may be given before the section of the line within the station has been cleared for reception of a train. Branch lines and routes with lower running speeds fall into this category.
  • Class C: This is a station (or block hut) marking an end of a block section, with light traffic or where no trains are booked to stop, such as an intermediate block post. (Sometimes these stations exist only in the form of a signal cabin that controls the approach to another station.) Permission to approach may not be given for a train unless the whole of the last preceding train has passed complete at least 400m beyond the home signal and is known to be continuing on its journey.
  • Class D: This is a station which does not form the boundary of a block section but which does form a stopping place for trains. Trains are stopped by various ad hoc arrangements prescribed in view of the local conditions -- the driver may simply know to stop the train there, or it may be flagged down on demand, etc. Also known as a non-block station or flag station.

Stations of classes A through C are known as block stations. The Class C stations are also sometimes known as block huts or block posts. Class D stations are known as non-block stations - they do not mark the ends of block sections. (Note that there also exist Intermediate Block Posts where block sections can be terminated without the presence of a station.)

Any station that is not classified under one of the classes A through D is known as a Special Station and must use specific working rules issued by the Commissioner of Rail Safety.

Sometimes stations are classified as Class A if there is a bridge or steep gradient just before the station in one or both directions, so that it is not safe for trains to stop there before entering station limits.

See the section on signal placement at stations for details of how signals vary among the different classes of stations.

Interlocking standards Stations are also classified based on the interlocking mechanisms used ('Standard I', etc.). See the classification of stations based on interlocking standards for more information.

Commercial Classification: Stations are also classified based on their commercial importance into categories 'A', 'B', ... etc., which is rather confusing. The particular classification scheme used has to be inferred from the context. In the commercial importance classification scheme, a non-suburban station with annual passenger earnings over Rs 60 million is a Category A station. Category B stations have earnings between Rs 30 million and 60 million. Any suburban station not falling into the 'B' category is considered to be a Category C station. Non-suburban stations with earnings between Rs 10 million and 30 million are Category D stations while non-suburban stations with lower earnings fall into Category E. Halt stations are classified as Category F stations. Interestingly, the commercial classification determines many of the construction aspects of the station: Stations of Category A or C have high level platforms, while those in categories B and D have low level platforms. Statiosn of categories E and F have only rail-level platforms.

Stations: Miscellaneous

Q. How many stations does IR have?

This number is naturally a moving target, as IR is constantly opening new stations. Moreover, it is difficult to get a precise count of "stations" when considering junctions that have different gauges, stations with remote or differently named cabins or signalling sheds, derelict or abandoned stations, metropolitan areas with many stations and many branch lines that sometimes run parallel or intersect repeatedly, etc.

As of 1999, IR's official web site claimed a total count of 6984 stations. An independent count from compiled timetable and map data (Larry Webber, 1999) yields a much higher number around 7950. IRIEEN publications of recent times [3/99] have talked of "over 7500" stations being supplied with electricity, which is another data point. (Trivia note: IRIEEN also claims that of these, about 125 get their electricity supplies entirely by solar energy systems.)

Q. Why are so many railway stations named "[something] Road"?

The "Road" after the station indicates that it's the nearest railhead for that particular town. The road to that town originates at this station:you still need to travel a while by road to get to that town. There are a number of examples: Kodaikanal Road, Khurda Road, Mantralayam Road, Jajhpur Kheonjar Road, Nasik Road, etc. Jajpur Keonjhar Road is an interestingly named station as the station serves as the railway access point for two towns, Jajpur which is 32km south-east of the station and Keonjhar which is 127km north-west of the station.

At some such "Road" stations, e.g., Kodaikanal Road, there exists a Railway Out Agency, which is an agency which can issue combined road-rail tickets to passengers, and which operates the road portion of the journey from the station to the town. The bus connections are provided to coincide with train arrivals. Out agencies used to be listed in the Indian Bradshaw before it ceased publication in its detailed form.

Q. What other suffixes such as 'Road' are used for station names in India?

See the list of common suffixes in Indian place names (which is a general, not railway-specific list). Many suffixes are self-explanatory. For instance, many cities have a Cantonment station which used to be where the British established military cantonments (and where significant military establishments may still exist. In addition to the Indian place name suffixes, English suffixes such as 'Park', 'Fort', 'Beach', are quite common, as are suffixes like 'South', 'East', etc. If one goes through the list of IR station names, many unusual and odd names come to light. On the Neral-Matheran line, a station is named 'Water Pipe', solely because it is near the water supply pipes that run close by. The same line has a halt 'Aman Lodge', named after the hotel of the same name run by the state tourism bureau. Several other such examples can be found elsewhere.

Q. Why do some stations have the state names or other regional names as suffixes? E.g., Chandrapur (Maharashtra) or Srirampur (Assam)?

This is done when there may be other towns of the same name elsewhere that may perhaps be as prominent or even better known than the station in question. Adding the state name as a suffix helps to disambiguate the station from the other towns of the same name. E.g., Berhampur (West Bengal) and Berhampur (Orissa). Hyderabad station is often referred to in older documents as Hyderabad Deccan, to distinguish it from the other Hyderabad of British India (in Sindh, now in Pakistan). Similarly, there are Hingoli Deccan (to distinguish the better-known one from the one in Rajasthan) and Kohir Deccan.

Unusual station names

There are many odd or intriguing station names on the IR network. A couple of them are listed below.

  • Mole Station in Bombay (no longer existent). A 'mole' is a breakwater. Bombay Harbour was created by breakwaters, and the Mole Station was located within the harbour area, at Ballard Pier. Mole Station is known for being the starting point of the well-known Boat Train in the early days of the railways.
  • Champion Reef on the Bangarpet - Marikuppam BG line has nothing to do with reefs in the ocean, but is so named for a large vein or lode of gold found in the area, part of the Kolar Gold Fields.

Q. Why are there so many express and long-distance trains to or from obscure locations like Manduadih, Habibganj, etc.?

Often, the terminus for long-distance trains into a city or town is not the railway station that is the "main" station for that town, but rather some outlying or suburban station that can better handle the long-distance traffic. The names of the trains, unfortunately, often reflect these actual termini rather than the "real" destination to which service is being provided. Similarly, sometimes a nearby station is used for services to an intermediate city as well, instead of a station at the city. For e.g.

  • New Delhi services may terminate at Hazrat Nizamuddin or Sarai Rohilla.
  • Mumbai services may terminate at Dadar, Kurla, or Bandra.
  • Bhopal services may terminate at Habibganj.
  • Calcutta services may terminate at Howrah or Sealdah.
  • Chennai (Madras) services may terminate at Egmore or Tambaram
  • Varanasi services may terminate at Manduadih.
  • Jaipur services may terminate at Durgapura.
  • Hyderabad services may terminate at Kacheguda.
  • Ranchi services may terminate at Hatia.
  • Nagpur services may terminate at Itwari.
  • Patna services may terminate at Rajendra Nagar.
  • Bangalore services may terminate at Yeshwantpur [5/01]

Similarly, for intermediate stations:

  • Kazipet for Warangal
  • Shrirampur for Belapur
  • Katpadi for Vellore
  • Pratapnagar or Vishwamitri for Vadodara (Baroda) (NG)

Q. What's the difference between Vadodara and Baroda? And other stations that have changed names.

Many towns have changed names over the years. In many cases the change in the spelling of a place stems from a desire for the name to more closely reflect the pronunciation of the name in the local language. Older spellings were generally assigned in the Roman script by the British and in some cases did not correspond closely to the spoken version of the name.

The list below gives several instances of changed names. The column on the left is the IR spelling of the name today. In many cases (especially for places in Kerala, the spelling on the right (the non-railway spelling) is actually newer, being used everywhere except in railway contexts).

  • Alleppey -- Alappuzha
  • Balasore -- Baleshwar
  • Bardhhaman -- Burdwan
  • Bharuch -- Broach
  • Brahmapur -- Berhampur
  • Calicut -- Kozhikode
  • Cannanore -- Kannur
  • Chengalpattu -- Chingleput
  • Cochin -- Kochi
  • Chennai -- Madras
  • Guwahati -- Gauhati
  • Jalandhar -- Jullender
  • Kolkata -- Calcutta
  • Mumbai -- Bombay
  • Palghat -- Palakkad
  • Pune -- Poona
  • Quilon -- Kollam
  • Sewagram -- Wardha East
  • Sridham -- Gotegoan
  • Srirampur -- Serampore
  • Tarangambadi -- Tranquebar
  • Tellicherry -- Thalasseri
  • Thiruchchirapalli -- Trichinopoly
  • Trichur -- Trissur
  • Trivandrum -- Thiruvananthapuram
  • Udhagamandalam -- Ootacamund (Ooty)
  • Vadodara -- Baroda
  • Varanasi -- Benares
  • Vasai -- Bassein
  • Vijayawada -- Bezwada
  • Vishakhapatnam -- Waltair

Where can I find information on Victoria Terminus (now Chhatrapati Shivaji Terminus)?

See pages at mumbainet.com., TIFR, and a page about its World Heritage Site status. (Central Railway's web pages on CSTM appear to have been discontinued)

Q. Are there two Dadar stations? Are there stations shared by two or more zones or divisions?

Some stations are physically in one building complex but are considered separate stations for operational and administrative reasons. Usually, these oddities reflect the historical development of the station, where more than one railway company in British India served that station.

The best example of this is Dadar, which actually consists of one station under WR (code ‘DDR’) and one under CR (code ‘DR’). Sometimes the separation is on the basis of the gauge of lines. At Ahmedabad, the BG lines are under Vadodara division (soon to be Ahmedabad division) whereas the MG lines are under Rajkot division. Some other examples are listed below:

  • (Old) Delhi is shared between Bikaner and Delhi divisions
  • Howrah is shared by ER and SER
  • Hazrat Nizamuddin is shared by NCR and NR
  • Akola is shared by SCR and CR. MG platforms at Akola are run by SCR while the BG ones are run by CR's Bhusawal Division.
  • Mathura Jn. is shared by WR and NR (BG), and by NER (MG).
  • Mughalsarai is shared by NR and ER
  • Nagpur under CR is shared by SECR's Nagpur division as well -- SECR's NG lines terminate next to the BG platforms of CR, and SECR administers that NG portion of the station. Staff at SECR NG platforms of Nagpur belong to CR but are paid their salary by SECR!
  • NR and NER share several stations. Lucknow, Varanasi, Allahabad, Bareilly, Shahjahanpur, Shahganj, and others have their BG portions under NR and their MG portions under NER. In the case of Lucknow both zones have divisional headquarters there.
  • Wadi is under CR's Solapur division, but shared with SCR as well.
  • Malda Town is a divisional headquarters for ER, but used to be an NFR station and still has NFR's main BG diesel shed.
  • Chindwara has SECR NG lines terminating at the station and also BG lines belonging to CR terminating there.

Selected station codes

A few commonly encountered station codes are given here. For more extensive lists please consult one of the pages mentioned above in ‘Related Sections’.

Code Name Code Name Code Name
ABRAbu Road ADIAhmedabad AGCAgra Cantonment
AIIAjmer AJJArakkonam Junction AJNIAjni (was AQ)
ALDAllahabad AMIAmravati ASNAsansol
ASRAmritsar ATIAttari BAMYBandra Marshalling Yard
BBQBasin Bridge Junction BBSBhubaneshwar BBVTBombay Victoria Terminus (now CSTM), also BB
BCT/BCL Bombay Central (Terminus / Local) (also MCT) BDTSBandra Passenger Terminus BLValsad (from Bulsar)
BNCBangalore Cantt. BNCEBangalore East BNDMBondamunda
BPLBhopal BPQBallarshah BRCVadodara Jn. (from Baroda Cantt.)
BSBVaranasi Jn. (formerly Benaras Cantt.) BSLBhusaval BSPBilaspur
BVIBorivli BWNBarddhaman (Burdwan) BWTBangarapet Jn.
BZAVijayawada (from the Beziawada) CAPEKanyakumari (from Cape Comorin) CBECoimbatore
CCGChurchgate CDGChandigarh CHTSCochin Harbour Terminus
CLAKurla Jn. (from Coorla), see also LTT CNBKanpur Central (from Cawnpore) CSTMChatrapati Shivaji Terminus Mumbai (was BBVT)
DDDaund Jn. (formerly Dhond) DDRDadar (on WR) DEDelhi (MG, Bikaner division)
DECDelhi Cantt. DEEDelhi Sarai Rohilla DGDindigul Junction
DHBDhanbad DLIDelhi Junction (Old Delhi, Delhi Division) DRDadar (on CR)
EDErode ERSErnakulam Jn. (colloquially Ernakulam South) ETItarsi Jn. (from Etarsee)
FDFaizabad FZRFirozpur GGondia Jn.
GDGonda (often spelled out in full, GONDA) GDGGadag Jn. GDRGudur
GHYGuwahati GIMBGandhidham (BG) GKPGorakhpur
GMOGomoh GOCGolden Rock GTLGuntakal Jn.
GWLGwalior GYGooty GZBGhaziabad
HWHHowrah HXCudduppah(code unrelated to name!) HYBHyderabad
IGPIgatpuri JBPJabalpur JATJammu Tawi
JHSJhansi Jn. JPJaipur JTJJolarpettai Jn.
JUJodhpur Jn. KCGKacheguda KGPKharagpur
KJMKrishnarajapuram KJTKarjat KLKKalka
KOPKolhapur (Chhatrapati Sahu Maharaj Terminus) KOTAKota KTEKatni Jn.
KYNKalyan KZJKazipet Jn. LDHLudhiana
LGDLallaguda LJNLucknow (NER) LKOLucknow (NR)
KYNKalyan KZJKazipet Jn. LDHLudhiana
LTTLokmanya Tilak Terminus (new terminus for Kurla, former code CLA) MAOMadgaon MAQMangalore
MASChennai(Madras) Central MDUMadurai Jn. MFPMuzaffarpur
MGSMughalsarai MHOWMhow MLDTMalda Town
MMRManmad MRJMiraj Jn. MSChennai Egmore (from Madras)
MTJMathura Jn. MUIManduadih (suburb of Varanasi) MYSMysore
MZSMurkongselek NCJNagercoil Jn. NDLSNew Delhi
NGPNagpur NKNasik Rd. NJPNew Jalpaiguri
NKJNew Katni Jn. NZMHazrat Nizamuddin PAPune (old, from Poona; now PUNE)
PGTPalghat PNBEPatna Junction (from Bankipore) PTKPathankot
PTRPatratu PUNEPune (also often PA) QLNQuilon
RRaipur Jn. RCRaichur RERewari
RJTRajkot Jn. RMMRameswaram RNCRanchi
RTMRatlam Jn. RURenigunta Jn. SSrirangapatna
SASalem Jn. SBCBangalore City (from South Bangalore City) SCSecunderabad
SDAHSealdah (in Calcutta) SMEShimoga SOESheopur Kalan
SRCSantragachi SRRShoranur Jn. STSurat
SURSolapur TATATatanagar Jn. TDLTundla Jn.
TENTirunelveli TKDTughlakabad TPJTiruchirapalli Jn.
TPTYTirupati TSKTinsukia TVCTrivandrum Central
UBLHubli UMBAmbala Cantt. (from Umballah) VKZVenkatanarasimha-
rajuvaripeta (longest station name on IR!)
VMVillupuram Jn. VRVirar VSGVasco da Gama
VSKPVishakhapatnam VTAVatva WADIWadi Jn.
WLWarangal WRWardha Jn. YPRYeshwantpur
Note: This site is not officially affiliated with Indian Railways! The official web site of Indian Railways is: http://www.indianrailways.gov.in
Site contact: webmaster@irfca.org
Copyright © 2010, IRFCA.org. About IRFCA  Contact Us  Search this site  Site Map  Links   Acknowledgements  Legal Information & Disclaimers