Punctuality of Swiss public transportThursday 30 April 2026
84.2% of 146,695 trips were on time. The share was lowest at 17:30: 61.1%. Of the busy lines, Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'Rue had the lowest share on time: 17.6%.
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.
84.2%
−1.7 ptsDay before: 86% · 146,695 trips with live data
Average delay
+1.5 min
Canceled trips
580
0.4% of the trips
The day in numbers
From the timetable of the day, and its trips with live data.
Against a week before
−1.8 pts
Most punctual line
100%
Least punctual line
17.6%
Largest train delay
+255 min
- New recordThe least punctual day since 14 Dec 2025.
Through the day
The share of the trips on their way that are less than 3 minutes late, every 10 minutes.
- ≥ 95%
- Dashed: Wednesday 29 April
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 95.2%
14,034 trips · avg +0.8 min
-
Tram 82.3%
11,734 trips · avg +1.7 min
-
Bus 83.2%
120,195 trips · avg +1.6 min
-
Metro 82.7%
336 trips · avg +1.7 min
-
Boat 60.6%
396 trips · avg +3.4 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 17.6%
238 trips · avg +6.7 min
-
Bus 361 La Chaux-de-Fonds, gare – Le Locle, TechnicumLa Chaux-de-Fonds, gare – Le Locle, Technicum 27.3%
66 trips · avg +5.2 min
-
58 trips · avg +4.5 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 33%
215 trips · avg +4.4 min
-
75 trips · avg +4.7 min
-
154 trips · avg +7 min
-
42 trips · avg +4 min
-
182 trips · avg +5.1 min
Show 17 more
-
68 trips · avg +4.7 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 39.9%
213 trips · avg +4 min
-
Bus 311 La Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gareLa Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gare 41.9%
93 trips · avg +3.7 min
-
Bus 63 Langenthal, Industrie Nord – Langenthal, SpitalLangenthal, Industrie Nord – Langenthal, Spital 42.1%
114 trips · avg +3.9 min
-
57 trips · avg +6.2 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 42.6%
68 trips · avg +4 min
-
49 trips · avg +3.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 +3.3 min
-
148 trips · avg +4.7 min
-
48 trips · avg +5.2 min
-
Bus 68 Saint-Genis, Jean Monnet – Vernier, BlandonnetSaint-Genis, Jean Monnet – Vernier, Blandonnet 45.8%
155 trips · avg +3.9 min
-
Bus 5 Kriens, Busschleife – Emmenbrücke, Bahnhof SüdKriens, Busschleife – Emmenbrücke, Bahnhof Süd 47.5%
177 trips · avg +4.5 min
-
161 trips · avg +3.4 min
-
Bus 16 Muzzano, Paese – Lugano, Stazione/Via BasileaMuzzano, Paese – Lugano, Stazione/Via Basilea 48.9%
45 trips · avg +5.6 min
-
220 trips · avg +4.3 min
-
111 trips · avg +5.3 min
-
102 trips · avg +3.9 min
Most punctual busy lines
-
306 trips · avg +0.6 min
-
282 trips · avg +0.6 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.5%
286 trips · avg +0.8 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 95.4%
285 trips · avg +0.6 min
-
323 trips · avg +0.7 min
-
284 trips · avg +1 min
-
283 trips · avg +1 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 92.4%
275 trips · avg +1.1 min
Least punctual busy lines
-
68 trips · avg +7.5 min
-
40 trips · avg +2 min
-
41 trips · avg +2.9 min
-
82 trips · avg +1.7 min
-
132 trips · avg +1 min
-
40 trips · avg +1.4 min
-
84 trips · avg +0.8 min
-
53 trips · avg +1.1 min
Show 17 more
-
64 trips · avg +1.3 min
-
43 trips · avg +1.4 min
-
45 trips · avg +1.4 min
-
R15 Neuchâtel Place Pury Littorail – Boudry LittorailNeuchâtel Place Pury Littorail – Boudry Littorail 91.5%
118 trips · avg +1.4 min
-
107 trips · avg +1.1 min
-
75 trips · avg +1.5 min
-
78 trips · avg +1 min
-
80 trips · avg +1.1 min
-
40 trips · avg +0.8 min
-
40 trips · avg +0.7 min
-
40 trips · avg +0.7 min
-
108 trips · avg +1.3 min
-
81 trips · avg +1 min
-
41 trips · avg +0.6 min
-
96 trips · avg +1.1 min
-
71 trips · avg +0.8 min
-
71 trips · avg +0.9 min
Most punctual busy lines
-
153 trips · avg +0.5 min
-
126 trips · avg +0.1 min
-
126 trips · avg +0.3 min
-
115 trips · avg +0.4 min
-
91 trips · avg +0.3 min
-
83 trips · avg +0.5 min
-
81 trips · avg +0.3 min
-
79 trips · avg +0.2 min
Least punctual busy lines
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 64.3%
325 trips · avg +2.9 min
-
Tram 8 Bern Brünnen Westside, Bahnhof – Bern, SaaliBern Brünnen Westside, Bahnhof – Bern, Saali 64.5%
310 trips · avg +2.7 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 68.5%
292 trips · avg +2.6 min
-
294 trips · avg +1.8 min
-
224 trips · avg +2.3 min
-
255 trips · avg +2.1 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 73.1%
501 trips · avg +2.2 min
-
300 trips · avg +2.3 min
Show 17 more
-
449 trips · avg +1.9 min
-
324 trips · avg +2.1 min
-
301 trips · avg +2.2 min
-
285 trips · avg +2.3 min
-
303 trips · avg +1.9 min
-
293 trips · avg +1.7 min
-
288 trips · avg +1.6 min
-
373 trips · avg +1.7 min
-
426 trips · avg +1.5 min
-
306 trips · avg +1.8 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 85%
287 trips · avg +1.8 min
-
299 trips · avg +1.3 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 86.9%
282 trips · avg +1.4 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 87%
377 trips · avg +1.5 min
-
295 trips · avg +1.2 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 89.1%
275 trips · avg +1.1 min
-
101 trips · avg +1.3 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 99.4%
155 trips · avg +0.7 min
-
146 trips · avg +0.5 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 96.1%
154 trips · avg +0.9 min
-
179 trips · avg +1.1 min
-
323 trips · avg +0.7 min
-
284 trips · avg +1 min
-
283 trips · avg +1 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 92.4%
275 trips · avg +1.1 min
Least punctual busy lines
-
Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'RueMarin-Epagnier, gare – Cormondrèche, Grand'Rue 17.6%
238 trips · avg +6.7 min
-
Bus 361 La Chaux-de-Fonds, gare – Le Locle, TechnicumLa Chaux-de-Fonds, gare – Le Locle, Technicum 27.3%
66 trips · avg +5.2 min
-
58 trips · avg +4.5 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 33%
215 trips · avg +4.4 min
-
75 trips · avg +4.7 min
-
154 trips · avg +7 min
-
42 trips · avg +4 min
-
182 trips · avg +5.1 min
Show 17 more
-
68 trips · avg +4.7 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 39.9%
213 trips · avg +4 min
-
Bus 311 La Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gareLa Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gare 41.9%
93 trips · avg +3.7 min
-
Bus 63 Langenthal, Industrie Nord – Langenthal, SpitalLangenthal, Industrie Nord – Langenthal, Spital 42.1%
114 trips · avg +3.9 min
-
57 trips · avg +6.2 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 42.6%
68 trips · avg +4 min
-
49 trips · avg +3.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 +3.3 min
-
48 trips · avg +5.2 min
-
Bus 68 Saint-Genis, Jean Monnet – Vernier, BlandonnetSaint-Genis, Jean Monnet – Vernier, Blandonnet 45.8%
155 trips · avg +3.9 min
-
Bus 5 Kriens, Busschleife – Emmenbrücke, Bahnhof SüdKriens, Busschleife – Emmenbrücke, Bahnhof Süd 47.5%
177 trips · avg +4.5 min
-
161 trips · avg +3.4 min
-
Bus 16 Muzzano, Paese – Lugano, Stazione/Via BasileaMuzzano, Paese – Lugano, Stazione/Via Basilea 48.9%
45 trips · avg +5.6 min
-
220 trips · avg +4.3 min
-
111 trips · avg +5.3 min
-
102 trips · avg +3.9 min
-
301 trips · avg +4.1 min
Most punctual busy lines
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 99.2%
243 trips · avg +0.7 min
-
240 trips · avg +0.8 min
-
282 trips · avg +0.6 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.5%
286 trips · avg +0.8 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 95.4%
285 trips · avg +0.6 min
-
222 trips · avg +0.7 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 93.6%
264 trips · avg +1.3 min
-
246 trips · avg +0.9 min
Least punctual busy lines
-
148 trips · avg +4.7 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 53.4%
148 trips · avg +3.9 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
-
Mouettes genevoises 60.6%
396 trips · avg +3.4 min
-
VBL 60.9%
3,919 trips · avg +3.2 min
-
TPL 61.5%
1,612 trips · avg +4.3 min
-
Automobil Rottal 64.1%
457 trips · avg +2.7 min
-
Busbetrieb Aarau 66%
934 trips · avg +2.9 min
-
Transports Publics Neuchâtelois 66.4%
2,850 trips · avg +2.7 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 67.7%
874 trips · avg +2.5 min
-
TPG 70.5%
9,898 trips · avg +2.4 min
Show 17 more
-
Bus Nyon-Prangins 71.3%
359 trips · avg +2.1 min
-
BVB 71.8%
4,981 trips · avg +2.4 min
-
Autolinea Mendrisiense 74.3%
374 trips · avg +3.3 min
-
Stadtbus Frauenfeld 75.4%
560 trips · avg +2.1 min
-
Service d'automobiles TRN 76.3%
207 trips · avg +2.3 min
-
Auto AG Rothenburg 77.2%
742 trips · avg +1.9 min
-
Busbetrieb Solothurn und Umgebung 77.6%
749 trips · avg +1.8 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 78.3%
1,386 trips · avg +1.8 min
-
Regiobus Gossau SG 78.3%
700 trips · avg +2 min
-
Bernmobil 79.6%
5,176 trips · avg +2 min
-
Bus und Service 79.8%
1,493 trips · avg +1.8 min
-
Verkehrsbetriebe Biel 80%
1,403 trips · avg +1.7 min
-
Automobildienste Aare Seeland mobil 80.2%
658 trips · avg +1.7 min
-
Autolinee Regionali Luganesi 80.4%
230 trips · avg +1.8 min
-
Autobetrieb Sernftal 80.5%
113 trips · avg +1.5 min
-
Verkehrsbetriebe Kreuzlingen 81.2%
483 trips · avg +2 min
-
Busbetrieb Lichtensteig-Wattwil-Ebnat-Kappel 81.4%
113 trips · avg +2.9 min
Most punctual operators
-
Regionalverkehr Bern-Solothurn 99.7%
603 trips · avg +0.2 min
-
Sihltal-Zürich-Uetliberg-Bahn 100%
268 trips · avg +0.3 min
-
Verkehrsbetrieb der Landschaft Davos 99.2%
366 trips · avg +0.2 min
-
BLS 96.8%
1,570 trips · avg +0.6 min
-
THURBO 96.3%
1,068 trips · avg +0.5 min
-
Aare Seeland mobil 97.3%
336 trips · avg +0.5 min
-
Auto AG Schwyz 96.5%
721 trips · avg +0.5 min
-
Stadtbus Winterthur 95.9%
1,988 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 94.8%
1,582 departures · avg +1.1 min
-
Bern 96.2%
1,069 departures · avg +1.1 min
-
Zürich Oerlikon 96.4%
919 departures · avg +1.1 min
-
Zürich Stadelhofen 93.9%
700 departures · avg +1.3 min
-
Winterthur 97.1%
683 departures · avg +1 min
-
Zürich Hardbrücke 87.4%
677 departures · avg +2 min
-
Olten 91.7%
603 departures · avg +1.5 min
-
Aarau 96.6%
523 departures · avg +0.9 min
-
St. Gallen 90%
521 departures · avg +1.5 min
-
Lausanne 88.3%
495 departures · avg +1.7 min
-
Renens VD 90%
488 departures · avg +1.5 min
-
Worblaufen 99.2%
477 departures · avg +0.9 min
-
Genève, gare Cornavin 69.9%
3,244 departures · avg +2.4 min
-
Genève, Bel-Air 76.6%
3,132 departures · avg +2.1 min
-
Bern, Bahnhof 89.7%
3,047 departures · avg +1.5 min
-
Luzern, Kantonalbank 65.9%
2,462 departures · avg +2.7 min
-
Basel, Schifflände 76.7%
2,352 departures · avg +2.1 min
-
Bern, Zytglogge 85.6%
2,333 departures · avg +1.8 min
-
Zürich, Central 91.7%
2,320 departures · avg +1.2 min
-
Bern, Hirschengraben 82.6%
2,253 departures · avg +2 min
-
Basel, Bahnhof SBB 83.6%
2,185 departures · avg +1.8 min
-
Zürich, Bellevue 92%
2,112 departures · avg +1.3 min
-
Luzern, Bahnhof 78.4%
2,106 departures · avg +2.1 min
-
St. Gallen, Bahnhof 88.3%
2,094 departures · avg +1.4 min
-
Mendrisio S. Martino 64.1%
117 departures · avg +4.8 min
-
St. Gallen Marktplatz 64.3%
112 departures · avg +2.7 min
-
St. Gallen Güterbahnhof 64.5%
110 departures · avg +2.3 min
-
Lustmühle 67.3%
110 departures · avg +2.9 min
-
St. Gallen Riethüsli 68.2%
110 departures · avg +2.3 min
-
Magliaso Paese 70.5%
132 departures · avg +2.4 min
-
St. Gallen Birnbäumen 70.5%
112 departures · avg +2.4 min
-
Paradiso 72%
125 departures · avg +2.7 min
-
St. Gallen Spisertor 72.3%
112 departures · avg +2.2 min
-
St. Gallen Notkersegg 73.2%
112 departures · avg +2.5 min
-
Agno 73.5%
132 departures · avg +2.2 min
-
Como S. Giovanni 73.7%
118 departures · avg +2.5 min
Largest delays
- NJ Zürich HB +255 min
- Tram 18 Esslingen – Zürich Stadelhofen, Bahnhof Zürich Stadelhofen, Bahnhof +91 min
- EC Bregenz – Zürich HB Basel SBBand 1 more trips of this line +70 min
- Bus 60 Gex, L'Aiglette +67 min
- EXT Zürich HB +62 min
- Bus 48 Pully, Daillettes – Pully, gare Pully, gare +60 min
- Bus 748 Dietlikon, Hofwiesen – Dübendorf, Bahnhof Dietlikon, Hofwiesenand 1 more trips of this line +59 min
- Bus 732 Wil SG, Bahnhof – Gähwil, Sportstrasse Wil SG, Bahnhof +59 min
- ICE Interlaken Ostand 1 more trips of this line +58 min
- Bus 4 Prilly, Coudraie – Lausanne, Faverges Faverges +58 min
- RJX Zürich HBand 1 more trips of this line +54 min
- Bus 21 Bern, Bahnhof – Bremgarten BE, Stuckishaus Bremgarten BE, Stuckishausand 2 more trips of this line +52 min
- Bus 6 Lausanne, Praz-Séchaud – Lausanne, Maladière Praz-Séchaud +51 min
- Bus 5 Viganello, S. Siro – Manno, Uovo di Manno Manno, Uovo di Mannoand 1 more trips of this line +51 min
- Bus 428 Chavornay, gare – Thierrens, gare routière Chavornay, gareand 1 more trips of this line +51 min