Bus from Perth to Inverness
8 direct routes · about 160 min · first bus 03:33, last bus 00:29 (weekdays); night service E8 runs 02:43–21:00.
Next buses to Inverness as of 09:45
Scheduled times at the boarding stop in Perth, from the operators' timetables — they update automatically. Open the stop for live tracking.
Direct routes
| Route | Operator | Journey time | Weekday journeys | Days | First | Last | Board at | Get off at | Calls at |
|---|---|---|---|---|---|---|---|---|---|
| E9 | Ember | ~160 min | 11 | Sat 11 · Sun 11 | 03:33 | 00:29 | Leonard Street (Stop ZH) | Union Street (Stop D) | Inver, Pitlochry, Calvine, Dalwhinnie, Newtonmore, Kingussie & 2 more |
| M90 | Scottish Citylink | ~163 min | 10 | Sat 10 · Sun 10 | 08:33 | 19:35 | Park and Ride (Stop A) | Bus Station Stance 3 | Inver, Pitlochry, Dalwhinnie & Aviemore |
| E8 | Ember | ~147 min | 10 | Sat 10 · Sun 10 | 02:43 | 21:00 | Park and Ride (Stop C) | Union Street (Stop D) | Inver, Pitlochry, Calvine, Dalwhinnie & Aviemore |
| M10 | Scottish Citylink | ~153 min | 7 | Sat 11 · Sun 11 | 08:02 | 20:20 | Park and Ride (Stop A) | Bus Station Stance 3 | Inver, Pitlochry, Dalwhinnie & Aviemore |
| UK093 | FlixBus | ~165 min | 4 | Sat 4 · Sun 4 | 08:10 | 18:10 | Park and Ride (Stop C) | Bus Station Stance 3 | — |
| UK094 | FlixBus | ~160 min | 3 | Sat 3 · Sun 3 | 08:10 | 16:40 | Park and Ride (Stop C) | Bus Station Stance 3 | Pitlochry & Aviemore |
2 occasional services — once or twice a day · M90, M91
Often school, college or market-day journeys — check the route before relying on one.
| Route | Operator | Journey time | Weekday journeys | Days | First | Last | Board at | Get off at | Calls at |
|---|---|---|---|---|---|---|---|---|---|
| M90 | Park's of Hamilton | ~162 min | 1 | Sat 1 · Sun 1 | 12:33 | 12:33 | Park and Ride (Stop A) | Bus Station Stance 3 | Inver, Pitlochry, Dalwhinnie, Aviemore & Tomatin |
| M91 | Park's of Hamilton | ~182 min | 1 | Sat 1 · Sun 1 | 10:33 | 10:33 | Park and Ride (Stop A) | Bus Station Stance 3 | Luncarty, Birnam, Inver, Kindallachan, Ballinluig, Pitlochry & 10 more |
Times are for the first boarding point in Perth on each route's weekday timetable — open the route for the full timetable, live map and every stop.
The same number runs elsewhere in the UK — see every E9 bus, E8 bus or M10 bus timetable.
Frequently asked questions
Which bus goes from Perth to Inverness?
8 routes run directly from Perth to Inverness: the E9 (Ember), the M90 (Scottish Citylink), the E8 (Ember), the M10 (Scottish Citylink), the UK093 (FlixBus), the UK094 (FlixBus), the M90 (Park's of Hamilton), the M91 (Park's of Hamilton). The most frequent is the E9, 11 times each weekday — board at Leonard Street (Stop ZH) and get off at Union Street (Stop D), about 160 minutes.
How long does the bus take from Perth to Inverness?
Around 160 minutes on the E9, depending on time of day and traffic. It calls at Inver, Pitlochry, Calvine, Dalwhinnie and other stops on the way.
What time is the first and last bus from Perth to Inverness?
On weekdays the first direct bus leaves around 03:33 and the last around 00:29 — and night service E8 runs 02:43–21:00. Check the route timetables for weekends.
How much is the bus from Perth to Inverness?
This is a long-distance coach service, so the England £3 bus fare cap does not apply — nor do local bus tickets or passes. Coach operators set their own fares and price by demand, so booking further ahead is usually much cheaper than buying on the day.