Punctuality of Swiss public transportTuesday 21 April 2026
87% of 149,919 trips were on time. The share was lowest at 17:30: 65.2%. Of the busy lines, Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'Rue had the lowest share on time: 21.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.
87%
−2.1 ptsDay before: 89.1% · 149,919 trips with live data
Average delay
+1.3 min
Canceled trips
432
0.3% of the trips
The day in numbers
From the timetable of the day, and its trips with live data.
Against a week before
−0.7 pts
Most punctual line
100%
Least punctual line
21.5%
Largest train delay
+57 min
Through the day
The share of the trips on their way that are less than 3 minutes late, every 10 minutes.
- ≥ 95%
- Dashed: Monday 20 April
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 95.3%
14,261 trips · avg +0.7 min
-
Tram 85.1%
11,505 trips · avg +1.5 min
-
Bus 86.3%
123,421 trips · avg +1.4 min
-
Metro 88.1%
336 trips · avg +1.4 min
-
Boat 56.8%
396 trips · avg +3.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
-
Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'RueMarin-Epagnier, gare – Cormondrèche, Grand'Rue 21.5%
237 trips · avg +6.5 min
-
149 trips · avg +4.5 min
-
Bus 68 Saint-Genis, Jean Monnet – Vernier, BlandonnetSaint-Genis, Jean Monnet – Vernier, Blandonnet 38.4%
151 trips · avg +7.4 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 39.1%
69 trips · avg +4.5 min
-
68 trips · avg +3.7 min
-
48 trips · avg +5.1 min
-
148 trips · avg +4.6 min
-
Bus 898 Büren an der Aare, Bahnhof – Münchenbuchsee, BahnhofBüren an der Aare, Bahnhof – Münchenbuchsee, Bahnhof 43.1%
51 trips · avg +4 min
Show 17 more
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 43.2%
148 trips · avg +4.1 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 43.9%
214 trips · avg +4.2 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 44.7%
215 trips · avg +3.7 min
-
Bus 16 Muzzano, Paese – Lugano, Stazione/Via BasileaMuzzano, Paese – Lugano, Stazione/Via Basilea 46.7%
45 trips · avg +4.3 min
-
57 trips · avg +3.9 min
-
59 trips · avg +3.7 min
-
99 trips · avg +3.7 min
-
48 trips · avg +4.4 min
-
174 trips · avg +4.4 min
-
75 trips · avg +3.3 min
-
107 trips · avg +3.7 min
-
93 trips · avg +3.1 min
-
58 trips · avg +2.4 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 51.9%
154 trips · avg +4.2 min
-
102 trips · avg +3.3 min
-
Bus 311 La Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gareLa Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gare 53.8%
91 trips · avg +4.6 min
-
120 trips · avg +4.6 min
Most punctual busy lines
-
292 trips · avg +0.7 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 97.5%
284 trips · avg +0.5 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 97.2%
286 trips · avg +0.6 min
-
303 trips · avg +0.9 min
-
306 trips · avg +0.7 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 95.9%
290 trips · avg +0.9 min
-
289 trips · avg +0.6 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 95.1%
308 trips · avg +1 min
Least punctual busy lines
-
68 trips · avg +4.7 min
-
107 trips · avg +2.6 min
-
108 trips · avg +1.8 min
-
75 trips · avg +2.1 min
-
57 trips · avg +1.4 min
-
41 trips · avg +1.5 min
-
81 trips · avg +2 min
-
83 trips · avg +1.5 min
Show 17 more
-
40 trips · avg +1.6 min
-
R15 Neuchâtel Place Pury Littorail – Boudry LittorailNeuchâtel Place Pury Littorail – Boudry Littorail 88.1%
118 trips · avg +1.4 min
-
74 trips · avg +1.3 min
-
40 trips · avg +1.3 min
-
96 trips · avg +1.4 min
-
62 trips · avg +0.9 min
-
75 trips · avg +0.8 min
-
50 trips · avg +0.8 min
-
91 trips · avg +0.8 min
-
79 trips · avg +0.9 min
-
80 trips · avg +0.8 min
-
40 trips · avg +1.2 min
-
72 trips · avg +1 min
-
160 trips · avg +0.8 min
-
64 trips · avg +0.6 min
-
68 trips · avg +0.7 min
-
69 trips · avg +0.6 min
Most punctual busy lines
-
208 trips · avg +0.1 min
-
151 trips · avg +0.1 min
-
147 trips · avg +0.3 min
-
143 trips · avg +0.1 min
-
132 trips · avg +0.3 min
-
126 trips · avg +0.2 min
-
119 trips · avg +0.2 min
-
94 trips · avg +0.2 min
Least punctual busy lines
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 59.3%
305 trips · avg +2.8 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 63.4%
284 trips · avg +2.6 min
-
Tram 8 Bern Brünnen Westside, Bahnhof – Bern, SaaliBern Brünnen Westside, Bahnhof – Bern, Saali 67.8%
311 trips · avg +2.3 min
-
287 trips · avg +2.3 min
-
292 trips · avg +1.6 min
-
412 trips · avg +2.2 min
-
275 trips · avg +2.2 min
-
294 trips · avg +2.1 min
Show 17 more
-
310 trips · avg +1.8 min
-
306 trips · avg +2 min
-
440 trips · avg +1.4 min
-
276 trips · avg +1.5 min
-
224 trips · avg +1.3 min
-
303 trips · avg +1.5 min
-
300 trips · avg +1.3 min
-
305 trips · avg +1.3 min
-
384 trips · avg +1.5 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 87.4%
293 trips · avg +1.6 min
-
298 trips · avg +1.6 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 90.8%
282 trips · avg +1.3 min
-
104 trips · avg +1 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 92.6%
349 trips · avg +1.3 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 93.2%
396 trips · avg +1.1 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 93.5%
292 trips · avg +1 min
-
Tram 5 Zürich Stadelhofen, Bahnhof – Zürich, LaubeggZürich Stadelhofen, Bahnhof – Zürich, Laubegg 93.7%
238 trips · avg +1 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 99.4%
155 trips · avg +0.8 min
-
122 trips · avg +0.2 min
-
292 trips · avg +0.7 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 98.1%
154 trips · avg +0.9 min
-
303 trips · avg +0.9 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 95.9%
290 trips · avg +0.9 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 95.1%
308 trips · avg +1 min
-
179 trips · avg +0.8 min
Least punctual busy lines
-
Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'RueMarin-Epagnier, gare – Cormondrèche, Grand'Rue 21.5%
237 trips · avg +6.5 min
-
149 trips · avg +4.5 min
-
Bus 68 Saint-Genis, Jean Monnet – Vernier, BlandonnetSaint-Genis, Jean Monnet – Vernier, Blandonnet 38.4%
151 trips · avg +7.4 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 39.1%
69 trips · avg +4.5 min
-
68 trips · avg +3.7 min
-
48 trips · avg +5.1 min
-
Bus 898 Büren an der Aare, Bahnhof – Münchenbuchsee, BahnhofBüren an der Aare, Bahnhof – Münchenbuchsee, Bahnhof 43.1%
51 trips · avg +4 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 43.9%
214 trips · avg +4.2 min
Show 17 more
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 44.7%
215 trips · avg +3.7 min
-
Bus 16 Muzzano, Paese – Lugano, Stazione/Via BasileaMuzzano, Paese – Lugano, Stazione/Via Basilea 46.7%
45 trips · avg +4.3 min
-
57 trips · avg +3.9 min
-
59 trips · avg +3.7 min
-
99 trips · avg +3.7 min
-
48 trips · avg +4.4 min
-
174 trips · avg +4.4 min
-
75 trips · avg +3.3 min
-
107 trips · avg +3.7 min
-
93 trips · avg +3.1 min
-
58 trips · avg +2.4 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 51.9%
154 trips · avg +4.2 min
-
102 trips · avg +3.3 min
-
Bus 311 La Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gareLa Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gare 53.8%
91 trips · avg +4.6 min
-
120 trips · avg +4.6 min
-
175 trips · avg +3 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 54.9%
71 trips · avg +3.3 min
Most punctual busy lines
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 97.5%
284 trips · avg +0.5 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 97.2%
286 trips · avg +0.6 min
-
Bus 7 Winterthur Wülflingen, Bahnhof – Elsau, MelcherWinterthur Wülflingen, Bahnhof – Elsau, Melcher 96.3%
240 trips · avg +0.6 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 95.8%
265 trips · avg +0.9 min
-
246 trips · avg +0.8 min
-
289 trips · avg +0.6 min
-
240 trips · avg +1.1 min
-
349 trips · avg +0.9 min
Least punctual busy lines
-
148 trips · avg +4.6 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 43.2%
148 trips · avg +4.1 min
-
50 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%
50 trips · avg +0.8 min
Least punctual operators
-
Mouettes genevoises 56.8%
396 trips · avg +3.5 min
-
VBL 64.7%
3,907 trips · avg +3.2 min
-
Automobil Rottal 70.1%
458 trips · avg +2.5 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 71.1%
893 trips · avg +2.3 min
-
Transports Publics Neuchâtelois 72%
2,859 trips · avg +2.5 min
-
TPL 72.4%
1,613 trips · avg +2.3 min
-
TPG 74.2%
9,684 trips · avg +2.2 min
-
BVB 74.2%
4,831 trips · avg +2.1 min
Show 17 more
-
Auto AG Rothenburg 74.8%
701 trips · avg +2.2 min
-
Busbetrieb Aarau 74.8%
934 trips · avg +2.3 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 76.9%
108 trips · avg +1.8 min
-
Busbetrieb Solothurn und Umgebung 79.4%
749 trips · avg +1.7 min
-
Bus Nyon-Prangins 80.1%
386 trips · avg +1.9 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 80.1%
302 trips · avg +1.8 min
-
Autobetrieb Sernftal 81.5%
108 trips · avg +2.2 min
-
tl 81.6%
6,883 trips · avg +1.8 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 81.6%
1,384 trips · avg +1.7 min
-
TPF 83.9%
4,111 trips · avg +1.4 min
-
Verkehrsbetriebe Biel 84%
1,404 trips · avg +1.6 min
-
Regiobus Gossau SG 84.2%
672 trips · avg +1.7 min
-
Automobiles MBC 84.5%
1,202 trips · avg +1.5 min
-
Bus und Service 84.9%
1,499 trips · avg +1.6 min
-
Bernmobil 84.9%
5,029 trips · avg +1.6 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 85.3%
1,188 trips · avg +1.2 min
-
Stadtbus Frauenfeld 85.5%
574 trips · avg +1.6 min
Most punctual operators
-
Appenzeller Bahnen 100%
344 trips · avg +0.3 min
-
Zentralbahn 99.7%
361 trips · avg +0.1 min
-
Regionalverkehr Bern-Solothurn 99.3%
605 trips · avg +0.2 min
-
THURBO 99.1%
1,068 trips · avg +0.3 min
-
Sihltal-Zürich-Uetliberg-Bahn 99.4%
313 trips · avg +0.4 min
-
Lausanne-Echallens-Bercher 100%
143 trips · avg +0.1 min
-
Schweizerische Südostbahn 98.6%
508 trips · avg +0.3 min
-
Lugano-Ponte Tresa 100%
132 trips · avg +0.3 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 97.6%
1,733 departures · avg +0.9 min
-
Bern 98.3%
1,062 departures · avg +0.8 min
-
Zürich Oerlikon 97.4%
920 departures · avg +0.9 min
-
Zürich Stadelhofen 94.8%
699 departures · avg +1.2 min
-
Winterthur 97.3%
679 departures · avg +0.8 min
-
Zürich Hardbrücke 88.8%
678 departures · avg +2 min
-
Olten 94.4%
594 departures · avg +1.2 min
-
St. Gallen 95.6%
528 departures · avg +0.9 min
-
Aarau 94.9%
512 departures · avg +0.8 min
-
Lausanne 92.2%
489 departures · avg +1.3 min
-
Renens VD 91.2%
487 departures · avg +1.4 min
-
Worblaufen 98.1%
481 departures · avg +0.8 min
-
Genève, gare Cornavin 75.6%
3,154 departures · avg +2 min
-
Genève, Bel-Air 78.7%
3,050 departures · avg +1.9 min
-
Bern, Bahnhof 92.8%
2,965 departures · avg +1.2 min
-
Luzern, Kantonalbank 66.8%
2,454 departures · avg +2.9 min
-
Basel, Schifflände 80.4%
2,270 departures · avg +2 min
-
Zürich, Central 94.7%
2,270 departures · avg +1 min
-
Bern, Hirschengraben 86.9%
2,252 departures · avg +1.7 min
-
Bern, Zytglogge 89.5%
2,177 departures · avg +1.5 min
-
Zürich, Bellevue 91.9%
2,156 departures · avg +1.2 min
-
Luzern, Bahnhof 77.2%
2,134 departures · avg +2.3 min
-
Basel, Bahnhof SBB 86.5%
2,126 departures · avg +1.7 min
-
St. Gallen, Bahnhof 89.7%
2,102 departures · avg +1.4 min
-
Paradiso 60%
125 departures · avg +4.7 min
-
Dietikon Stoffelbach 62.5%
152 departures · avg +2.9 min
-
Reppischhof 67.8%
152 departures · avg +2.6 min
-
St. Gallen Marktplatz 68.2%
110 departures · avg +2.4 min
-
Zufikon 68.6%
153 departures · avg +2.4 min
-
Les Plantaz 70.4%
108 departures · avg +2.4 min
-
La Vuarpillière 71.3%
108 departures · avg +2.5 min
-
Zufikon Hammergut 71.9%
153 departures · avg +2.2 min
-
L'Asse 72.2%
108 departures · avg +2.5 min
-
Como S. Giovanni 72.9%
118 departures · avg +4 min
-
Oberentfelden Engelplatz 73.2%
153 departures · avg +1.7 min
-
S. Antonino 73.6%
159 departures · avg +3 min
Largest delays
- Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/Colladon EPFL/Colladonand 1 more trips of this line +108 min
- Bus 16 Horw, Spitz – Kriens, Busschleife Horw, Spitzand 1 more trips of this line +70 min
- Bus 19 Spiegel, Blinzern – Bern, Elfenau Bern, Elfenauand 1 more trips of this line +68 min
- Bus 182 Chur, Postautostation – Lenzerheide/Lai, Post St. Moritz, Bahnhof +66 min
- Bus 8 Corminboeuf, anc. poste – Marly, piscine Marly, piscine +57 min
- ICE Basel Bad Bfand 2 more trips of this line +57 min
- Bus 24 Lausanne, Tour Haldimand-Lac – Lausanne, Bourdonnette Bourdonnette +57 min
- Bus 65 Dornach, Bahnhof – Pfeffingen, Bergmattenweg Pfeffingen, Bergmattenweg +56 min
- Bus 5 Fribourg, Torry – Villars-sur-Glâne, gare Fribourg, Torryand 1 more trips of this line +53 min
- Bus 68 Saint-Genis, Jean Monnet – Vernier, Blandonnet Saint-Genis, Jean Monnetand 1 more trips of this line +53 min
- Bus 422 Sierre/Siders,Place de la gare – Crans-Montana, Ycoor Sierre/Siders,Place de la gare +51 min
- Tram 12 Lancy-Bachet, gare – Thônex, Moillesulaz Lancy-Bachet, gareand 1 more trips of this line +50 min
- RJX Zürich HB +50 min
- S90 Giubiasco +49 min
- Bus 37 Thônex, Sous-Moulin – Jussy, Lullier Jussy, Lullier +48 min