Punctuality of Swiss public transportThursday 21 May 2026
85% of 147,682 trips were on time. The share was lowest at 17:30: 64.3%. Of the busy lines, Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'Rue had the lowest share on time: 24.8%.
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%
−1.4 ptsDay before: 86.4% · 147,682 trips with live data
Average delay
+1.5 min
Canceled trips
623
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 20 May
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 93.3%
14,260 trips · avg +1 min
-
Tram 82.9%
11,646 trips · avg +1.8 min
-
Bus 84.3%
121,044 trips · avg +1.5 min
-
Metro 84.5%
336 trips · avg +1.8 min
-
Boat 66.4%
396 trips · avg +3 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 Marin-Epagnier, gare – Cormondrèche, Grand'RueMarin-Epagnier, gare – Cormondrèche, Grand'Rue 24.8%
230 trips · avg +5.5 min
-
68 trips · avg +5.6 min
-
64 trips · avg +6.1 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 35.1%
268 trips · avg +5 min
-
56 trips · avg +4.2 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 38%
213 trips · avg +4 min
-
156 trips · avg +5.8 min
-
101 trips · avg +5.9 min
Show 17 more
-
57 trips · avg +3.8 min
-
163 trips · avg +3.4 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 44.4%
214 trips · avg +3.7 min
-
62 trips · avg +3.8 min
-
Bus 310 La Chaux-de-Fonds, Sombaille – La Chaux-de-Fonds, gareLa Chaux-de-Fonds, Sombaille – La Chaux-de-Fonds, gare 45.5%
55 trips · avg +3 min
-
99 trips · avg +4.5 min
-
58 trips · avg +3 min
-
148 trips · avg +4.1 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 47.9%
71 trips · avg +5.7 min
-
76 trips · avg +3.7 min
-
104 trips · avg +4.7 min
-
175 trips · avg +3.6 min
-
99 trips · avg +3.3 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 49.5%
218 trips · avg +5.7 min
-
Bus 7 Schaffhausen, Bahnhof – Neuhausen, Bahnhof SBBSchaffhausen, Bahnhof – Neuhausen, Bahnhof SBB 50%
162 trips · avg +3.4 min
-
Bus 3 Grand-Saconnex, Gardiol – Genève, Crêts-de-ChampelGrand-Saconnex, Gardiol – Genève, Crêts-de-Champel 50.6%
322 trips · avg +4.7 min
-
Bus 312 La Chaux-de-Fonds, gare – La Chaux-de-F, La Joux-PerretLa Chaux-de-Fonds, gare – La Chaux-de-F, La Joux-Perret 51.3%
78 trips · avg +6.7 min
Most punctual busy lines
-
306 trips · avg +0.8 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 96.1%
282 trips · avg +1 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.8%
286 trips · avg +0.9 min
-
294 trips · avg +0.9 min
-
312 trips · avg +0.7 min
-
304 trips · avg +1.1 min
-
275 trips · avg +0.7 min
-
296 trips · avg +1 min
Least punctual busy lines
-
67 trips · avg +9.2 min
-
R15 Neuchâtel Place Pury Littorail – Boudry LittorailNeuchâtel Place Pury Littorail – Boudry Littorail 62.9%
116 trips · avg +4.5 min
-
81 trips · avg +5.4 min
-
68 trips · avg +3 min
-
76 trips · avg +2 min
-
41 trips · avg +4.2 min
-
40 trips · avg +3 min
-
58 trips · avg +1.2 min
Show 17 more
-
62 trips · avg +1.5 min
-
57 trips · avg +1.2 min
-
57 trips · avg +1.1 min
-
107 trips · avg +1.5 min
-
79 trips · avg +1.3 min
-
104 trips · avg +1.3 min
-
76 trips · avg +1.5 min
-
77 trips · avg +1.4 min
-
40 trips · avg +1.1 min
-
84 trips · avg +1.2 min
-
78 trips · avg +1.1 min
-
80 trips · avg +1.4 min
-
72 trips · avg +1 min
-
78 trips · avg +0.9 min
-
80 trips · avg +1.4 min
-
41 trips · avg +0.6 min
-
53 trips · avg +1.3 min
Most punctual busy lines
-
208 trips · avg +0.2 min
-
153 trips · avg +0.4 min
-
126 trips · avg +0.2 min
-
110 trips · avg +0.3 min
-
77 trips · avg +0.3 min
-
73 trips · avg +0.3 min
-
72 trips · avg +0.1 min
-
72 trips · avg +0.6 min
Least punctual busy lines
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 65.8%
304 trips · avg +2.7 min
-
287 trips · avg +2.6 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 68%
284 trips · avg +2.7 min
-
289 trips · avg +1.9 min
-
Tram 8 Bern Brünnen Westside, Bahnhof – Bern, SaaliBern Brünnen Westside, Bahnhof – Bern, Saali 71.1%
311 trips · avg +2.3 min
-
274 trips · avg +2.1 min
-
279 trips · avg +2.7 min
-
295 trips · avg +1.9 min
Show 17 more
-
309 trips · avg +1.8 min
-
413 trips · avg +1.9 min
-
300 trips · avg +1.7 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 80.9%
278 trips · avg +1.6 min
-
448 trips · avg +1.7 min
-
297 trips · avg +2 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 81.7%
278 trips · avg +1.8 min
-
302 trips · avg +1.6 min
-
364 trips · avg +1.7 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 84.1%
359 trips · avg +1.9 min
-
288 trips · avg +1.7 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 86.1%
302 trips · avg +1.5 min
-
276 trips · avg +1.5 min
-
224 trips · avg +1.3 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 88%
350 trips · avg +1.5 min
-
303 trips · avg +1.5 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 90.5%
285 trips · avg +1.1 min
Most punctual busy lines
-
142 trips · avg +0.2 min
-
216 trips · avg +0.8 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 96.1%
282 trips · avg +1 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 96.1%
153 trips · avg +1.1 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 95.5%
154 trips · avg +1 min
-
294 trips · avg +0.9 min
-
312 trips · avg +0.7 min
-
304 trips · avg +1.1 min
Least punctual busy lines
-
Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'RueMarin-Epagnier, gare – Cormondrèche, Grand'Rue 24.8%
230 trips · avg +5.5 min
-
68 trips · avg +5.6 min
-
64 trips · avg +6.1 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 35.1%
268 trips · avg +5 min
-
56 trips · avg +4.2 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 38%
213 trips · avg +4 min
-
156 trips · avg +5.8 min
-
101 trips · avg +5.9 min
Show 17 more
-
57 trips · avg +3.8 min
-
163 trips · avg +3.4 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 44.4%
214 trips · avg +3.7 min
-
62 trips · avg +3.8 min
-
Bus 310 La Chaux-de-Fonds, Sombaille – La Chaux-de-Fonds, gareLa Chaux-de-Fonds, Sombaille – La Chaux-de-Fonds, gare 45.5%
55 trips · avg +3 min
-
99 trips · avg +4.5 min
-
58 trips · avg +3 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 47.9%
71 trips · avg +5.7 min
-
76 trips · avg +3.7 min
-
104 trips · avg +4.7 min
-
175 trips · avg +3.6 min
-
99 trips · avg +3.3 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 49.5%
218 trips · avg +5.7 min
-
Bus 7 Schaffhausen, Bahnhof – Neuhausen, Bahnhof SBBSchaffhausen, Bahnhof – Neuhausen, Bahnhof SBB 50%
162 trips · avg +3.4 min
-
Bus 3 Grand-Saconnex, Gardiol – Genève, Crêts-de-ChampelGrand-Saconnex, Gardiol – Genève, Crêts-de-Champel 50.6%
322 trips · avg +4.7 min
-
Bus 312 La Chaux-de-Fonds, gare – La Chaux-de-F, La Joux-PerretLa Chaux-de-Fonds, gare – La Chaux-de-F, La Joux-Perret 51.3%
78 trips · avg +6.7 min
-
146 trips · avg +3.3 min
Most punctual busy lines
-
230 trips · avg +0.6 min
-
Bus 17 Villars-Ste-Croix, Croix-Péage – Lausanne, VigieVillars-Ste-Croix, Croix-Péage – Lausanne, Vigie 96.8%
250 trips · avg +0.5 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.8%
286 trips · avg +0.9 min
-
243 trips · avg +1 min
-
240 trips · avg +0.9 min
-
238 trips · avg +1.1 min
-
235 trips · avg +0.9 min
-
264 trips · avg +0.9 min
Least punctual busy lines
-
148 trips · avg +4.1 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 63.5%
148 trips · avg +3.2 min
-
50 trips · avg +1 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.8 min
Least punctual operators
-
TPL 63.3%
1,613 trips · avg +3.4 min
-
Mouettes genevoises 66.4%
396 trips · avg +3 min
-
VBL 67.3%
3,908 trips · avg +2.4 min
-
Automobil Rottal 67.6%
451 trips · avg +2.6 min
-
Transports Publics Neuchâtelois 68.1%
2,844 trips · avg +2.8 min
-
TPG 72.5%
9,823 trips · avg +2.5 min
-
BVB 73.1%
4,833 trips · avg +2.3 min
-
Autobetrieb Sernftal 74.1%
135 trips · avg +1.8 min
Show 17 more
-
Busbetrieb Aarau 75.3%
934 trips · avg +2.1 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 76%
895 trips · avg +2.2 min
-
Auto AG Rothenburg 77.4%
745 trips · avg +1.9 min
-
Bus Nyon-Prangins 78.4%
384 trips · avg +1.9 min
-
Bus und Service 78.9%
1,530 trips · avg +1.9 min
-
Busbetrieb Solothurn und Umgebung 79.4%
749 trips · avg +1.8 min
-
Automobiles MBC 80.4%
1,210 trips · avg +1.8 min
-
VBZ 80.5%
16,703 trips · avg +1.8 min
-
Verkehrsbetriebe Biel 81.1%
1,339 trips · avg +1.8 min
-
Service d'automobiles TRN 81.2%
207 trips · avg +1.9 min
-
Autolinea Mendrisiense 81.3%
374 trips · avg +1.5 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 82.7%
1,188 trips · avg +1.5 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 83.2%
1,386 trips · avg +1.5 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 83.5%
303 trips · avg +1.5 min
-
Sierre-Montana-Crans 83.5%
231 trips · avg +2 min
-
tl 83.8%
7,012 trips · avg +1.4 min
-
Regiobus Gossau SG 84.2%
684 trips · avg +1.6 min
Most punctual operators
-
Sihltal-Zürich-Uetliberg-Bahn 100%
267 trips · avg +0.3 min
-
Regionalverkehr Bern-Solothurn 99.5%
607 trips · avg +0.3 min
-
Aare Seeland mobil 99.1%
333 trips · avg +0.3 min
-
Zentralbahn 98.6%
368 trips · avg +0.3 min
-
THURBO 97.6%
1,104 trips · avg +0.4 min
-
Schweizerische Südostbahn 96.9%
521 trips · avg +0.5 min
-
Verkehrsbetrieb der Landschaft Davos 96.4%
366 trips · avg +0.5 min
-
BLS 95%
1,566 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 87.6%
1,574 departures · avg +1.6 min
-
Bern 96.3%
1,072 departures · avg +1.1 min
-
Zürich Oerlikon 90.7%
913 departures · avg +1.4 min
-
Zürich Stadelhofen 81.6%
697 departures · avg +1.9 min
-
Winterthur 91.7%
684 departures · avg +1.5 min
-
Zürich Hardbrücke 71.8%
671 departures · avg +2.7 min
-
Olten 89.2%
600 departures · avg +1.5 min
-
St. Gallen 92.1%
531 departures · avg +1.6 min
-
Aarau 92.3%
522 departures · avg +1.3 min
-
Lausanne 82%
484 departures · avg +2.7 min
-
Worblaufen 98.8%
481 departures · avg +0.9 min
-
Renens VD 84%
476 departures · avg +2.2 min
-
Genève, gare Cornavin 70.8%
3,227 departures · avg +2.6 min
-
Genève, Bel-Air 72.1%
3,102 departures · avg +2.7 min
-
Bern, Bahnhof 93.1%
2,966 departures · avg +1.2 min
-
Basel, Schifflände 80.1%
2,266 departures · avg +2 min
-
Bern, Hirschengraben 88.3%
2,249 departures · avg +1.6 min
-
Luzern, Kantonalbank 75.3%
2,248 departures · avg +2.1 min
-
Zürich, Central 90.2%
2,245 departures · avg +1.3 min
-
Bern, Zytglogge 90.8%
2,177 departures · avg +1.5 min
-
Lausanne, Bel-Air 72.5%
2,128 departures · avg +2.1 min
-
Basel, Bahnhof SBB 84.7%
2,124 departures · avg +1.8 min
-
St. Gallen, Bahnhof 89.1%
2,119 departures · avg +1.4 min
-
Zürich, Bellevue 90.7%
2,088 departures · avg +1.5 min
-
Colombier NE Littorail 49.1%
116 departures · avg +5.5 min
-
116 departures · avg +5.1 min
-
Neuchâtel Serrières Ruau 55.3%
114 departures · avg +5.3 min
-
116 departures · avg +5.1 min
-
Neuchâtel Evole 57%
114 departures · avg +4.7 min
-
114 departures · avg +5.4 min
-
Neuchâtel Champ-Bougin 59.6%
114 departures · avg +5.1 min
-
St. Gallen Marktplatz 66.4%
110 departures · avg +3.1 min
-
Boudry Tuilière 66.4%
116 departures · avg +4.3 min
-
Lustmühle 66.7%
108 departures · avg +3 min
-
Auvernier Littorail 67.2%
116 departures · avg +4.4 min
-
Areuse Littorail 67.2%
116 departures · avg +4.2 min
Largest delays
- Bus 310 Davos Monstein, Dorf – Davos Glaris, Bahnhof Davos Monstein, Dorfand 2 more trips of this line +112 min
- NJ Zürich HB +99 min
- Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, Albisgütli Zürich, Bahnhofstrasse/HBand 1 more trips of this line +89 min
- Tram 5 Zürich Stadelhofen, Bahnhofand 2 more trips of this line +89 min
- IR95 Brig – Genève-Aéroport Brig +80 min
- S4 Langnau i.E. – Thun Thun +75 min
- Tram 14 Bernex, Vaillyand 4 more trips of this line +73 min
- E Genève, Rive – Hermance, village Genève, Rive +72 min
- Tram 18 Meyrin, CERNand 2 more trips of this line +69 min
- Bus 321 Bellikon, Dorf – Baden, Postautostation Oberrohrdorf, Zentrum +65 min
- Bus 42 Grand-Lancy, Stade de Genève – Avusy, village Grand-Lancy, Stade de Genève +63 min
- EC Bregenz – Zürich HB Zürich HBand 1 more trips of this line +61 min
- Bus 931 Ramosch, Fermada – Vnà, Jalmèr Vnà, Jalmèr +61 min
- Bus 68 Saint-Genis, Jean Monnet – Vernier, Blandonnet Saint-Genis, Jean Monnetand 1 more trips of this line +57 min
- IR15 Luzern – Genève-Aéroport Luzern +56 min