- Cheapest fare
- €16
- Cheapest month
- November
- Direct flights
- Yes
- Flight time
- 1h 15m
Ryanair · Mon, 9 Nov
from €16
Ryanair and Air Europa
420 km
Get a price alert
We'll email you when Madrid → Porto drops to your price. It's free, and you can stop any time.
Today's cheapest fare is €16. We'll send one email to confirm. See our privacy policy.
Cheapest month to fly from Madrid to Porto
Lowest one-way fare per person in each month. Choose a month to see every date.
Cheapest dates in November 2026
The lowest fares we've seen for each day, cheapest first.
Plan the rest of your trip to Porto
Where to stay, what to do and getting around, from our travel partners.
Getting around
About flights from Madrid to Porto
Madrid (MAD) and Porto (OPO) are about 420 km apart. Direct flights take around 1h 15m, and recent direct fares were with Ryanair and Air Europa. Over the next few months, one-way fares start from €16, and November 2026 is currently the cheapest month to fly.
These prices come from searches travellers made in the last 48 hours, so they move quickly. If you see a good fare, it's worth booking soon. FlightsExp is free to use: you book directly with our travel partner.
Frequently asked questions
How much is a flight from Madrid to Porto?
The cheapest one-way fare we've seen recently is €16 with Ryanair, departing Monday, 9 November 2026. Over the coming months, the lowest fare in each month ranges from €16 to €49.
What is the cheapest month to fly from Madrid to Porto?
November 2026 currently has the lowest fares, from €16 one way.
Are there direct flights from Madrid to Porto?
Yes. Recent direct fares were with Ryanair and Air Europa.
How long is the flight from Madrid to Porto?
A direct flight takes about 1h 15m. Madrid and Porto are around 420 km apart.
Which airlines fly from Madrid to Porto?
Recent fares on this route were with Ryanair, Air Europa and TAP Air Portugal.
More cheap flights from Madrid
- Madrid to Parisfrom €57
- Madrid to Amsterdamfrom €50
- Madrid to Dusseldorffrom €77
- Madrid to Milanfrom €18
- Madrid to Moscowfrom €202
- Madrid to Londonfrom €21
- Madrid to Berlinfrom €35
- Madrid to Tenerifefrom €51
- Madrid to Brusselsfrom €182
- Madrid to Frankfurtfrom €56
- Madrid to Zurichfrom €57
- Madrid to Lisbonfrom €26