Cheap bus tickets from Porto to Madridfrom $15.99
Our Safety Measures
On this page
Rides:Porto Madrid (02/03/2023)
Bus stations and stops in Porto
Porto (TIC Campanha)
Terminal Intermodal de Campanhã - TIC
Vila Nova de Gaia (Porto)
Vila Nova de Gaia
4430-999 Vila Nova de Gaia
Bus stations and stops in Madrid
Madrid (South Bus Station)
Frequently asked questions
How long does it take to get from Porto to Madrid by bus?
What is the distance between Porto and Madrid?
How much is the bus ticket between Porto and Madrid?
What route does the bus from Porto to Madrid take?
How can I pay for the bus from Porto to Madrid?
Where can I see if my bus from Porto to Madrid is on time?
Find the cheapest buses from Porto to Madrid
Looking for cheap tickets from Porto to Madrid? FlixBus has you covered. The distance between Porto and Madrid is 385 miles, which takes a minimum of 9 hours 20 minutes.
FlixBus has a large nationwide network, so you can travel onwards with us once you reach Madrid. Tickets for this connection cost $31.66 on average, but you can book a trip for as little as $15.99.The lowest price for this connection is $15.99, but prices might be higher during high season and when the bus gets full.
So how to find the best ticket prices? Be sure to book in advance on our website or via our FlixBus App. When booking through the App, your ticket will be stored directly, making bus travel even more green and convenient!
Traveling from Porto to Madrid
With 2 rides per day, it's easy to fit a trip to Madrid into your schedule.
The bus takes a minimum of 9 hours 20 minutes and you can expect 5.0 stops on your journey.
Traveling with FlixBus isn't just quick, it's cheap too. If you book in advance online or using the app, you can expect to pay as little as $15.99 for a ticket between Porto and Madrid, , but prices might go up in high season or if buses are full, getting to an average of $31.66. That's a great saving compared to traveling by train, car or plane!
What's more, bus travel is a more sustainable mode of transport. We're working towards making our entire FlixBus fleet 100% carbon neutral, and every customer can offset their carbon footprint by making a donation when they purchase their ticket.
Taking the bus from Porto
Porto is well-connected on the FlixBus network with 62 connections departing every day from 3 stations, making it very easy to travel across the country.
Arriving in Madrid
With 2 bus station(s), Porto is well-connected. Traveling with FlixBus around the country is very cheap and easy, as to get to Madrid you can pick one of the 29 routes arriving daily.
What to expect onboard the FlixBus bus from Porto to Madrid
Once you've booked your bus tickets through the FlixBus App using one of our secure payment methods, you just need to bring your phone to use as your ticket - and your luggage, of course. Don't worry about packing light as you can bring one piece of carry-on luggage and one piece of hold luggage for your journey.
Want to be guaranteed the best seat in the house? You can choose yours when you book your ticket. Opt for a classic seat, a table seat, a panorama seat for a great view, or reserve the free seat beside you for extra space.
Once you've stowed your luggage away and settled in, sit back and enjoy the journey with the onboard services on your FlixBus bus including free Wi-Fi onboard, FLIXtainment - out entertainment portal, toilets and plug socket.Whether you need to fire off some emails during your trip, or you want to relax and enjoy the ride, we've got you covered.
Discover more popular bus connections
- Lisbon - Porto
- Porto - Lisbon
- Coimbra - Porto
- Porto - Coimbra
- Porto - Madrid
- Madrid - Porto
- Braga - Porto
- Porto - Braga
- Vila Real - Porto
- Bragança - Porto
- Viseu - Porto
- Porto - Vila Real
- Porto - Aveiro
- Porto - Vigo
- Porto - Bragança
- Vigo - Porto
- Aveiro - Porto
- Porto - Viseu
- Cascais - Porto
- Leiria - Porto
- Lisbon - Madrid
- Madrid - Lisbon
- Madrid - Paris
- Porto - Madrid
- Paris - Madrid
- Madrid - Porto
- Coimbra - Madrid
- Toulouse - Madrid
- Madrid - Toulouse
- Madrid - Coimbra
- Bordeaux - Madrid
- Madrid - Aveiro
- Aveiro - Madrid
- Madrid - Bordeaux
- Montpellier - Madrid
- Lyon - Madrid
- Madrid - Montpellier
- Madrid - Lyon
- Nantes - Madrid
- Rennes - Madrid
Onboard services are subject to availability