Punctuality of Swiss public transportThursday 18 June 2026
85.5% of 150,974 trips were on time. The share was lowest at 17:30: 68.4%. Of the busy lines, Bus 21 Malbun, Zentrum – Vaduz, Städtle had the lowest share on time: 19.7%.
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.5%
+0.3 ptsDay before: 85.2% · 150,974 trips with live data
Average delay
+1.4 min
Canceled trips
1,137
0.7% 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 17 June
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 89.5%
14,206 trips · avg +1.3 min
-
Tram 79.6%
11,593 trips · avg +1.9 min
-
Bus 85.7%
124,435 trips · avg +1.4 min
-
Metro 90.5%
296 trips · avg +1.6 min
-
Boat 52.5%
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
-
76 trips · avg +6.8 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 34.9%
166 trips · avg +4.7 min
-
166 trips · avg +4.8 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 38.6%
215 trips · avg +3.9 min
-
62 trips · avg +3.6 min
-
59 trips · avg +16.7 min
-
67 trips · avg +4 min
-
Bus 163 Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr.Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr. 43.4%
76 trips · avg +3.5 min
Show 17 more
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 44.6%
298 trips · avg +4.2 min
-
49 trips · avg +3.2 min
-
174 trips · avg +3.7 min
-
Bus 108 Neuchâtel, Temple Valangines – Neuchâtel, Place PuryNeuchâtel, Temple Valangines – Neuchâtel, Place Pury 50%
186 trips · avg +3.4 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 51.1%
282 trips · avg +3.9 min
-
217 trips · avg +3.5 min
-
285 trips · avg +3.2 min
-
285 trips · avg +3.5 min
-
145 trips · avg +3 min
-
45 trips · avg +3.1 min
-
327 trips · avg +3.3 min
-
202 trips · avg +4.1 min
-
175 trips · avg +2.7 min
-
48 trips · avg +3.7 min
-
Bus 32 Zürich, Strassenverkehrsamt – Zürich, HolzerhurdZürich, Strassenverkehrsamt – Zürich, Holzerhurd 58.4%
329 trips · avg +3 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 58.5%
106 trips · avg +3 min
-
126 trips · avg +2.3 min
Most punctual busy lines
-
246 trips · avg +0.5 min
-
230 trips · avg +0.7 min
-
233 trips · avg +0.9 min
-
240 trips · avg +0.9 min
-
275 trips · avg +0.8 min
-
283 trips · avg +0.9 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 94.6%
280 trips · avg +0.8 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 92.2%
243 trips · avg +1.2 min
Least punctual busy lines
-
59 trips · avg +16.7 min
-
126 trips · avg +2.3 min
-
79 trips · avg +3.2 min
-
76 trips · avg +3.6 min
-
104 trips · avg +2.3 min
-
64 trips · avg +3.4 min
-
42 trips · avg +2.3 min
-
47 trips · avg +3.7 min
Show 17 more
-
117 trips · avg +2.8 min
-
79 trips · avg +1.9 min
-
65 trips · avg +1.7 min
-
71 trips · avg +1.9 min
-
78 trips · avg +1.8 min
-
91 trips · avg +2.3 min
-
82 trips · avg +2 min
-
59 trips · avg +1.4 min
-
76 trips · avg +1.7 min
-
68 trips · avg +0.9 min
-
160 trips · avg +1.1 min
-
125 trips · avg +1.2 min
-
48 trips · avg +1 min
-
40 trips · avg +1.2 min
-
40 trips · avg +2.9 min
-
58 trips · avg +0.7 min
-
44 trips · avg +1 min
Most punctual busy lines
-
79 trips · avg +0.1 min
-
73 trips · avg +0.3 min
-
72 trips · avg +0.5 min
-
58 trips · avg +0 min
-
143 trips · avg +0.2 min
-
77 trips · avg +0.3 min
-
75 trips · avg +0.2 min
-
72 trips · avg +0.4 min
Least punctual busy lines
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 51.1%
282 trips · avg +3.9 min
-
285 trips · avg +3.5 min
-
273 trips · avg +2.5 min
-
281 trips · avg +2.1 min
-
275 trips · avg +2.2 min
-
362 trips · avg +2 min
-
171 trips · avg +2.7 min
-
285 trips · avg +1.8 min
Show 14 more
-
288 trips · avg +1.9 min
-
305 trips · avg +1.8 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 82.2%
349 trips · avg +1.8 min
-
297 trips · avg +1.6 min
-
303 trips · avg +1.6 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 84.5%
297 trips · avg +1.3 min
-
297 trips · avg +2.1 min
-
253 trips · avg +1.2 min
-
424 trips · avg +1.2 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 89.5%
153 trips · avg +1.4 min
-
285 trips · avg +0.9 min
-
219 trips · avg +0.9 min
-
283 trips · avg +0.9 min
-
142 trips · avg +0.2 min
Most punctual busy lines
-
142 trips · avg +0.2 min
-
283 trips · avg +0.9 min
-
219 trips · avg +0.9 min
-
285 trips · avg +0.9 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 89.5%
153 trips · avg +1.4 min
-
424 trips · avg +1.2 min
-
253 trips · avg +1.2 min
-
297 trips · avg +2.1 min
Least punctual busy lines
-
76 trips · avg +6.8 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 38.6%
215 trips · avg +3.9 min
-
62 trips · avg +3.6 min
-
67 trips · avg +4 min
-
Bus 163 Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr.Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr. 43.4%
76 trips · avg +3.5 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 44.6%
298 trips · avg +4.2 min
-
49 trips · avg +3.2 min
-
174 trips · avg +3.7 min
Show 17 more
-
Bus 108 Neuchâtel, Temple Valangines – Neuchâtel, Place PuryNeuchâtel, Temple Valangines – Neuchâtel, Place Pury 50%
186 trips · avg +3.4 min
-
217 trips · avg +3.5 min
-
285 trips · avg +3.2 min
-
145 trips · avg +3 min
-
45 trips · avg +3.1 min
-
327 trips · avg +3.3 min
-
202 trips · avg +4.1 min
-
175 trips · avg +2.7 min
-
48 trips · avg +3.7 min
-
Bus 32 Zürich, Strassenverkehrsamt – Zürich, HolzerhurdZürich, Strassenverkehrsamt – Zürich, Holzerhurd 58.4%
329 trips · avg +3 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 58.5%
106 trips · avg +3 min
-
80 trips · avg +3.7 min
-
276 trips · avg +2.8 min
-
254 trips · avg +2.8 min
-
Bus 62 Zürich, Waidhof – Zürich, SchwamendingerplatzZürich, Waidhof – Zürich, Schwamendingerplatz 60.7%
178 trips · avg +2.9 min
-
102 trips · avg +2.6 min
-
Bus 83 Zürich Altstetten, Bahnhof – Zürich, MilchbuckZürich Altstetten, Bahnhof – Zürich, Milchbuck 60.8%
171 trips · avg +3.1 min
Most punctual busy lines
-
246 trips · avg +0.5 min
-
203 trips · avg +0.7 min
-
Bus 6 St. Gallen, Bach St. Georgen – St. Gallen, HeiligkreuzSt. Gallen, Bach St. Georgen – St. Gallen, Heiligkreuz 96.2%
208 trips · avg +0.6 min
-
Bus 5 St. Gallen, Riethüsli – St. Gallen, RotmontenSt. Gallen, Riethüsli – St. Gallen, Rotmonten 95.7%
208 trips · avg +0.9 min
-
230 trips · avg +0.7 min
-
233 trips · avg +0.9 min
-
240 trips · avg +0.9 min
-
275 trips · avg +0.8 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) 34.9%
166 trips · avg +4.7 min
-
166 trips · avg +4.8 min
-
56 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%
56 trips · avg +0.5 min
Least punctual operators
-
Mouettes genevoises 52.5%
444 trips · avg +3.6 min
-
Autobetrieb Sernftal 56.3%
135 trips · avg +3.5 min
-
Lugano-Ponte Tresa 58.7%
126 trips · avg +2.3 min
-
VBL 66%
3,925 trips · avg +2.5 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 66.4%
896 trips · avg +3 min
-
Automobil Rottal 67%
464 trips · avg +2.5 min
-
BVB 68.8%
4,807 trips · avg +2.6 min
-
TPL 71.6%
1,613 trips · avg +2.4 min
Show 17 more
-
Transports Publics Neuchâtelois 71.7%
3,010 trips · avg +2.2 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 73.1%
108 trips · avg +2.6 min
-
Montreux-Oberland Bernois 75.8%
132 trips · avg +2 min
-
Busbetrieb Aarau 77.4%
935 trips · avg +2.1 min
-
Forchbahn 77.8%
171 trips · avg +2.7 min
-
Bus Nyon-Prangins 79.8%
357 trips · avg +1.8 min
-
Sierre-Montana-Crans 80%
205 trips · avg +2 min
-
VBZ 80.5%
16,653 trips · avg +1.9 min
-
Appenzeller Bahnen 80.9%
345 trips · avg +1.6 min
-
Matterhorn Gotthard Bahn 80.9%
314 trips · avg +1.5 min
-
Auto AG Rothenburg 81%
717 trips · avg +1.6 min
-
TPG 81.3%
9,581 trips · avg +1.6 min
-
Bus und Service 81.4%
1,578 trips · avg +1.7 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 81.9%
1,385 trips · avg +1.8 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 82.2%
303 trips · avg +1.8 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 82.3%
1,191 trips · avg +1.6 min
-
Verkehrsbetriebe Biel 82.5%
1,330 trips · avg +1.6 min
Most punctual operators
-
Busbetrieb Grenchen und Umgebung 99%
384 trips · avg +0.5 min
-
Sihltal-Zürich-Uetliberg-Bahn 99.3%
267 trips · avg +0.4 min
-
Lausanne-Echallens-Bercher 99.3%
143 trips · avg +0.2 min
-
THURBO 96.9%
1,113 trips · avg +0.5 min
-
Wengernalpbahn 99.2%
123 trips · avg +0.3 min
-
Aare Seeland mobil 97.6%
338 trips · avg +0.5 min
-
BLS 95.6%
1,557 trips · avg +0.6 min
-
Verkehrsbetrieb der Landschaft Davos 95.5%
376 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 75.5%
1,496 departures · avg +2.8 min
-
Bern 93.8%
1,070 departures · avg +1.2 min
-
Zürich Oerlikon 73.3%
865 departures · avg +2.7 min
-
Winterthur 86.7%
690 departures · avg +2.4 min
-
Zürich Stadelhofen 70.6%
640 departures · avg +3.2 min
-
Zürich Hardbrücke 62.3%
623 departures · avg +3.9 min
-
Olten 86.7%
565 departures · avg +1.9 min
-
St. Gallen 85.8%
536 departures · avg +2.4 min
-
Aarau 91%
521 departures · avg +1.3 min
-
Lausanne 86.5%
511 departures · avg +1.8 min
-
Renens VD 82.2%
482 departures · avg +2.1 min
-
Worblaufen 92.6%
476 departures · avg +1.2 min
-
3,050 departures · avg +1.6 min
-
Genève, Bel-Air 82.8%
3,016 departures · avg +1.7 min
-
Bern, Bahnhof 93.7%
2,963 departures · avg +1.2 min
-
Luzern, Kantonalbank 73.1%
2,260 departures · avg +2.2 min
-
Basel, Schifflände 73.7%
2,258 departures · avg +2.3 min
-
Bern, Hirschengraben 86.1%
2,243 departures · avg +1.7 min
-
Zürich, Central 88.8%
2,241 departures · avg +1.4 min
-
Bern, Zytglogge 90.3%
2,172 departures · avg +1.5 min
-
St. Gallen, Bahnhof 92.3%
2,118 departures · avg +1.2 min
-
Basel, Bahnhof SBB 79.7%
2,109 departures · avg +2.1 min
-
Lausanne, Bel-Air 76.2%
2,106 departures · avg +2.1 min
-
Zürich, Bellevue 86.5%
2,075 departures · avg +1.8 min
-
Lustmühle 32.7%
107 departures · avg +5 min
-
Schwarzer Bären 36.7%
109 departures · avg +4.7 min
-
St. Gallen Notkersegg 36.7%
109 departures · avg +4.7 min
-
St. Gallen Birnbäumen 37.6%
109 departures · avg +4.6 min
-
St. Gallen Marktplatz 37.6%
109 departures · avg +4.6 min
-
Vögelinsegg 38.5%
109 departures · avg +4.7 min
-
Schützengarten 40.4%
109 departures · avg +4.6 min
-
St. Gallen Schülerhaus 41.3%
109 departures · avg +4.4 min
-
St. Gallen Riethüsli 42.1%
107 departures · avg +4.5 min
-
Agno 42.1%
126 departures · avg +3.6 min
-
Niederteufen 42.3%
111 departures · avg +4.3 min
-
107 departures · avg +4.5 min
Largest delays
- Bus 18 Lausanne, Clochatte – Crissier, Timonet Crissier Timonet +100 min
- Bus 121 Düdingen, Bahnhof +96 min
- Bus 3 Wettingen, Brunnenwiese +83 min
- TGV Zürich HB +75 min
- EC Bregenz – Zürich HB Zürich HBand 8 more trips of this line +74 min
- EV Basel, Dreispitz – Aesch BL, Dorf Aesch BL, Dorf +73 min
- Bus 50 Versoix, Centre sportif +72 min
- Bus 47 Grandv, P. Grana +66 min
- Bus 21 Blécherette +62 min
- Bus 531 Obertschappina – Thusis, Bahnhof Obertschappina +61 min
- Bus 1 Ebikon, Fildern – Obernau, Dorf Obernau, Dorf +59 min
- ICE Basel Bad Bfand 6 more trips of this line +58 min
- Bus 454 Romont FR, gare +58 min
- NJ Feldkirchand 1 more trips of this line +58 min
- Bus 201 Vevey, funiculaire – Rennaz, village Rennaz, village +55 min