The average train between Rosyth and Portobello takes 1h 1m and the fastest train takes 39 min. There is an hourly train service from Rosyth to Portobello. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run hourly between Rosyth and Portobello. The earliest departure is at 6:30 AM in the morning, and the last departure from Rosyth is at 11:55 PM which arrives into Portobello at 9:19 AM. All services require a transfer, and take on average 1h 1m. The schedules shown below are for the next available departures.

46 min • 1 change

43 min • 1 change

49 min • 1 change

42 min • 1 change

52 min • 1 change

53 min • 1 change

54 min • 1 change

1h 6m • 1 change

51 min • 1 change

51 min • 1 change

51 min • 1 change

51 min • 1 change
Want to know about travelling from Rosyth to Portobello? 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 train from Rosyth to Portobello. However, there are services departing from Rosyth station and arriving at Portobello station via Edinburgh Waverley. The journey, including transfers, takes approximately 1h 1m.
Rosyth to Portobello train services, operated by ScotRail, depart from Rosyth station.
Rosyth to Portobello train services, operated by ScotRail, arrive at Edinburgh Waverley station.
Book your Rosyth to Portobello train tickets online with ScotRail.
The distance between Rosyth and Portobello is 21.3 km. The road distance is 29 km.
ScotRail operates a train from Rosyth to Edinburgh Waverley hourly. Tickets cost £6–12 and the journey takes 34 min.