The average train between Viterbo and San Giovanni (Station) takes 2h 5m and the fastest train takes 1h 45m. There is a train service every few hours from Viterbo to San Giovanni (Station). 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 every 2 hours between Viterbo and San Giovanni (Station). The earliest departure is at 5:04 AM in the morning, and the last departure from Viterbo is at 9:07 PM which arrives into San Giovanni (Station) at 11:33 PM. All services require a transfer at Valle Aurelia and take an average of 2h 5m. The schedules shown below are for the next available departures.

2h 11m • 1 change

2h 3m • 1 change

2h 6m • 1 change

2h 4m • 1 change

1h 54m • 1 change

1h 56m • 1 change

1h 45m • 1 change

1h 45m • 1 change

1h 54m • 1 change

1h 56m • 1 change

1h 45m • 1 change

1h 45m • 1 change

1h 54m • 1 change

1h 56m • 1 change

1h 45m • 1 change

1h 45m • 1 change
Want to know about travelling from Viterbo to San Giovanni (Station)? 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 Viterbo to San Giovanni (Station). However, there are services departing from Viterbo station and arriving at San Giovanni (Station) station via Valle Aurelia. The journey, including transfers, takes approximately 2h 5m.
Viterbo to San Giovanni (Station) train services, operated by Trenitalia, depart from Viterbo Porta Romana station.
Viterbo to San Giovanni (Station) train services, operated by Trenitalia, arrive at Valle Aurelia station.
The distance between Viterbo and San Giovanni (Station) is 68.1 km. The road distance is 88 km.
Trenitalia operates a train from Viterbo Porta Romana to Valle Aurelia hourly. Tickets cost €10–17 and the journey takes 1h 43m.