Punctuality of Swiss public transportMonday 30 March 2026
89.4% of 143,954 trips were on time. The share was lowest at 17:20: 68.3%. Of the busy lines, M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) had the lowest share on time: 20.9%.
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.
89.4%
−5.1 ptsDay before: 94.5% · 143,954 trips with live data
Average delay
+1.2 min
Canceled trips
457
0.3% 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: Sunday 29 March
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 94.6%
14,390 trips · avg +0.8 min
-
Tram 85.7%
9,823 trips · avg +1.5 min
-
Bus 89.2%
119,009 trips · avg +1.2 min
-
Metro 83.9%
336 trips · avg +1.6 min
-
Boat 45.5%
396 trips · avg +4.1 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
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 20.9%
148 trips · avg +5.8 min
-
148 trips · avg +4.8 min
-
56 trips · avg +3.5 min
-
149 trips · avg +3.7 min
-
56 trips · avg +3.6 min
-
175 trips · avg +4.6 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 51.4%
212 trips · avg +3.3 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 55.2%
154 trips · avg +4.2 min
Show 17 more
-
174 trips · avg +3.4 min
-
75 trips · avg +5 min
-
255 trips · avg +3.8 min
-
83 trips · avg +2.6 min
-
67 trips · avg +6 min
-
Bus 4 Chur, Austrasse – Chur, Seniorenzentrum CadonauChur, Austrasse – Chur, Seniorenzentrum Cadonau 63.2%
193 trips · avg +2.8 min
-
202 trips · avg +3.2 min
-
74 trips · avg +2.5 min
-
172 trips · avg +3.4 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 66.5%
206 trips · avg +2.6 min
-
218 trips · avg +2.7 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 67.4%
304 trips · avg +2.8 min
-
145 trips · avg +2.2 min
-
Bus 62 Zürich, Waidhof – Zürich, SchwamendingerplatzZürich, Waidhof – Zürich, Schwamendingerplatz 67.6%
179 trips · avg +2.4 min
-
93 trips · avg +2.4 min
-
112 trips · avg +3.1 min
-
66 trips · avg +2.6 min
Most punctual busy lines
-
306 trips · avg +0.7 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 97.9%
286 trips · avg +0.8 min
-
227 trips · avg +0.6 min
-
246 trips · avg +0.6 min
-
218 trips · avg +0.5 min
-
379 trips · avg +0.9 min
-
287 trips · avg +0.6 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 95.9%
386 trips · avg +0.6 min
Least punctual busy lines
-
67 trips · avg +6 min
-
41 trips · avg +2.3 min
-
132 trips · avg +2.7 min
-
59 trips · avg +2 min
-
107 trips · avg +1.4 min
-
80 trips · avg +1.4 min
-
114 trips · avg +1.5 min
-
43 trips · avg +1.6 min
Show 17 more
-
70 trips · avg +1.1 min
-
71 trips · avg +0.8 min
-
52 trips · avg +1.3 min
-
76 trips · avg +1.1 min
-
77 trips · avg +0.9 min
-
78 trips · avg +0.8 min
-
40 trips · avg +0.6 min
-
40 trips · avg +0.4 min
-
40 trips · avg +0.5 min
-
41 trips · avg +1 min
-
76 trips · avg +0.9 min
-
76 trips · avg +1.3 min
-
78 trips · avg +1.2 min
-
50 trips · avg +0.6 min
-
84 trips · avg +0.9 min
-
84 trips · avg +0.6 min
-
45 trips · avg +0.6 min
Most punctual busy lines
-
208 trips · avg +0.2 min
-
151 trips · avg +0.2 min
-
147 trips · avg +0.4 min
-
126 trips · avg +0.4 min
-
124 trips · avg +0.2 min
-
115 trips · avg +0.4 min
-
98 trips · avg +0.4 min
-
79 trips · avg +0.2 min
Least punctual busy lines
-
284 trips · avg +2 min
-
286 trips · avg +2.2 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 75.1%
281 trips · avg +2.3 min
-
275 trips · avg +1.9 min
-
279 trips · avg +1.9 min
-
384 trips · avg +1.8 min
-
298 trips · avg +1.6 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 83.4%
283 trips · avg +1.8 min
Show 9 more
-
290 trips · avg +1.3 min
-
276 trips · avg +1.5 min
-
303 trips · avg +1.6 min
-
289 trips · avg +1.4 min
-
288 trips · avg +1.4 min
-
286 trips · avg +1.1 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 92.3%
155 trips · avg +1.1 min
-
179 trips · avg +0.7 min
-
53 trips · avg +0.3 min
Most punctual busy lines
-
53 trips · avg +0.3 min
-
179 trips · avg +0.7 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 92.3%
155 trips · avg +1.1 min
-
286 trips · avg +1.1 min
-
288 trips · avg +1.4 min
-
289 trips · avg +1.4 min
-
303 trips · avg +1.6 min
-
276 trips · avg +1.5 min
Least punctual busy lines
-
56 trips · avg +3.5 min
-
149 trips · avg +3.7 min
-
56 trips · avg +3.6 min
-
175 trips · avg +4.6 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 51.4%
212 trips · avg +3.3 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 55.2%
154 trips · avg +4.2 min
-
174 trips · avg +3.4 min
-
75 trips · avg +5 min
Show 17 more
-
255 trips · avg +3.8 min
-
83 trips · avg +2.6 min
-
Bus 4 Chur, Austrasse – Chur, Seniorenzentrum CadonauChur, Austrasse – Chur, Seniorenzentrum Cadonau 63.2%
193 trips · avg +2.8 min
-
202 trips · avg +3.2 min
-
74 trips · avg +2.5 min
-
172 trips · avg +3.4 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 66.5%
206 trips · avg +2.6 min
-
218 trips · avg +2.7 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 67.4%
304 trips · avg +2.8 min
-
145 trips · avg +2.2 min
-
Bus 62 Zürich, Waidhof – Zürich, SchwamendingerplatzZürich, Waidhof – Zürich, Schwamendingerplatz 67.6%
179 trips · avg +2.4 min
-
93 trips · avg +2.4 min
-
112 trips · avg +3.1 min
-
66 trips · avg +2.6 min
-
171 trips · avg +2.2 min
-
123 trips · avg +2.9 min
-
64 trips · avg +1.8 min
Most punctual busy lines
-
Bus 6 St. Gallen, Bach St. Georgen – St. Gallen, HeiligkreuzSt. Gallen, Bach St. Georgen – St. Gallen, Heiligkreuz 99.5%
208 trips · avg +0.4 min
-
194 trips · avg +0.6 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 97.9%
286 trips · avg +0.8 min
-
227 trips · avg +0.6 min
-
198 trips · avg +0.5 min
-
Bus 301 La Chaux-de-Fonds, Recorne – La Chaux-de-Fonds, ArêtesLa Chaux-de-Fonds, Recorne – La Chaux-de-Fonds, Arêtes 97%
198 trips · avg +0.6 min
-
246 trips · avg +0.6 min
-
218 trips · avg +0.5 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) 20.9%
148 trips · avg +5.8 min
-
148 trips · avg +4.8 min
-
50 trips · avg +0.3 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%
50 trips · avg +0.6 min
Least punctual operators
-
Mouettes genevoises 45.5%
396 trips · avg +4.1 min
-
TPL 71.2%
1,613 trips · avg +2.6 min
-
VBL 73.9%
3,928 trips · avg +2.5 min
-
Automobil Rottal 74.9%
446 trips · avg +2 min
-
Lugano-Ponte Tresa 75.8%
132 trips · avg +2.7 min
-
Transports Publics Neuchâtelois 77.8%
2,862 trips · avg +1.9 min
-
Auto AG Rothenburg 78.7%
771 trips · avg +1.8 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 78.8%
879 trips · avg +2.3 min
Show 17 more
-
Bus und Service 79.4%
1,485 trips · avg +1.9 min
-
BVB 80.3%
4,829 trips · avg +1.8 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 81.4%
1,387 trips · avg +1.6 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 83.2%
107 trips · avg +1.7 min
-
Sihltal-Zürich-Uetliberg-Bahn 83.5%
303 trips · avg +1.4 min
-
TPF 83.7%
4,130 trips · avg +1.6 min
-
Busbetrieb Solothurn und Umgebung 83.8%
739 trips · avg +1.4 min
-
Bus Nyon-Prangins 84.1%
389 trips · avg +1.5 min
-
Montreux-Vevey-Riviera 84.3%
134 trips · avg +1.5 min
-
Autolinee FART 84.5%
727 trips · avg +1.7 min
-
Busbetrieb Aarau 84.7%
935 trips · avg +1.5 min
-
Autolinea Mendrisiense 85%
374 trips · avg +1.3 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 85.1%
302 trips · avg +1.4 min
-
VBZ 85.8%
16,677 trips · avg +1.5 min
-
Regiobus Gossau SG 85.9%
672 trips · avg +1.4 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 85.9%
1,191 trips · avg +1.2 min
-
Autobetrieb Sernftal 86%
114 trips · avg +1.8 min
Most punctual operators
-
Regionalverkehr Bern-Solothurn 100%
605 trips · avg +0.3 min
-
THURBO 98.7%
1,116 trips · avg +0.3 min
-
Aare Seeland mobil 99.4%
338 trips · avg +0.3 min
-
Appenzeller Bahnen 98.8%
343 trips · avg +0.4 min
-
Berner Oberland-Bahnen 100%
123 trips · avg +0.1 min
-
Auto AG Uri 98.6%
353 trips · avg +0.4 min
-
RhB 98.2%
509 trips · avg +0.5 min
-
BLS 97.4%
1,563 trips · avg +0.6 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 92.7%
1,729 departures · avg +1.2 min
-
Bern 97.1%
1,072 departures · avg +0.9 min
-
Zürich Oerlikon 94.9%
920 departures · avg +1.2 min
-
Zürich Stadelhofen 89.3%
699 departures · avg +1.5 min
-
Winterthur 94.5%
692 departures · avg +1.3 min
-
677 departures · avg +2.3 min
-
Olten 91.7%
601 departures · avg +1.4 min
-
St. Gallen 94.5%
530 departures · avg +1.2 min
-
Aarau 95.2%
523 departures · avg +1 min
-
Lausanne 86.9%
497 departures · avg +1.7 min
-
Renens VD 87.3%
489 departures · avg +1.7 min
-
Worblaufen 99.2%
481 departures · avg +0.8 min
-
Bern, Bahnhof 96.7%
2,964 departures · avg +1 min
-
Luzern, Kantonalbank 79.1%
2,466 departures · avg +2.3 min
-
Basel, Schifflände 87.9%
2,266 departures · avg +1.7 min
-
Bern, Hirschengraben 94.4%
2,246 departures · avg +1.3 min
-
Zürich, Central 92.3%
2,224 departures · avg +1.3 min
-
Bern, Zytglogge 94.3%
2,176 departures · avg +1.2 min
-
Luzern, Bahnhof 85.5%
2,129 departures · avg +1.9 min
-
Basel, Bahnhof SBB 88.8%
2,127 departures · avg +1.5 min
-
St. Gallen, Bahnhof 93.5%
2,104 departures · avg +1.1 min
-
Lausanne, Bel-Air 77.9%
2,089 departures · avg +2 min
-
Zürich, Bellevue 91.5%
2,081 departures · avg +1.3 min
-
Luzern, Pilatusplatz 78.5%
1,919 departures · avg +2.2 min
-
Magliaso Paese 56.1%
132 departures · avg +3.7 min
-
Agno 59.1%
132 departures · avg +3.9 min
-
Magliaso 59.8%
132 departures · avg +3.7 min
-
Serocca 60.6%
132 departures · avg +3.7 min
-
Cham Alpenblick 61%
146 departures · avg +2.6 min
-
Zug Chollermüli 61%
146 departures · avg +2.6 min
-
Bioggio Molinazzo 61.4%
132 departures · avg +3.4 min
-
Zug Schutzengel 62.9%
140 departures · avg +2.5 min
-
Baar 67.2%
186 departures · avg +2.4 min
-
Caslano 68.9%
132 departures · avg +3.2 min
-
Zürich Leimbach 69.3%
150 departures · avg +2.9 min
-
Zürich Manegg 69.3%
150 departures · avg +2.7 min
Largest delays
- Bus 1 Ebikon, Fildern – Obernau, Dorf Obernau, Dorfand 1 more trips of this line +157 min
- Bus 751 Degersheim, Post +120 min
- Tram 15 Zürich Tiefenbrunnen, Bahnhofand 1 more trips of this line +65 min
- Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, Bahnhof Zürich, Triemliand 1 more trips of this line +65 min
- R36 La Chaux-de-Fonds – Glovelier La Chaux-de-Fonds +58 min
- ICE Brigand 4 more trips of this line +55 min
- Bus 31 Renens VD, gare – St-Sulpice VD, Venoge sud Renens VD, gare +53 min
- Bus 321 Hohenems, Bahnhofand 1 more trips of this line +52 min
- Bus 612 Schwarzenburg, Bahnhof – Schwarzenburg, Bahnhof Schwarzenburg, Bahnhof +51 min
- Bus 993 Rapperswil SG, Bahnhof – Jona, Tägernau Jona, Tägernauand 1 more trips of this line +50 min
- Bus 118 Flims Dorf, Post +49 min
- Bus 411 Ilanz, Bahnhof/Post +48 min
- Bus 331 Sion, poste/gare – Aven, village Daillon, la Chapelle +47 min
- Tram 11 Zürich, Bahnhofstrasse/HB +45 min
- Bus 6 Lugano, Stazione – Lugano, Cornaredo Lugano, Cornaredoand 1 more trips of this line +44 min