The average bus between Serpa and Portimão takes 8h 18m and the fastest bus takes 4h 10m. The bus service runs several times per day from Serpa to Portimão. 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 twice daily between Serpa and Portimão. The earliest departure is at 8:50 AM in the morning, and the last departure from Serpa is at 7:45 PM which arrives into Portimão at 11:15 AM. All services require a transfer, and take on average 8h 18m. The schedules shown below are for the next available departures.

4h 10m • 1 change

6h 43m • 1 change
Arrives next day

15h 30m • 1 change

4h 10m • 1 change

6h 43m • 1 change
Arrives next day

15h 30m • 1 change

4h 10m • 1 change

6h 43m • 1 change
Arrives next day

15h 30m • 1 change
Want to know about travelling from Serpa to Portimão? 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 Serpa to Portimão. However, there are services departing from Serpa station and arriving at Portimão station via Terminal Rodoviário de Portimão. The journey, including transfers, takes approximately 8h 18m.
Serpa to Portimão bus services, operated by Rodoviaria do Alentejo, depart from Terminal Rodoviário de Beja station.
Serpa to Portimão bus services, operated by Rodoviaria do Alentejo, arrive at Terminal Rodoviário de Portimão station.
Book your Serpa to Portimão bus tickets online with Rodoviaria do Alentejo, Rede Expressos and FlixBus.
The distance between Serpa and Portimão is 122.2 km. The road distance is 188 km.
Rede Expressos operates a bus from Terminal Rodoviário de Beja to Terminal Rodoviário de Portimão twice daily. Tickets cost €11–27 and the journey takes 2h 30m. FlixBus also services this route once daily.