Public transport in Czechia
Czechia: 284 public transport operators, 820.8M km of scheduled service a year, 1,672 major stations and 630 tender notices — per region and operator.
- Operators
- 284
- Vehicle-km / year
- ≈ 820.8M km
- Vehicles (peak)
- ≈ 8,554
- Trips / week
- 909.5K
- Stations*
- 1,672
- Tender notices
- 630
- Open procedures
- 346
- Value (€)
- €2.8B
Estimates from the scheduled timetables (one representative week per feed). *Stations with a page of their own. Methodology →
Czechia over time
6 snapshots · Dec 2025 – Oct 2026
820.8M km ↓ ±0% since Dec 2025
Vehicle-km over 12 months: ±0% since Dec 2025. All countries →
The largest operators
Map →Vehicle-km / year
- 1 Pražská integrovaná doprava 271.3M km
- 2 IDS JMK (Data from: KORDIS JMK, DPMB) 103.3M km
- 3 Plzeňské městské dopravní podniky, a.s. 14.6M km
- 4 ČSAD BUS Uherské Hradiště a.s. 10.6M km
- 5 TRADO-BUS, s.r.o. 10.3M km
- 6 CD 9.9M km
- 7 Dopravní podnik Karlovy Vary, a.s. 9M km
- 8 Dopravní společnost Ústeckého kraje, příspěvková organizace 8.2M km
- 9 Dopravní společnost Ústeckého kraje, příspěvková organizace 7.6M km
- 10 Dopravní podnik města Ústí nad Labem a.s. 6.4M km
- 11 Transdev Slezsko a.s. 6.2M km
- 12 Dopravní podnik města České Budějovice, a.s. 6.1M km
- 13 Dopravní podnik města Pardubic a.s. 5.9M km
- 14 Dopravní podnik města Hradce Králové, a.s. 5.6M km
- 15 ČSAD AUTOBUSY České Budějovice a.s. 5.1M km
Share of vehicle-km
50% Top 5 operators
Other 410.8M km 50%
Routes by mode
9,161 routes
Bus 7,386 81%
Rail 1,425 16%
Tram 325 3.5%
Metro 17 0.2%
Ferry 6 <0.1%
Other 2 <0.1%
Regions
NUTS-3 regions by the service run inside them.
- Hlavní město Praha Operators 19 142.7M km
- Středočeský kraj Operators 24 123.9M km
- Jihomoravský kraj Operators 14 116.5M km
- Moravskoslezský kraj Operators 29 47.4M km
- Ústecký kraj Operators 41 45.1M km
- Jihočeský kraj Operators 24 37.1M km
- Plzeňský kraj Operators 26 35.1M km
- Kraj Vysočina Operators 18 30.1M km
- Královéhradecký kraj Operators 30 29.4M km
- Pardubický kraj Operators 26 27.4M km
- Zlínský kraj Operators 19 25.9M km
- Olomoucký kraj Operators 28 24.9M km
- Liberecký kraj Operators 25 23.2M km
- Karlovarský kraj Operators 23 13.9M km
Busiest stations
By scheduled departures per day.
- Lihovar 3,816 departures/day
- Želivského 3,043 departures/day
- Hlavní nádraží 2,928 departures/day
- Palmovka 2,922 departures/day
- Anděl 2,705 departures/day
- Florenc 2,645 departures/day
- I. P. Pavlova 2,536 departures/day
- Karlovo náměstí 2,508 departures/day
- Černý Most 2,456 departures/day
- Budějovická 2,437 departures/day
- Smíchovské nádraží 2,431 departures/day
- Palackého náměstí 2,405 departures/day
- Nemocnice Krč 2,362 departures/day
- Letňany 2,255 departures/day
- Hradčanská 2,255 departures/day
Tender market
By stage
630 Tender notices
Prior information 106 17%
Call for tenders 240 38%
Award 284 45%
By service type
- Scheduled public transport 306
- Other 134
- Rail 134
- Demand-responsive 32
- Taxi 15
- Vehicle hire with driver 7
- School transport 2
Most active contracting authorities
- 1 ČD Bus a.s. 127
- 2 Olomoucký kraj 48
- 3 Moravskoslezský kraj 37
- 4 Jihomoravský kraj 33
- 5 České dráhy, a.s. 30
- 6 Ministerstvo dopravy 24
- 7 Správa Krkonošského národního parku 19
- 8 Hlavní město Praha 17
- 9 Plzeňský kraj 14
- 10 Statutární město Jablonec nad Nisou 14
- 11 Město Písek 14
- 12 Statutární město Ostrava, městský obvod Ostrava-Jih 13
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