The average bus between Porto and Oliveira takes 1h 53m and the fastest bus takes 1h 24m. The bus service runs several times per day from Porto to Oliveira. 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 Porto and Oliveira. The earliest departure is at 5:20 AM in the morning, and the last departure from Porto is at 5:30 PM which arrives into Oliveira at 7:44 PM. All services require a transfer, and take on average 1h 53m. The schedules shown below are for the next available departures.

2h 4m • 1 change

1h 34m • 1 change

1h 49m • 1 change

2h 14m • 1 change

2h 4m • 1 change

1h 34m • 1 change

1h 49m • 1 change

2h 14m • 1 change

2h 4m • 1 change

1h 34m • 1 change

1h 49m • 1 change

2h 14m • 1 change

2h 4m • 1 change

1h 34m • 1 change

1h 49m • 1 change

2h 14m • 1 change
Want to know about travelling from Porto to Oliveira? 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 Porto to Oliveira. However, there are services departing from Porto station and arriving at Oliveira station via Centro Coordenador de Transportes de Braga. The journey, including transfers, takes approximately 1h 53m.
Porto to Oliveira bus services, operated by FlixBus, depart from Porto station.
Porto to Oliveira bus services, operated by FlixBus, arrive at Lama - Solar dos Azevedos station.
The distance between Porto and Oliveira is 48.4 km. The road distance is 72 km.
You can take a bus from Porto to Lama - Solar dos Azevedos via Centro Coordenador de Transportes de Braga in around 2h 19m.