Train punctuality in India, measured
1,69,03,413 arrival records · 3,335 trains · 5,222 stations · 2025-08-31 to 2026-09-16
Indian Railways publishes punctuality as a single network percentage. This is the same question asked one train at a time: of the runs we have a record for, how many arrived at the destination within 15 minutes of the time the timetable promised.
Across the 1,415 trains with enough of a record to rank, the median is 68% of runs on time. The spread either side of that is the interesting part.
20 of the 25 least punctual trains below leave their first station within 15 minutes and still arrive hours late. They are not dispatched late; they lose the time en route. It is also how you can tell these figures are not an artefact of a revised timetable — that would show as the same delay at the first stop as the last.
Least punctual
Ranked by the share of runs arriving within 15 minutes, lowest first.
Chhatrapati Shivaji Maharaj Terminus to Howrah Jn · 1,968 km · 203 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 8 hr 14 min
- 9 in 10 within
- 15 hr 5 min
- Typical, at origin
- 2 hr 41 min
Yog N Rishikesh to Puri · 2,386 km · 353 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 7 hr 56 min
- 9 in 10 within
- 14 hr 15 min
- Typical, at origin
- 25 min
Darbhanga Jn to New Delhi · 1,169 km · 328 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 7 hr 22 min
- 9 in 10 within
- 11 hr 57 min
- Typical, at origin
- 6 min
Barauni Jn to New Delhi · 1,182 km · 342 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 7 hr 14 min
- 9 in 10 within
- 12 hr 20 min
- Typical, at origin
- 13 min
Nsc Bose Itwari to Tatanagar Jn · 878 km · 285 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 6 hr 48 min
- 9 in 10 within
- 9 hr 30 min
- Typical, at origin
- 11 min
New Delhi to Barauni Jn · 1,182 km · 345 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 6 hr 39 min
- 9 in 10 within
- 12 hr 45 min
- Typical, at origin
- 1 min
Howrah Jn to Ahmedabad Jn · 2,088 km · 353 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 5 hr 49 min
- 9 in 10 within
- 6 hr 55 min
- Typical, at origin
- 3 min
Howrah Jn to Pune Jn · 2,015 km · 365 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 5 hr 40 min
- 9 in 10 within
- 12 hr 14 min
- Typical, at origin
- 3 min
Kantabanji to Howrah Jn · 778 km · 203 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 5 hr 33 min
- 9 in 10 within
- 8 hr 31 min
- Typical, at origin
- 2 min
Pune Jn to Danapur · 1,748 km · 239 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 5 hr 28 min
- 9 in 10 within
- 8 hr 21 min
- Typical, at origin
- 4 min
Howrah Jn to Chhatrapati Shivaji Maharaj Terminus · 1,968 km · 209 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 5 hr 23 min
- 9 in 10 within
- 8 hr 30 min
- Typical, at origin
- 0 min
Chhatrapati Shivaji Maharaj Terminus to Howrah Jn · 1,968 km · 353 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 5 hr 19 min
- 9 in 10 within
- 7 hr 27 min
- Typical, at origin
- 1 min
Lokmanya Tilak Terminus to Shalimar · 1,950 km · 205 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 5 hr 7 min
- 9 in 10 within
- 7 hr 17 min
- Typical, at origin
- 1 min
Pune Jn to Howrah Jn · 2,015 km · 353 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 5 hr 5 min
- 9 in 10 within
- 9 hr 54 min
- Typical, at origin
- 28 min
Howrah Jn to Chhatrapati Shivaji Maharaj Terminus · 1,968 km · 358 recorded arrivals
- Runs within 15 min
- 2%
- Typical, at destination
- 5 hr 1 min
- 9 in 10 within
- 8 hr 5 min
- Typical, at origin
- 1 min
Tatanagar Jn to Nsc Bose Itwari · 878 km · 286 recorded arrivals
- Runs within 15 min
- 3%
- Typical, at destination
- 4 hr 54 min
- 9 in 10 within
- 8 hr 43 min
- Typical, at origin
- 1 hr 46 min
Barabil to Howrah Jn · 398 km · 353 recorded arrivals
- Runs within 15 min
- 3%
- Typical, at destination
- 4 hr 50 min
- 9 in 10 within
- 10 hr 24 min
- Typical, at origin
- 47 min
Bilaspur Jn to Tatanagar Jn · 470 km · 299 recorded arrivals
- Runs within 15 min
- 3%
- Typical, at destination
- 4 hr 24 min
- 9 in 10 within
- 7 hr 26 min
- Typical, at origin
- 3 min
Chhatrapati Shivaji Maharaj Terminus to Howrah Jn · 1,968 km · 353 recorded arrivals
- Runs within 15 min
- 3%
- Typical, at destination
- 4 hr 14 min
- 9 in 10 within
- 6 hr 35 min
- Typical, at origin
- 1 min
Durg to Ara · 1,163 km · 347 recorded arrivals
- Runs within 15 min
- 3%
- Typical, at destination
- 4 hr 5 min
- 9 in 10 within
- 6 hr 48 min
- Typical, at origin
- 2 min
Lokmanya Tilak Terminus to Shalimar · 1,950 km · 344 recorded arrivals
- Runs within 15 min
- 3%
- Typical, at destination
- 4 hr 5 min
- 9 in 10 within
- 6 hr 52 min
- Typical, at origin
- 1 min
Shalimar to Lokmanya Tilak Terminus · 1,950 km · 203 recorded arrivals
- Runs within 15 min
- 3%
- Typical, at destination
- 4 hr 1 min
- 9 in 10 within
- 6 hr 4 min
- Typical, at origin
- 0 min
Shalimar to Lokmanya Tilak Terminus · 1,950 km · 344 recorded arrivals
- Runs within 15 min
- 3%
- Typical, at destination
- 4 hr 1 min
- 9 in 10 within
- 7 hr
- Typical, at origin
- 0 min
Ahmedabad Jn to Howrah Jn · 2,088 km · 353 recorded arrivals
- Runs within 15 min
- 3%
- Typical, at destination
- 3 hr 38 min
- 9 in 10 within
- 6 hr 3 min
- Typical, at origin
- 1 min
Dr Ambedkar Ngr (Mhow) to Shmata Vd Katra · 1,639 km · 353 recorded arrivals
- Runs within 15 min
- 4%
- Typical, at destination
- 3 hr 34 min
- 9 in 10 within
- 5 hr 44 min
- Typical, at origin
- 0 min
Most punctual
The same measurement, the other end of it.
Erode Jn to Sengottai · 442 km · 340 recorded arrivals
- Runs within 15 min
- 98%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 0 min
Indore Jn Bg to Gandhinagar Capital · 559 km · 358 recorded arrivals
- Runs within 15 min
- 98%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 1 min
Coimbatore Jn to Bangalore Cant · 377 km · 313 recorded arrivals
- Runs within 15 min
- 98%
- Typical, at destination
- 0 min
- 9 in 10 within
- 4 min
- Typical, at origin
- 2 min
Chennai Egmore to Tutimelur · 654 km · 358 recorded arrivals
- Runs within 15 min
- 97%
- Typical, at destination
- 0 min
- 9 in 10 within
- 1 min
- Typical, at origin
- 1 min
Coimbatore Jn to Mannargudi · 335 km · 365 recorded arrivals
- Runs within 15 min
- 97%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 1 min
Mgr Chennai Ctr to Narasapur · 655 km · 207 recorded arrivals
- Runs within 15 min
- 97%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 2 min
Jodhpur Jn to Mahesana Jn · 387 km · 302 recorded arrivals
- Runs within 15 min
- 97%
- Typical, at destination
- 1 min
- 9 in 10 within
- 4 min
- Typical, at origin
- 2 min
Kannur (Cannanore) to Thiruvananthapuram Central · 502 km · 261 recorded arrivals
- Runs within 15 min
- 96%
- Typical, at destination
- 0 min
- 9 in 10 within
- 6 min
- Typical, at origin
- 0 min
Ambala Cant Jn to Shri Ganganagar · 328 km · 365 recorded arrivals
- Runs within 15 min
- 96%
- Typical, at destination
- 0 min
- 9 in 10 within
- 1 min
- Typical, at origin
- 0 min
Thiruvananthapuram Central to Rameswaram · 777 km · 303 recorded arrivals
- Runs within 15 min
- 96%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 1 min
Valsad to Dahod · 346 km · 361 recorded arrivals
- Runs within 15 min
- 96%
- Typical, at destination
- 0 min
- 9 in 10 within
- 3 min
- Typical, at origin
- 0 min
Gandhinagar Capital to Indore Jn Bg · 559 km · 365 recorded arrivals
- Runs within 15 min
- 96%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 0 min
Chennai Egmore to Kayalpattinam · 772 km · 358 recorded arrivals
- Runs within 15 min
- 96%
- Typical, at destination
- 0 min
- 9 in 10 within
- 3 min
- Typical, at origin
- 0 min
Bangalore Cant to Coimbatore Jn · 377 km · 313 recorded arrivals
- Runs within 15 min
- 96%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 2 min
Patna Jn to Gomtinagar F · 544 km · 312 recorded arrivals
- Runs within 15 min
- 96%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 0 min
Chhatrapati Shivaji Maharaj Terminus to Dhule · 384 km · 360 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 2 min
Wardha Jn to Bhusaval Jn · 314 km · 363 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 6 min
- Typical, at origin
- 0 min
Gwalior Jn to Ratlam Jn · 681 km · 209 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 3 min
- Typical, at origin
- 0 min
Kota Jn to Bina Jn · 303 km · 365 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 11 min
- Typical, at origin
- 1 min
Bina Jn to Kota Jn · 303 km · 353 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 10 min
- Typical, at origin
- 0 min
New Delhi to Daurai (Ajmer) · 450 km · 365 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 4 min
- Typical, at origin
- 0 min
Madan Mahal to Rani Kamlapati(Bhopal) · 338 km · 353 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 0 min
- Typical, at origin
- 0 min
Thiruvananthapuram Central to Kozhikkode (Calicut) · 399 km · 365 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 7 min
- Typical, at origin
- 0 min
Mayiladuturai Jn to Coimbatore Jn · 362 km · 313 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 8 min
- Typical, at origin
- 0 min
Mgr Chennai Ctr to Coimbatore Jn · 497 km · 313 recorded arrivals
- Runs within 15 min
- 95%
- Typical, at destination
- 0 min
- 9 in 10 within
- 4 min
- Typical, at origin
- 1 min
How this is measured
Each record is one train’s reported arrival delay in minutes at one station on one date, against its published schedule. They come from Indian Railways’ own running-status feed, collected daily and kept for the whole period rather than sampled.
Graded at the destination. Averaging a train’s delay across every stop produces larger numbers and is wrong: a train that leaves three hours late is three hours late at every stop afterwards, so it counts one bad departure many times over. The figure here is how late the train was when it reached the end of its run.
Only trains with at least 200 recorded arrivals at their destination and a run of 300 km or more are ranked. The first floor keeps out seasonal specials whose record is a handful of days; the second keeps out suburban services, where twenty minutes late means something different. Every row shows its own sample size.
“Typical” is the median, not the mean — one six-hour failure should not become the headline for a train that is usually forty minutes down. “9 in 10 within” is the 90th percentile: nine runs in ten arrived at least that punctually.
What this does not say. It does not say why a train is late. The records show delay, not cause, and congestion, weather and engineering work would all be guesses. It is not comparable with Indian Railways’ published punctuality figures, which measure a different thing over a different window. And it is not a ranking of zones or divisions: the railway that owns a train is not necessarily the one whose track it lost the time on.
Every train above links to its own page, where the same record is broken down station by station and month by month. The method behind using these delays to judge a connection is written up separately, and where the data comes from is listed in full.
These figures are free to quote with a link to this page. If a number here looks wrong, it is worth telling us — corrections are read.
RailRoute is an independent service. It is not affiliated with, endorsed by, or operated by Indian Railways, IRCTC, or any Government of India entity. Train names and station codes are used for identification only.
RailRoute does not sell tickets and never takes a payment. Fares are estimates and seat availability changes continuously; the exact fare and the actual booking are confirmed on IRCTC.