| # | Station | Arrives | Departs | Halt | Dist. | Day |
|---|---|---|---|---|---|---|
| 1 | Delhi Jn. DLI Source | Start | 6:25 AM | — | 0 | 1 |
| 2 | Delhi Shahdara DSA | 6:36 AM | 6:38 AM | 2m | 6 | 1 |
| 3 | Sahibabad SBB | 6:47 AM | 6:49 AM | 2m | 13 | 1 |
| 4 | Ghaziabad GZB | 7:14 AM | 7:16 AM | 2m | 20 | 1 |
| 5 | Pilkhua PKW | 7:45 AM | 7:47 AM | 2m | 46 | 1 |
| 6 | Hapur HPU | 7:58 AM | 8:00 AM | 2m | 57 | 1 |
| 7 | Simbhooli SMBL | 8:16 AM | 8:18 AM | 2m | 77 | 1 |
| 8 | Garhmuktesar GMS | 8:27 AM | 8:29 AM | 2m | 87 | 1 |
| 9 | Gajraula Jn GJL | 8:49 AM | 8:51 AM | 2m | 107 | 1 |
| 10 | Amroha AMRO | 9:11 AM | 9:13 AM | 2m | 130 | 1 |
| 11 | Moradabad MB | 9:50 AM | 9:55 AM | 5m | 161 | 1 |
| 12 | Raja Ka Sahaspr RJK | 10:19 AM | 10:21 AM | 2m | 185 | 1 |
| 13 | Chandausi Jn CH | 10:51 AM | 10:56 AM | 5m | 205 | 1 |
| 14 | Asafpur AFR | 11:08 AM | 11:10 AM | 2m | 218 | 1 |
| 15 | Dabtara DUB | 11:21 AM | 11:23 AM | 2m | 229 | 1 |
| 16 | Karengi KEG | 11:31 AM | 11:33 AM | 2m | 234 | 1 |
| 17 | Aonla AO | 11:46 AM | 11:48 AM | 2m | 247 | 1 |
| 18 | Nisui NSU | 11:58 AM | 11:59 AM | 1m | 254 | 1 |
| 19 | Basharatganj BTG | 12:05 PM | 12:07 PM | 2m | 259 | 1 |
| 20 | Bareilly Jn BRY | 12:49 PM | 12:52 PM | 3m | 273 | 1 |
| 21 | Bareilly City BC | 1:08 PM | 1:10 PM | 2m | 276 | 1 |
| 22 | Izzatnagar Jn IZN | 1:25 PM | 1:27 PM | 2m | 281 | 1 |
| 23 | Pilibhit Jn PBE | 2:20 PM | 2:25 PM | 5m | 332 | 1 |
| 24 | Majhola Pakarya MJZ | 2:50 PM | 2:52 PM | 2m | 358 | 1 |
| 25 | Khatima KHMA | 3:03 PM | 3:05 PM | 2m | 370 | 1 |
| 26 | Banbasa BNSA | 3:33 PM | 3:35 PM | 2m | 385 | 1 |
| 27 | Tanakpur TPU Destination | 4:10 PM | End | — | 395 | 1 |
Times are as per the latest published Indian Railways time table and may change. Live running status.