| Station | Platform | Arrival | Departure | |
|---|---|---|---|---|
| WCK Wick | 1 | 08:02 ✔ 1m early | ||
| GGJ Georgemas Junction | 1 | 08:19 ✔ 1m early | 08:20 ✔ On Time | |
| THS Thurso | 1 | 08:30 ✔ 1m early | 08:34 ✔ On Time | |
| GGJ Georgemas Junction | 1 | 08:44 ✔ 1m early | 08:47 ⚠ 1m late | |
| SCT Scotscalder | 1 | 08:52 | 08:52 | |
| ABC Altnabreac | 1 | 09:02 | 09:02 | |
| FRS Forsinard | 1 | 09:13 ✔ 1m early | 09:13 ✔ On Time | |
| KBC Kinbrace | 1 | 09:22 | 09:22 | |
| KIL Kildonan | 1 | 09:32 | 09:32 | |
| HMS Helmsdale | 1 | 09:46 ✔ 2m early | 09:46 ✔ On Time | |
| BRA Brora | 1 | 10:01 ✔ 1m early | 10:02 ✔ On Time | |
| DNO Dunrobin Castle | 1 | 10:07 | 10:07 | |
| GOL Golspie | 1 | 10:12 | 10:12 | |
| ROG Rogart | 1 | 10:21 | 10:21 | |
| LRG Lairg | 1 | 10:37 ✔ 1m early | 10:38 ✔ On Time | |
| INH Invershin | 1 | 10:46 | 10:46 | |
| CUA Culrain | 1 | 10:47 | 10:47 | |
| ARD Ardgay | 1 | 10:53 | 10:54 | |
| TAI Tain | 1 | 11:09 ✔ 1m early | 11:10 ✔ On Time | |
| FRN Fearn | 1 | 11:16 ✔ 1m early | 11:16 ✔ On Time | |
| IGD Invergordon | 1 | 11:28 ✔ 2m early | 11:31 ✔ On Time | |
| ASS Alness | 1 | 11:36 | 11:36 | |
| DIN Dingwall | 2 | 11:50 ⚠ 1m late | 11:53 ✔ On Time | |
| CBD Conon Bridge | 1 | 11:58 | 11:58 | |
| MOO Muir of Ord | 1 | 12:07 ✔ 2m early | 12:07 ✔ On Time | |
| BEL Beauly | 1 | 12:12 | 12:12 | |
| INV Inverness | 5 | 12:27 ✔ On Time |
| Station | Platform | Arrival | Departure | |
|---|---|---|---|---|
| INV Inverness | 5 | 13:35 ✔ On Time | ||
| BEL Beauly | 1 | 13:50 | 13:50 | |
| MOO Muir of Ord | 2 | 13:55 ✔ On Time | 13:56 ✔ On Time | |
| CBD Conon Bridge | 1 | 14:03 | 14:03 | |
| DIN Dingwall | 1 | 14:08 ✔ 2m early | 14:11 ⚠ 2m late | |
| GVE Garve | 2 | 14:33 ✔ On Time | 14:34 ⚠ 2m late | |
| LCC Lochluichart | 1 | 14:41 | 14:41 | |
| AAT Achanalt | 1 | 14:48 | 14:48 | |
| ACN Achnasheen | 2 | 15:00 ⚠ 1m late | 15:04 ✔ 1m early | |
| ACH Achnashellach | 1 | 15:21 | 15:21 | |
| STC Strathcarron | 2 | 15:32 ✔ 2m early | 15:33 ✔ On Time | |
| ATT Attadale | 1 | 15:37 | 15:37 | |
| STF Stromeferry | 1 | 15:50 | 15:51 | |
| DCG Duncraig | 1 | 15:58 | 15:58 | |
| PLK Plockton | 1 | 16:02 | 16:03 | |
| DRN Duirinish | 1 | 16:05 | 16:05 | |
| KYL Kyle of Lochalsh | 1 | 16:16 ✔ 1m early |
| Station | Platform | Arrival | Departure | |
|---|---|---|---|---|
| KYL Kyle of Lochalsh | 1 | 17:13 ⚠ 1m late | ||
| DRN Duirinish | 1 | 17:21 | 17:21 | |
| PLK Plockton | 1 | 17:26 | 17:26 | |
| DCG Duncraig | 1 | 17:28 | 17:28 | |
| STF Stromeferry | 1 | 17:38 | 17:38 | |
| ATT Attadale | 1 | 17:49 | 17:49 | |
| STC Strathcarron | 1 | 17:56 ✔ On Time | 17:57 ✔ On Time | |
| ACH Achnashellach | 1 | 18:05 | 18:05 | |
| ACN Achnasheen | 1 | 18:25 ✔ On Time | 18:26 ✔ On Time | |
| AAT Achanalt | 1 | 18:35 | 18:35 | |
| LCC Lochluichart | 1 | 18:42 | 18:42 | |
| GVE Garve | 1 | 18:53 ✔ 2m early | 18:54 ✔ 1m early | |
| DIN Dingwall | 2 | 19:23 ✔ 1m early | 19:24 ✔ On Time | |
| CBD Conon Bridge | 1 | 19:29 | 19:29 | |
| MOO Muir of Ord | 1 | 19:36 ✔ 1m early | 19:36 ✔ On Time | |
| BEL Beauly | 1 | 19:41 | 19:41 | |
| INV Inverness | 5 | 19:59 ✔ 1m early |
| Station | Platform | Arrival | Departure | |
|---|---|---|---|---|
| INV Inverness | 3 | 21:32 ✔ On Time | ||
| IVA Inverness Airport | 1 | 21:42 ✔ 1m early | 21:42 ✔ On Time | |
| NRN Nairn | 2 | 21:52 ✔ On Time | 21:52 ⚠ 1m late | |
| FOR Forres | 2 | 22:03 ✔ On Time | 22:03 ⚠ 1m late | |
| ELG Elgin | 1 | 22:16 ✔ On Time | 22:16 ⚠ 1m late | |
| KEH Keith | 1 | 22:36 ✔ On Time | 22:36 ⚠ 1m late | |
| HNT Huntly | 2 | 22:51 ⚠ 1m late | 22:53 ⚠ 3m late | |
| INS Insch | 2 | 23:09 ⚠ 1m late | 23:09 ⚠ 2m late | |
| INR Inverurie | 2 | 23:21 ⚠ 2m late | 23:21 ⚠ 3m late | |
| KTR Kintore | 2 | 23:26 ⚠ 2m late | 23:27 ⚠ 2m late | |
| DYC Dyce | 2 | 23:36 ⚠ 2m late | 23:36 ⚠ 3m late | |
| ABD Aberdeen | 6N | 23:46 ⚠ 2m late |