| # | Station | Arrives | Departs | Halt | Dist. | Day |
|---|---|---|---|---|---|---|
| 1 | Saharanpur Jn. SRE Source | Start | 5:10 AM | — | 0 | 1 |
| 2 | Tapri TPZ | 5:20 AM | 5:21 AM | 1m | 7 | 1 |
| 3 | Nagal NGL | 5:29 AM | 5:30 AM | 1m | 17 | 1 |
| 4 | Talheri Buzurg THJ | 5:37 AM | 5:38 AM | 1m | 24 | 1 |
| 5 | Deoband DBD | 5:46 AM | 5:47 AM | 1m | 34 | 1 |
| 6 | Rohana Kalan RNA | 5:56 AM | 5:57 AM | 1m | 46 | 1 |
| 7 | Bamanheri BMHR | 6:04 AM | 6:05 AM | 1m | 54 | 1 |
| 8 | Muzaffarnagar MOZ | 6:09 AM | 6:11 AM | 2m | 58 | 1 |
| 9 | Jaruda Naraa JDW | 6:19 AM | 6:20 AM | 1m | 66 | 1 |
| 10 | Mansurpur MSP | 6:26 AM | 6:27 AM | 1m | 71 | 1 |
| 11 | Khatauli KAT | 6:35 AM | 6:36 AM | 1m | 80 | 1 |
| 12 | Sakhoti Tanda SKF | 6:44 AM | 6:45 AM | 1m | 89 | 1 |
| 13 | Daurala DRLA | 6:52 AM | 6:53 AM | 1m | 97 | 1 |
| 14 | Pabli Khas PQY | 7:00 AM | 7:01 AM | 1m | 105 | 1 |
| 15 | Meerut Cant MUT | 7:06 AM | 7:07 AM | 1m | 109 | 1 |
| 16 | Meerut City MTC | 7:18 AM | 7:20 AM | 2m | 114 | 1 |
| 17 | Partapur PRTP | 7:28 AM | 7:29 AM | 1m | 121 | 1 |
| 18 | Mohiuddinpur MUZ | 7:34 AM | 7:35 AM | 1m | 125 | 1 |
| 19 | Modinagar MDNR | 7:42 AM | 7:43 AM | 1m | 133 | 1 |
| 20 | Muradnagar MUD | 7:51 AM | 7:52 AM | 1m | 143 | 1 |
| 21 | Duhai DXH | 7:57 AM | 7:58 AM | 1m | 147 | 1 |
| 22 | Guldhar GUH | 8:03 AM | 8:04 AM | 1m | 151 | 1 |
| 23 | Naya Ghaziabad GZN | 8:07 AM | 8:08 AM | 1m | 155 | 1 |
| 24 | Ghaziabad GZB | 8:47 AM | 8:48 AM | 1m | 161 | 1 |
| 25 | Sahibabad SBB | 8:57 AM | 8:58 AM | 1m | 168 | 1 |
| 26 | Viveka Vihar VVB | 9:03 AM | 9:04 AM | 1m | 172 | 1 |
| 27 | Delhi Shahdara DSA | 9:06 AM | 9:07 AM | 1m | 175 | 1 |
| 28 | Delhi Jn. DLI Destination | 9:35 AM | End | — | 181 | 1 |
Times are as per the latest published Indian Railways time table and may change. Live running status.