Transit EU

Public transport in Portugal

Portugal: 24 public transport operators, 226.9M km of scheduled service a year, 1,000 major stations and 438 tender notices — per region and operator.

Operators
24
Vehicle-km / year
≈ 226.9M km
Vehicles (peak)
≈ 2,860
Trips / week
299K
Stations*
1,000
Tender notices
438
Open procedures
267
Value (€)
€2.8B
Vehicle-km per inhabitant
≈ 21.1 km
Rank 22 of 25

Estimates from the scheduled timetables (one representative week per feed). *Stations with a page of their own. Methodology →

Portugal over time

5 snapshots · Jun 2026 – Oct 2026

226.9M km ↑ +1% since Jun 2026
113.7M km227.3M kmJun 2026Oct 2026

Vehicle-km over 12 months: +1% since Jun 2026. All countries →

The largest operators

Map →

By stage

438 Tender notices

By service type

  1. School transport 257
  2. Scheduled public transport 78
  3. Other 49
  4. Vehicle hire with driver 29
  5. Demand-responsive 11
  6. Taxi 11
  7. Rail 3

Most active contracting authorities

  1. 1 Município de Chaves 32
  2. 2 Município de Loulé 23
  3. 3 Colégio de São Gonçalo de Amarante - Escola Católica 13
  4. 4 Município de Arouca 12
  5. 5 Município de Sintra 12
  6. 6 Fundo Regional dos Transportes Terrestres, I. P. R. A. 12
  7. 7 Município da Maia 9
  8. 8 Município de Rio Maior 8
  9. 9 Município de Barcelos 8
  10. 10 Município de Albufeira 8
  11. 11 Município de Viana do Castelo 7
  12. 12 Município de Viseu 7

How we calculate

Operators Unit: operators · counted
Transport companies as their timetable names them (GTFS agency). The same operator in several feeds is counted once; in Germany the company that actually runs each line. Source: published GTFS timetables, one representative week per feed
Vehicle-km / year Unit: km per year · estimate
For every trip: route length (along the published route shape; without one, the straight line between its stops × 1.25) × the days it runs in the representative week, × 365.25 / 7. Only scheduled service — no empty or depot runs, no demand-responsive services. Source: published GTFS timetables, one representative week per feed
Vehicles (peak) Unit: vehicles · estimate
The highest number of trips running at the same moment in the representative week — a lower bound: reserve and workshop vehicles are not included. Source: published GTFS timetables, one representative week per feed
Trips / week Unit: trips per week · counted
All scheduled trips in the representative week; trips given as a frequency (every 10 minutes) are expanded into single trips. Source: published GTFS timetables, one representative week per feed
Stations* Unit: stations · counted
Stations with a page of their own: at least 250 scheduled departures a day, or among a country's busiest 1,000 with at least 30. Capped per country, so not comparable between countries. Source: published GTFS timetables, one representative week per feed
Vehicle-km per inhabitant Unit: km per inhabitant and year · estimate
Vehicle-km per year of all operators in the country ÷ its population. Only countries whose timetables cover the whole country; the figure for all countries together is their vehicle-km ÷ their population. Source: published GTFS timetables, one representative week per feed; Eurostat, population on 1 January 2025
Tender notices Unit: notices · counted
Every published notice counts once: prior information, call for tenders or award notice. Source: TED (EU Official Journal) since 06/2024 and the German national portal
Open procedures Unit: notices · as published
Prior information notices and calls for tenders — notices that do not announce an award. Source: TED (EU Official Journal) since 06/2024 and the German national portal
Value (€) Unit: € · as published
Sum of the contract values stated in the notices, in euro only; other currencies are neither converted nor added. Many notices state no value, so the sum is a lower bound. Source: TED (EU Official Journal) since 06/2024 and the German national portal

Methodology & limits →