The average bus between Perth and Selkirk takes 3h 54m and the fastest bus takes 3h 33m. The bus service runs several times per day from Perth to Selkirk. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run every 3 hours between Perth and Selkirk. The earliest departure is at 6:20 AM in the morning, and the last departure from Perth is at 5:50 PM which arrives into Selkirk at 10:08 PM. All services require a transfer, and take on average 3h 54m. The schedules shown below are for the next available departures.

3h 59m • 1 change

4h 25m • 1 change

4h 45m • 1 change

4h 55m • 1 change

3h 48m • 1 change

4h 16m • 1 change

3h 36m • 1 change

4h 3m • 1 change

3h 48m • 1 change

4h 16m • 1 change

3h 36m • 1 change

4h 3m • 1 change

3h 48m • 1 change

4h 16m • 1 change

3h 36m • 1 change

4h 3m • 1 change

3h 48m • 1 change

4h 16m • 1 change

3h 36m • 1 change

4h 3m • 1 change
Want to know about travelling from Perth to Selkirk? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct bus from Perth to Selkirk. However, there are services departing from Perth station and arriving at Selkirk station via Edinburgh, Bus Station station. The journey, including transfers, takes approximately 3h 54m.
Perth to Selkirk bus services, operated by Scottish Citylink Coaches Ltd, depart from Bus Station.
Perth to Selkirk bus services, operated by Scottish Citylink Coaches Ltd, arrive at Market Place station.
The distance between Perth and Selkirk is 101.2 km. The road distance is 144 km.
You can take a bus from Bus Station to Market Place via Edinburgh, Bus Station in around 3h 58m.