Punctuality of Swiss public transportThursday 4 June 2026
85.9% of 141,005 trips were on time. The share was lowest at 17:50: 65.7%. Of the busy lines, Bus 91 Zollikerberg, Station – Zürich, Buchholz had the lowest share on time: 37.5%.
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.
85.9%
+0.9 ptsDay before: 85% · 141,005 trips with live data
Average delay
+1.4 min
Canceled trips
542
0.4% 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: Wednesday 3 June
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 93.1%
14,085 trips · avg +1 min
-
Tram 77.2%
11,204 trips · avg +2.3 min
-
Bus 85.9%
114,976 trips · avg +1.4 min
-
Metro 94.3%
296 trips · avg +1.3 min
-
Boat 85.4%
444 trips · avg +1.5 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
-
56 trips · avg +4.7 min
-
49 trips · avg +3.8 min
-
Bus 50 Versoix, Centre sportif – Genève-Aéroport, TerminalVersoix, Centre sportif – Genève-Aéroport, Terminal 39.3%
56 trips · avg +5.9 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 45.1%
215 trips · avg +3.7 min
-
148 trips · avg +3.1 min
-
76 trips · avg +5.3 min
-
74 trips · avg +3.7 min
-
188 trips · avg +7.8 min
Show 17 more
-
151 trips · avg +3.3 min
-
114 trips · avg +5.2 min
-
Bus 59 Chambésy, Plage du Vengeron – Genève-Aéroport, TerminalChambésy, Plage du Vengeron – Genève-Aéroport, Terminal 52.2%
67 trips · avg +3.4 min
-
104 trips · avg +3.2 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 53.2%
299 trips · avg +4.2 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 53.6%
110 trips · avg +3.7 min
-
Bus 32 Zürich, Strassenverkehrsamt – Zürich, HolzerhurdZürich, Strassenverkehrsamt – Zürich, Holzerhurd 54%
322 trips · avg +3.2 min
-
145 trips · avg +2.7 min
-
Bus 751 Stettbach, Bahnhof – Zürich, Kirche FlunternStettbach, Bahnhof – Zürich, Kirche Fluntern 56.3%
96 trips · avg +3 min
-
67 trips · avg +8.3 min
-
74 trips · avg +4.4 min
-
72 trips · avg +4.2 min
-
Bus 83 Zürich Altstetten, Bahnhof – Zürich, MilchbuckZürich Altstetten, Bahnhof – Zürich, Milchbuck 57.1%
184 trips · avg +4.2 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 57.5%
174 trips · avg +3.1 min
-
144 trips · avg +3.5 min
-
95 trips · avg +3.9 min
-
Bus 161 Zürich, Bürkliplatz – Kilchberg ZH, NeuweidZürich, Bürkliplatz – Kilchberg ZH, Neuweid 59.4%
96 trips · avg +3.5 min
Most punctual busy lines
-
230 trips · avg +0.6 min
-
294 trips · avg +0.8 min
-
306 trips · avg +0.7 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 93.2%
280 trips · avg +0.7 min
-
240 trips · avg +1.2 min
-
295 trips · avg +0.9 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 91.9%
285 trips · avg +1 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 91.4%
243 trips · avg +1.2 min
Least punctual busy lines
-
104 trips · avg +3.2 min
-
67 trips · avg +8.3 min
-
40 trips · avg +4.1 min
-
82 trips · avg +4.8 min
-
75 trips · avg +1.5 min
-
46 trips · avg +1.7 min
-
41 trips · avg +0.9 min
-
78 trips · avg +1.2 min
Show 17 more
-
42 trips · avg +1 min
-
77 trips · avg +1.1 min
-
53 trips · avg +1 min
-
65 trips · avg +1.1 min
-
81 trips · avg +1 min
-
74 trips · avg +1.7 min
-
82 trips · avg +0.8 min
-
80 trips · avg +0.9 min
-
80 trips · avg +0.9 min
-
42 trips · avg +0.6 min
-
71 trips · avg +0.8 min
-
57 trips · avg +2.3 min
-
72 trips · avg +1.1 min
-
44 trips · avg +0.7 min
-
60 trips · avg +0.6 min
-
46 trips · avg +0.7 min
-
78 trips · avg +0.7 min
Most punctual busy lines
-
126 trips · avg +0.2 min
-
78 trips · avg +0.1 min
-
77 trips · avg +0.3 min
-
75 trips · avg +0.1 min
-
72 trips · avg +0.2 min
-
72 trips · avg +0.8 min
-
68 trips · avg +0.1 min
-
58 trips · avg +0.1 min
Least punctual busy lines
-
188 trips · avg +7.8 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 61.1%
350 trips · avg +3.3 min
-
286 trips · avg +2.8 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 62.2%
283 trips · avg +2.7 min
-
300 trips · avg +3.8 min
-
293 trips · avg +2 min
-
274 trips · avg +2.3 min
-
364 trips · avg +2.3 min
Show 14 more
-
284 trips · avg +2 min
-
304 trips · avg +4.6 min
-
273 trips · avg +2 min
-
298 trips · avg +2 min
-
288 trips · avg +1.7 min
-
306 trips · avg +1.8 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 84.9%
298 trips · avg +1.5 min
-
216 trips · avg +1.4 min
-
304 trips · avg +1.4 min
-
179 trips · avg +0.9 min
-
295 trips · avg +0.9 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 96.1%
155 trips · avg +0.9 min
-
294 trips · avg +0.8 min
-
142 trips · avg +0.2 min
Most punctual busy lines
-
142 trips · avg +0.2 min
-
294 trips · avg +0.8 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 96.1%
155 trips · avg +0.9 min
-
295 trips · avg +0.9 min
-
179 trips · avg +0.9 min
-
304 trips · avg +1.4 min
-
216 trips · avg +1.4 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 84.9%
298 trips · avg +1.5 min
Least punctual busy lines
-
56 trips · avg +4.7 min
-
49 trips · avg +3.8 min
-
Bus 50 Versoix, Centre sportif – Genève-Aéroport, TerminalVersoix, Centre sportif – Genève-Aéroport, Terminal 39.3%
56 trips · avg +5.9 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 45.1%
215 trips · avg +3.7 min
-
148 trips · avg +3.1 min
-
76 trips · avg +5.3 min
-
74 trips · avg +3.7 min
-
151 trips · avg +3.3 min
Show 17 more
-
114 trips · avg +5.2 min
-
Bus 59 Chambésy, Plage du Vengeron – Genève-Aéroport, TerminalChambésy, Plage du Vengeron – Genève-Aéroport, Terminal 52.2%
67 trips · avg +3.4 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 53.2%
299 trips · avg +4.2 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 53.6%
110 trips · avg +3.7 min
-
Bus 32 Zürich, Strassenverkehrsamt – Zürich, HolzerhurdZürich, Strassenverkehrsamt – Zürich, Holzerhurd 54%
322 trips · avg +3.2 min
-
145 trips · avg +2.7 min
-
Bus 751 Stettbach, Bahnhof – Zürich, Kirche FlunternStettbach, Bahnhof – Zürich, Kirche Fluntern 56.3%
96 trips · avg +3 min
-
74 trips · avg +4.4 min
-
72 trips · avg +4.2 min
-
Bus 83 Zürich Altstetten, Bahnhof – Zürich, MilchbuckZürich Altstetten, Bahnhof – Zürich, Milchbuck 57.1%
184 trips · avg +4.2 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 57.5%
174 trips · avg +3.1 min
-
144 trips · avg +3.5 min
-
95 trips · avg +3.9 min
-
Bus 161 Zürich, Bürkliplatz – Kilchberg ZH, NeuweidZürich, Bürkliplatz – Kilchberg ZH, Neuweid 59.4%
96 trips · avg +3.5 min
-
Bus 3 Grand-Saconnex, Gardiol – Genève, Crêts-de-ChampelGrand-Saconnex, Gardiol – Genève, Crêts-de-Champel 60.2%
251 trips · avg +4.1 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 60.4%
154 trips · avg +2.5 min
-
114 trips · avg +3 min
Most punctual busy lines
-
230 trips · avg +0.6 min
-
194 trips · avg +0.7 min
-
203 trips · avg +0.8 min
-
Bus 301 La Chaux-de-Fonds, Recorne – La Chaux-de-Fonds, ArêtesLa Chaux-de-Fonds, Recorne – La Chaux-de-Fonds, Arêtes 95.5%
198 trips · avg +0.6 min
-
Bus 6 St. Gallen, Bach St. Georgen – St. Gallen, HeiligkreuzSt. Gallen, Bach St. Georgen – St. Gallen, Heiligkreuz 94.2%
208 trips · avg +0.8 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 93.2%
280 trips · avg +0.7 min
-
240 trips · avg +1.2 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 91.9%
285 trips · avg +1 min
Least punctual busy lines
-
166 trips · avg +2 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 84.3%
166 trips · avg +1.6 min
-
56 trips · avg +0.8 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.8 min
Least punctual operators
-
Busbetrieb Aarau 65.9%
933 trips · avg +3 min
-
TPG 67.2%
7,307 trips · avg +3.3 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 70.4%
108 trips · avg +2.3 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 70.6%
303 trips · avg +2.6 min
-
BVB 72.9%
4,829 trips · avg +2.3 min
-
Transports Publics Neuchâtelois 73.3%
2,823 trips · avg +2.1 min
-
Matterhorn Gotthard Bahn 75.2%
315 trips · avg +1.7 min
-
Autobetrieb Sernftal 76.1%
134 trips · avg +2.1 min
Show 17 more
-
Bernmobil 77.3%
5,033 trips · avg +2.3 min
-
VBZ 78.6%
16,705 trips · avg +2 min
-
Verkehrsbetriebe Biel 78.8%
1,338 trips · avg +2.1 min
-
Regiobus Gossau SG 79.6%
680 trips · avg +2.6 min
-
Bus und Service 79.6%
1,533 trips · avg +1.8 min
-
TPL 80.6%
1,186 trips · avg +1.4 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 80.7%
1,191 trips · avg +1.7 min
-
VBL 80.8%
2,693 trips · avg +1.8 min
-
Stadtbus Frauenfeld 81.5%
574 trips · avg +1.9 min
-
tl 82.1%
6,981 trips · avg +1.7 min
-
Regionalbus Lenzburg 84.1%
553 trips · avg +1.5 min
-
Montreux-Oberland Bernois 84.1%
132 trips · avg +1.5 min
-
Bus Nyon-Prangins 84.1%
359 trips · avg +1.6 min
-
Verkehrsbetriebe der Stadt St.Gallen 84.6%
1,711 trips · avg +1.4 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 85%
595 trips · avg +1.8 min
-
Mouettes genevoises 85.4%
444 trips · avg +1.5 min
-
Autobus AG Liestal 85.8%
911 trips · avg +1.4 min
Most punctual operators
-
Regionalverkehr Bern-Solothurn 99.3%
606 trips · avg +0.3 min
-
Zentralbahn 99.5%
369 trips · avg +0.3 min
-
Sihltal-Zürich-Uetliberg-Bahn 99.6%
267 trips · avg +0.5 min
-
Auto AG Uri 99.1%
341 trips · avg +0.3 min
-
Autolinee Regionali Luganesi 100%
136 trips · avg +0.2 min
-
BLS 97.9%
1,554 trips · avg +0.5 min
-
Busbetrieb Grenchen und Umgebung 98.2%
382 trips · avg +0.6 min
-
Busbetrieb Solothurn und Umgebung 97.3%
765 trips · avg +0.7 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 90.7%
1,566 departures · avg +1.4 min
-
Bern 97.1%
1,072 departures · avg +0.9 min
-
Zürich Oerlikon 91.7%
921 departures · avg +1.3 min
-
700 departures · avg +1.8 min
-
Zürich Hardbrücke 73.1%
677 departures · avg +2.5 min
-
Winterthur 94%
671 departures · avg +1.5 min
-
Olten 89.5%
571 departures · avg +1.6 min
-
St. Gallen 92.3%
531 departures · avg +1.4 min
-
Aarau 90.6%
523 departures · avg +1.1 min
-
Lausanne 83.3%
484 departures · avg +2.5 min
-
Renens VD 83.3%
480 departures · avg +2.3 min
-
Worblaufen 98.8%
480 departures · avg +0.9 min
-
Bern, Bahnhof 85%
2,964 departures · avg +1.9 min
-
Genève, gare Cornavin 67.4%
2,438 departures · avg +3.4 min
-
Genève, Bel-Air 71.8%
2,343 departures · avg +3.4 min
-
Basel, Schifflände 79.9%
2,270 departures · avg +2 min
-
Zürich, Central 86.9%
2,268 departures · avg +1.6 min
-
2,241 departures · avg +2.7 min
-
Bern, Zytglogge 78.6%
2,177 departures · avg +2.5 min
-
Lausanne, Bel-Air 67.8%
2,137 departures · avg +2.7 min
-
Basel, Bahnhof SBB 83.4%
2,117 departures · avg +1.9 min
-
St. Gallen, Bahnhof 86.4%
2,112 departures · avg +1.8 min
-
Zürich, Bellevue 84.3%
2,096 departures · avg +1.8 min
-
1,930 departures · avg +1.9 min
-
100 departures · avg +2.2 min
-
St. Gallen Marktplatz 62.7%
110 departures · avg +2.8 min
-
Gelterkinden 66.4%
134 departures · avg +2.3 min
-
Lustmühle 67.6%
108 departures · avg +2.6 min
-
St. Gallen Notkersegg 69.1%
110 departures · avg +2.4 min
-
St. Gallen Birnbäumen 69.1%
110 departures · avg +2.4 min
-
Schwarzer Bären 70%
110 departures · avg +2.3 min
-
St. Gallen Güterbahnhof 70.4%
108 departures · avg +2.1 min
-
Oberentfelden Engelplatz 71.9%
153 departures · avg +1.7 min
-
Täsch 73%
115 departures · avg +2.2 min
-
Zürich Hardbrücke 73.1%
677 departures · avg +2.5 min
-
Muhen Nord 73.2%
153 departures · avg +1.6 min
Largest delays
- Tram 7 Bern, Ostring – Bern, Bümpliz Bern, Bümplizand 1 more trips of this line +127 min
- R36 La Chaux-de-Fonds – Glovelier Glovelier +124 min
- Tram 12 Lancy-Bachet, gare – Thônex, Moillesulaz Thônex, Moillesulazand 10 more trips of this line +123 min
- Bus 3 Lausanne-Gare +117 min
- Bus 8 Le Mont-sur-L., Grand-Mont – Pully, gare Pully, gareand 1 more trips of this line +95 min
- Tram 18 Grand-Lancy, Palettes – Meyrin, CERN Meyrin, CERNand 1 more trips of this line +85 min
- Bus 17 Köniz, Weiermatt – Bern, Bahnhof Köniz, Weiermatt +80 min
- Bus 10 Genève, Riveand 3 more trips of this line +67 min
- RE33 St-Maurice – Annemasse St-Maurice +66 min
- Bus 612 Schwarzenburg, Bahnhof – Schwarzenburg, Bahnhof Schwarzenburg, Bahnhof +63 min
- Tram 15 Genève, Nationsand 2 more trips of this line +62 min
- NJ Feldkirch – Zürich HB Zürich HB +61 min
- Bus 4 Prilly, Coudraie – Lausanne, Faverges Faverges +60 min
- Bus 2 Genève, Plage – Bernex, Cressy Genève, Plageand 3 more trips of this line +58 min
- RJX Zürich HB +57 min