Punctuality of Swiss public transportTuesday 7 July 2026
87.1% of 150,726 trips were on time. The share was lowest at 17:30: 70%. Of the busy lines, Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gare had the lowest share on time: 13.4%.
On time
What counts as on time?
On time means less than 3 minutes late. Only trips with live data count, and only trips that run mostly in Switzerland; cable cars do not count.
87.1%
−1.2 ptsDay before: 88.3% · 150,726 trips with live data
Average delay
+1.4 min
Canceled trips
782
0.5% of the trips
Through the day
The share of the trips on their way that are less than 3 minutes late, every 10 minutes.
- ≥ 95%
- Dashed: Monday 6 July
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 94.4%
14,262 trips · avg +0.8 min
-
Tram 81.5%
13,150 trips · avg +2.1 min
-
Bus 87%
122,574 trips · avg +1.4 min
-
Metro 91.2%
296 trips · avg +1.3 min
-
Boat 57%
444 trips · avg +3.6 min
The network by punctuality
Each train, tram and metro line in the color of its share on time.
- ≥ 95%
- 90–95%
- 85–90%
- 75–85%
- < 75%
- no data
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 13.4%
194 trips · avg +6 min
-
127 trips · avg +6.2 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 27.5%
138 trips · avg +6.4 min
-
96 trips · avg +5.3 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 35.5%
166 trips · avg +5.1 min
-
200 trips · avg +6.5 min
-
66 trips · avg +4.2 min
-
90 trips · avg +5.3 min
Show 17 more
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 42.2%
206 trips · avg +3.5 min
-
225 trips · avg +5.3 min
-
Bus 16 Lausanne, Grand Vennes – Lausanne, Provence nordLausanne, Grand Vennes – Lausanne, Provence nord 44.4%
151 trips · avg +4.4 min
-
143 trips · avg +3.9 min
-
75 trips · avg +4.8 min
-
114 trips · avg +3.4 min
-
222 trips · avg +4.8 min
-
166 trips · avg +3.9 min
-
120 trips · avg +4.2 min
-
151 trips · avg +3.1 min
-
151 trips · avg +5.8 min
-
144 trips · avg +3.2 min
-
Bus 22 Carouge GE, Rondeau – Genève, Jardin BotaniqueCarouge GE, Rondeau – Genève, Jardin Botanique 51.9%
135 trips · avg +3.9 min
-
51 trips · avg +3 min
-
83 trips · avg +3.8 min
-
49 trips · avg +2.9 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 54.5%
299 trips · avg +3.2 min
Most punctual busy lines
-
208 trips · avg +0.3 min
-
304 trips · avg +0.8 min
-
216 trips · avg +0.6 min
-
340 trips · avg +0.9 min
-
240 trips · avg +0.7 min
-
Bus 701 Lausanne, Bourdonnette – Tolochenaz, La PlantazLausanne, Bourdonnette – Tolochenaz, La Plantaz 96.3%
214 trips · avg +0.5 min
-
214 trips · avg +0.8 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.5%
286 trips · avg +0.9 min
Least punctual busy lines
-
62 trips · avg +7.1 min
-
58 trips · avg +2.3 min
-
79 trips · avg +2.2 min
-
46 trips · avg +1.4 min
-
96 trips · avg +1.8 min
-
58 trips · avg +1.2 min
-
132 trips · avg +1 min
-
40 trips · avg +1.5 min
Show 17 more
-
68 trips · avg +0.7 min
-
107 trips · avg +1.1 min
-
74 trips · avg +1.1 min
-
70 trips · avg +0.7 min
-
134 trips · avg +1 min
-
75 trips · avg +0.9 min
-
66 trips · avg +0.6 min
-
57 trips · avg +0.6 min
-
48 trips · avg +0.8 min
-
76 trips · avg +0.9 min
-
118 trips · avg +1.1 min
-
40 trips · avg +0.6 min
-
40 trips · avg +1.4 min
-
40 trips · avg +0.7 min
-
41 trips · avg +0.5 min
-
48 trips · avg +0.9 min
-
82 trips · avg +0.9 min
Most punctual busy lines
-
126 trips · avg +0.4 min
-
80 trips · avg +0.2 min
-
79 trips · avg +0.1 min
-
79 trips · avg +0.2 min
-
78 trips · avg +0.5 min
-
78 trips · avg +0.3 min
-
78 trips · avg +0.1 min
-
76 trips · avg +0.5 min
Least punctual busy lines
-
276 trips · avg +2.2 min
-
273 trips · avg +2.1 min
-
266 trips · avg +1.6 min
-
281 trips · avg +2.1 min
-
510 trips · avg +1.5 min
-
380 trips · avg +1.8 min
-
294 trips · avg +1.7 min
-
284 trips · avg +1.5 min
Show 9 more
-
174 trips · avg +1.7 min
-
273 trips · avg +1.4 min
-
283 trips · avg +1.6 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 89.6%
307 trips · avg +1.3 min
-
293 trips · avg +1.1 min
-
271 trips · avg +0.9 min
-
265 trips · avg +1.1 min
-
270 trips · avg +0.9 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.1%
155 trips · avg +0.8 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.1%
155 trips · avg +0.8 min
-
270 trips · avg +0.9 min
-
265 trips · avg +1.1 min
-
271 trips · avg +0.9 min
-
293 trips · avg +1.1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 89.6%
307 trips · avg +1.3 min
-
283 trips · avg +1.6 min
-
273 trips · avg +1.4 min
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 13.4%
194 trips · avg +6 min
-
127 trips · avg +6.2 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 27.5%
138 trips · avg +6.4 min
-
96 trips · avg +5.3 min
-
200 trips · avg +6.5 min
-
66 trips · avg +4.2 min
-
90 trips · avg +5.3 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 42.2%
206 trips · avg +3.5 min
Show 17 more
-
225 trips · avg +5.3 min
-
Bus 16 Lausanne, Grand Vennes – Lausanne, Provence nordLausanne, Grand Vennes – Lausanne, Provence nord 44.4%
151 trips · avg +4.4 min
-
143 trips · avg +3.9 min
-
75 trips · avg +4.8 min
-
114 trips · avg +3.4 min
-
222 trips · avg +4.8 min
-
120 trips · avg +4.2 min
-
151 trips · avg +3.1 min
-
151 trips · avg +5.8 min
-
144 trips · avg +3.2 min
-
Bus 22 Carouge GE, Rondeau – Genève, Jardin BotaniqueCarouge GE, Rondeau – Genève, Jardin Botanique 51.9%
135 trips · avg +3.9 min
-
51 trips · avg +3 min
-
83 trips · avg +3.8 min
-
49 trips · avg +2.9 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 54.5%
299 trips · avg +3.2 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 54.5%
110 trips · avg +3.2 min
-
Bus 163 Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr.Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr. 55.3%
76 trips · avg +2.8 min
Most punctual busy lines
-
198 trips · avg +0.2 min
-
208 trips · avg +0.3 min
-
216 trips · avg +0.6 min
-
340 trips · avg +0.9 min
-
194 trips · avg +0.8 min
-
240 trips · avg +0.7 min
-
Bus 701 Lausanne, Bourdonnette – Tolochenaz, La PlantazLausanne, Bourdonnette – Tolochenaz, La Plantaz 96.3%
214 trips · avg +0.5 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 96.1%
207 trips · avg +0.9 min
Least punctual busy lines
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 35.5%
166 trips · avg +5.1 min
-
166 trips · avg +3.9 min
-
56 trips · avg +0.9 min
-
M4 Genève-Port Noir (lac) – Genève-De-Châteaubriand (lac)Genève-Port Noir (lac) – Genève-De-Châteaubriand (lac) 100%
56 trips · avg +0.9 min
Least punctual operators
-
Mouettes genevoises 57%
444 trips · avg +3.6 min
-
TPG 62.8%
9,209 trips · avg +3.9 min
-
VBL 71.1%
3,780 trips · avg +2.5 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 71.9%
303 trips · avg +2.3 min
-
Transports Publics Neuchâtelois 75.7%
2,914 trips · avg +2 min
-
Berner Oberland-Bahnen 76.6%
137 trips · avg +1.8 min
-
TPL 77.4%
1,596 trips · avg +2 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 79.5%
828 trips · avg +1.9 min
Show 17 more
-
tl 79.5%
6,580 trips · avg +2 min
-
Automobil Rottal 80.6%
439 trips · avg +1.6 min
-
Bus und Service 81.4%
1,579 trips · avg +1.7 min
-
Busbetrieb Aarau 81.5%
933 trips · avg +1.7 min
-
BVB 82.5%
5,119 trips · avg +1.6 min
-
VBZ 83%
16,499 trips · avg +1.7 min
-
Autobetrieb Sernftal 84.4%
122 trips · avg +1.6 min
-
Auto AG Rothenburg 84.6%
712 trips · avg +1.6 min
-
Lugano-Ponte Tresa 84.8%
132 trips · avg +1 min
-
Forchbahn 85.1%
174 trips · avg +1.7 min
-
RhB 85.3%
570 trips · avg +1.4 min
-
Verkehrsbetriebe Biel 85.8%
1,324 trips · avg +1.4 min
-
Autobus AG Liestal 86.1%
902 trips · avg +1.4 min
-
Matterhorn Gotthard Bahn 86.3%
300 trips · avg +1.3 min
-
AFA Bus 86.4%
235 trips · avg +1.1 min
-
Automobildienste Aare Seeland mobil 86.9%
658 trips · avg +1.1 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 87.1%
1,313 trips · avg +1.1 min
Most punctual operators
-
Zentralbahn 99.5%
368 trips · avg +0.3 min
-
THURBO 98.3%
1,108 trips · avg +0.3 min
-
BLS 97.8%
1,584 trips · avg +0.4 min
-
Aare Seeland mobil 98.5%
338 trips · avg +0.4 min
-
Verkehrsbetriebe Kreuzlingen 98.1%
483 trips · avg +0.8 min
-
Transports de la région Morges-Bière-Cossonay 100%
104 trips · avg +0.1 min
-
Schweizerische Südostbahn 97.9%
518 trips · avg +0.5 min
-
Regionalverkehr Bern-Solothurn 97.7%
605 trips · avg +0.4 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 95%
1,555 departures · avg +1.2 min
-
Bern 97.1%
1,071 departures · avg +0.9 min
-
Zürich Oerlikon 94.9%
919 departures · avg +1.1 min
-
Zürich Stadelhofen 92.7%
700 departures · avg +1.4 min
-
Winterthur 96.8%
688 departures · avg +1.2 min
-
Zürich Hardbrücke 84.4%
675 departures · avg +2.2 min
-
Olten 87.5%
570 departures · avg +1.6 min
-
St. Gallen 94.2%
538 departures · avg +1.4 min
-
Lausanne 90.9%
525 departures · avg +1.4 min
-
Aarau 94%
518 departures · avg +1 min
-
Worblaufen 97.9%
479 departures · avg +0.9 min
-
Luzern 96.8%
471 departures · avg +0.9 min
-
Genève, gare Cornavin 62.9%
2,622 departures · avg +3.4 min
-
Genève, Bel-Air 55.6%
2,325 departures · avg +5.1 min
-
Basel, Bahnhof SBB 85.1%
2,286 departures · avg +1.7 min
-
Zürich, Central 92.9%
2,252 departures · avg +1.1 min
-
Luzern, Kantonalbank 74.1%
2,155 departures · avg +2.3 min
-
Bern, Bahnhof 92.7%
2,033 departures · avg +1.3 min
-
Zürich, Bellevue 91.7%
2,012 departures · avg +1.3 min
-
Lausanne, Bel-Air 56.7%
1,959 departures · avg +3.5 min
-
Luzern, Bahnhof 84.3%
1,914 departures · avg +1.7 min
-
1,888 departures · avg +1.3 min
-
Bern, Zytglogge 90.8%
1,888 departures · avg +1.4 min
-
St. Gallen, Bahnhof 93.6%
1,860 departures · avg +1.1 min
-
Lustmühle 66.7%
108 departures · avg +2.7 min
-
Gelterkinden 68.4%
133 departures · avg +2 min
-
Muhen Nord 70.6%
153 departures · avg +1.7 min
-
Oberentfelden Engelplatz 70.6%
153 departures · avg +1.8 min
-
Täsch 71.8%
110 departures · avg +2.3 min
-
Cham Alpenblick 72.3%
141 departures · avg +2.7 min
-
Wilderswil 72.6%
135 departures · avg +2.2 min
-
St. Gallen Güterbahnhof 73.1%
108 departures · avg +2.2 min
-
St. Gallen Marktplatz 74.5%
110 departures · avg +2.2 min
-
Matten b. Interlaken 74.8%
135 departures · avg +2.2 min
-
Zug Chollermüli 75%
140 departures · avg +2.3 min
-
Zug Schutzengel 75%
140 departures · avg +2.3 min
Largest delays
- Tram 17 Genève, Plainpalaisand 3 more trips of this line +338 min
- Bus 234 Bulle, gare routière +235 min
- L Confignon, croiséeand 2 more trips of this line +186 min
- NJ Zürich HB +179 min
- Bus 21 Paudex, Verrière +122 min
- Bus 5 Thônex, Vallard – Genève-Aéroport, Terminal Genève-Aéroport, Terminal +118 min
- Bus 4 Prilly, Coudraie – Lausanne, Faverges Faverges +113 min
- Tram 12 Genève, Riveand 1 more trips of this line +110 min
- Bus 520 Zürich Flughafen, Bahnhof – Embrach-Rorbas, Bahnhof Zürich Flughafen, Bahnhofand 3 more trips of this line +97 min
- ICE Basel SBB +88 min
- Bus 25 Pully, gare +80 min