Punctuality of Swiss public transportWednesday 17 December 2025
84.4% of 148,694 trips were on time. The share was lowest at 17:30: 61.7%. Of the busy lines, Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'Rue had the lowest share on time: 19.3%.
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.4%
−0.8 ptsDay before: 85.2% · 148,694 trips with live data
Average delay
+1.5 min
Canceled trips
535
0.4% of the trips
The day in numbers
From the timetable of the day, and its trips with live data.
Most punctual line
100%
Least punctual line
19.3%
Largest train delay
+102 min
Through the day
The share of the trips on their way that are less than 3 minutes late, every 10 minutes.
- ≥ 95%
- Dashed: Tuesday 16 December
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 93.8%
14,127 trips · avg +0.9 min
-
Tram 77.9%
11,673 trips · avg +2 min
-
Bus 84%
122,158 trips · avg +1.5 min
-
Metro 91.8%
340 trips · avg +0.9 min
-
Boat 63.6%
396 trips · avg +2.9 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 19.3%
238 trips · avg +6 min
-
175 trips · avg +6.2 min
-
49 trips · avg +4.4 min
-
57 trips · avg +4.9 min
-
62 trips · avg +3.8 min
-
149 trips · avg +3.5 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 38.6%
70 trips · avg +4 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 40.7%
209 trips · avg +3.7 min
Show 17 more
-
Bus 898 Büren an der Aare, Bahnhof – Münchenbuchsee, BahnhofBüren an der Aare, Bahnhof – Münchenbuchsee, Bahnhof 42%
50 trips · avg +4.4 min
-
174 trips · avg +3.5 min
-
148 trips · avg +4.4 min
-
59 trips · avg +3.9 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 45.9%
218 trips · avg +6.4 min
-
102 trips · avg +5.1 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 46.7%
210 trips · avg +3.5 min
-
Bus 445 Lamone-Cadempino, Stazione – Lugano, Autosilo BalestraLamone-Cadempino, Stazione – Lugano, Autosilo Balestra 47.5%
61 trips · avg +5 min
-
202 trips · avg +7.4 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 50%
78 trips · avg +3.3 min
-
123 trips · avg +3.6 min
-
94 trips · avg +3.9 min
-
180 trips · avg +5.4 min
-
70 trips · avg +3.2 min
-
Bus 5 Kriens, Busschleife – Emmenbrücke, Bahnhof SüdKriens, Busschleife – Emmenbrücke, Bahnhof Süd 54.6%
174 trips · avg +5.9 min
-
Bus 11 Genève, Jardin Botanique – Genève-Eaux-Vives, gareGenève, Jardin Botanique – Genève-Eaux-Vives, gare 54.8%
199 trips · avg +4.2 min
-
204 trips · avg +3.5 min
Most punctual busy lines
-
303 trips · avg +0.8 min
-
294 trips · avg +0.9 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 94.2%
274 trips · avg +0.7 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 93.4%
286 trips · avg +0.9 min
-
312 trips · avg +1 min
-
340 trips · avg +0.9 min
-
296 trips · avg +0.9 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 89.3%
271 trips · avg +1.1 min
Least punctual busy lines
-
123 trips · avg +3.6 min
-
62 trips · avg +4.3 min
-
40 trips · avg +2.5 min
-
41 trips · avg +1.4 min
-
62 trips · avg +1.6 min
-
40 trips · avg +1 min
-
40 trips · avg +1.4 min
-
41 trips · avg +1.4 min
Show 17 more
-
90 trips · avg +1.7 min
-
42 trips · avg +1.2 min
-
78 trips · avg +2.1 min
-
108 trips · avg +1.5 min
-
56 trips · avg +1.2 min
-
40 trips · avg +1.2 min
-
40 trips · avg +1.1 min
-
58 trips · avg +1.2 min
-
77 trips · avg +1.2 min
-
84 trips · avg +1 min
-
40 trips · avg +1.6 min
-
71 trips · avg +1.1 min
-
95 trips · avg +0.9 min
-
74 trips · avg +1.3 min
-
76 trips · avg +1.1 min
-
84 trips · avg +1 min
-
48 trips · avg +0.7 min
Most punctual busy lines
-
126 trips · avg +0.3 min
-
125 trips · avg +0.2 min
-
87 trips · avg +0.2 min
-
80 trips · avg +0.6 min
-
80 trips · avg +0.3 min
-
79 trips · avg +0.3 min
-
79 trips · avg +0.2 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 58.2%
306 trips · avg +3.4 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 58.9%
282 trips · avg +3.1 min
-
293 trips · avg +2.9 min
-
Tram 3 St-Louis, Gare de Saint-Louis – Birsfelden, HardSt-Louis, Gare de Saint-Louis – Birsfelden, Hard 65%
286 trips · avg +2.9 min
-
Tram 8 Bern Brünnen Westside, Bahnhof – Bern, SaaliBern Brünnen Westside, Bahnhof – Bern, Saali 66.6%
311 trips · avg +2.5 min
-
306 trips · avg +2.5 min
-
291 trips · avg +1.9 min
-
285 trips · avg +2.4 min
Show 17 more
-
274 trips · avg +2.3 min
-
275 trips · avg +2.4 min
-
435 trips · avg +2 min
-
303 trips · avg +2 min
-
296 trips · avg +2.2 min
-
224 trips · avg +1.9 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 76.1%
280 trips · avg +2 min
-
410 trips · avg +3.6 min
-
305 trips · avg +2.1 min
-
295 trips · avg +1.9 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 76.9%
290 trips · avg +2.2 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 77.9%
294 trips · avg +1.9 min
-
379 trips · avg +1.9 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 79%
286 trips · avg +2.3 min
-
179 trips · avg +1.7 min
-
304 trips · avg +1.7 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 81.6%
304 trips · avg +1.7 min
Most punctual busy lines
-
140 trips · avg +0.3 min
-
216 trips · avg +0.7 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 94.8%
155 trips · avg +1.1 min
-
294 trips · avg +0.9 min
-
312 trips · avg +1 min
-
296 trips · avg +0.9 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 90.2%
153 trips · avg +1.2 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 86.5%
392 trips · avg +1.5 min
Least punctual busy lines
-
Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'RueMarin-Epagnier, gare – Cormondrèche, Grand'Rue 19.3%
238 trips · avg +6 min
-
175 trips · avg +6.2 min
-
49 trips · avg +4.4 min
-
57 trips · avg +4.9 min
-
62 trips · avg +3.8 min
-
149 trips · avg +3.5 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 38.6%
70 trips · avg +4 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 40.7%
209 trips · avg +3.7 min
Show 17 more
-
Bus 898 Büren an der Aare, Bahnhof – Münchenbuchsee, BahnhofBüren an der Aare, Bahnhof – Münchenbuchsee, Bahnhof 42%
50 trips · avg +4.4 min
-
174 trips · avg +3.5 min
-
59 trips · avg +3.9 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 45.9%
218 trips · avg +6.4 min
-
102 trips · avg +5.1 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 46.7%
210 trips · avg +3.5 min
-
Bus 445 Lamone-Cadempino, Stazione – Lugano, Autosilo BalestraLamone-Cadempino, Stazione – Lugano, Autosilo Balestra 47.5%
61 trips · avg +5 min
-
202 trips · avg +7.4 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 50%
78 trips · avg +3.3 min
-
94 trips · avg +3.9 min
-
180 trips · avg +5.4 min
-
70 trips · avg +3.2 min
-
Bus 5 Kriens, Busschleife – Emmenbrücke, Bahnhof SüdKriens, Busschleife – Emmenbrücke, Bahnhof Süd 54.6%
174 trips · avg +5.9 min
-
Bus 11 Genève, Jardin Botanique – Genève-Eaux-Vives, gareGenève, Jardin Botanique – Genève-Eaux-Vives, gare 54.8%
199 trips · avg +4.2 min
-
204 trips · avg +3.5 min
-
292 trips · avg +3.3 min
-
145 trips · avg +2.8 min
Most punctual busy lines
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 95.4%
240 trips · avg +1.1 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 94.2%
274 trips · avg +0.7 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 94%
265 trips · avg +1.1 min
-
244 trips · avg +0.9 min
-
228 trips · avg +0.9 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 93.4%
286 trips · avg +0.9 min
-
225 trips · avg +1.2 min
-
240 trips · avg +1.3 min
Least punctual busy lines
-
148 trips · avg +4.4 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 57.4%
148 trips · avg +3.2 min
-
50 trips · avg +0.2 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.5 min
Least punctual operators
-
Lugano-Ponte Tresa 52%
123 trips · avg +3.6 min
-
TPL 60.8%
1,613 trips · avg +4.1 min
-
Mouettes genevoises 63.6%
396 trips · avg +2.9 min
-
VBL 64.7%
3,918 trips · avg +3.2 min
-
Automobil Rottal 65.8%
453 trips · avg +2.9 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 68%
303 trips · avg +2.2 min
-
BVB 69%
4,490 trips · avg +2.5 min
-
Transports Publics Neuchâtelois 70.9%
2,839 trips · avg +2.3 min
Show 17 more
-
Verkehrsbetrieb LIECHTENSTEINmobil 72.9%
864 trips · avg +2.3 min
-
TPG 73.6%
9,636 trips · avg +2.4 min
-
Busbetrieb Aarau 73.6%
935 trips · avg +2.2 min
-
Autolinee Regionali Luganesi 73.8%
225 trips · avg +2.5 min
-
Auto AG Rothenburg 74.8%
763 trips · avg +2.2 min
-
Bus und Service 76.6%
1,533 trips · avg +2 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 77%
1,159 trips · avg +1.9 min
-
Autobetrieb Sernftal 77.1%
105 trips · avg +2.3 min
-
Busbetrieb Solothurn und Umgebung 77.6%
745 trips · avg +2 min
-
Zentralbahn AG Ersatzverkehr 78%
118 trips · avg +1.8 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 78.2%
1,167 trips · avg +1.6 min
-
Bus Nyon-Prangins 78.6%
388 trips · avg +1.9 min
-
Forchbahn 79.3%
179 trips · avg +1.7 min
-
Stadtbus Frauenfeld 79.4%
574 trips · avg +1.9 min
-
VBZ 79.6%
16,701 trips · avg +1.8 min
-
TPF 79.7%
4,110 trips · avg +1.6 min
-
Regiobus Gossau SG 80.7%
533 trips · avg +1.6 min
Most punctual operators
-
Regionalverkehr Bern-Solothurn 99.5%
605 trips · avg +0.3 min
-
Zentralbahn 99.4%
324 trips · avg +0.2 min
-
THURBO 97.5%
1,114 trips · avg +0.5 min
-
Sihltal-Zürich-Uetliberg-Bahn 98.4%
311 trips · avg +0.7 min
-
Auto AG Uri 98%
356 trips · avg +0.7 min
-
BLS 96.3%
1,552 trips · avg +0.6 min
-
Auto AG Schwyz 96.6%
744 trips · avg +0.5 min
-
Schweizerische Südostbahn 96.5%
515 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 93.3%
1,719 departures · avg +1.3 min
-
Bern 95.6%
1,069 departures · avg +1 min
-
Zürich Oerlikon 93.5%
911 departures · avg +1.3 min
-
Zürich Stadelhofen 86.7%
697 departures · avg +1.8 min
-
Winterthur 97.8%
692 departures · avg +0.9 min
-
Zürich Hardbrücke 77.9%
674 departures · avg +2.4 min
-
Olten 93.4%
603 departures · avg +1.2 min
-
St. Gallen 94.7%
532 departures · avg +1.1 min
-
Lausanne 84.7%
531 departures · avg +1.8 min
-
Aarau 94.5%
523 departures · avg +0.9 min
-
Renens VD 88.1%
489 departures · avg +1.5 min
-
Worblaufen 98.8%
480 departures · avg +1 min
-
Genève, gare Cornavin 75.5%
3,150 departures · avg +2.1 min
-
Genève, Bel-Air 77.5%
3,040 departures · avg +2.3 min
-
Bern, Bahnhof 92.2%
2,963 departures · avg +1.3 min
-
Luzern, Kantonalbank 69.4%
2,459 departures · avg +3 min
-
Zürich, Central 83.7%
2,261 departures · avg +1.9 min
-
Basel, Schifflände 76.8%
2,252 departures · avg +2.2 min
-
Bern, Hirschengraben 88.7%
2,242 departures · avg +1.6 min
-
Bern, Zytglogge 88.1%
2,174 departures · avg +1.6 min
-
Luzern, Bahnhof 80.7%
2,134 departures · avg +2.2 min
-
Zürich, Bellevue 82.1%
2,133 departures · avg +2 min
-
Lausanne, Bel-Air 65.5%
2,093 departures · avg +2.9 min
-
Basel, Bankverein 75.6%
2,046 departures · avg +2.3 min
-
Agno 36.6%
123 departures · avg +4.8 min
-
Magliaso Paese 38.2%
123 departures · avg +4.6 min
-
Magliaso 41.5%
123 departures · avg +4.6 min
-
Serocca 42.3%
123 departures · avg +4.5 min
-
Bioggio Molinazzo 43.9%
123 departures · avg +4.4 min
-
Bioggio 50.4%
123 departures · avg +3.9 min
-
Cappella-Agnuzzo 52%
123 departures · avg +3.7 min
-
Sorengo Laghetto 52.8%
123 departures · avg +3.7 min
-
Caslano 53.7%
123 departures · avg +3.9 min
-
Sorengo 60.2%
123 departures · avg +3.4 min
-
Lustmühle 63%
108 departures · avg +2.8 min
-
St. Gallen Marktplatz 63.6%
110 departures · avg +2.6 min
Largest delays
- NJ Zürich HB +102 min
- Bus 1 Genève, Jardin Botanique – Thônex, Hôpital Trois-Chêne Thônex, Hôpital Trois-Chêne +98 min
- Tram 12 Lancy-Bachet, gare – Thônex, Moillesulaz Lancy-Bachet, gareand 9 more trips of this line +77 min
- Bus 17 Villars-Ste-Croix, Croix-Péage – Lausanne, Vigie Vigie +71 min
- Tram 18 Meyrin, CERN – Grand-Lancy, Palettes Meyrin, CERN +68 min
- Bus 885 Goldingen, Egligen – Rapperswil SG, Bahnhof Rüti ZH, Bahnhofand 2 more trips of this line +66 min
- Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/Colladon Blécherette +58 min
- ICE Basel Bad Bf – Basel SBB Basel Bad Bfand 1 more trips of this line +58 min
- Bus 702 Tolochenaz, Les Saux – Bussigny, gare sud Bussigny, gare sudand 2 more trips of this line +58 min
- Bus 13 Balzers, Schlossweg – Schaanwald, Zollamt Balzers, Schlossweg +57 min
- Bus 2 Lausanne, Désert – Lausanne, Maladière-Lac Désertand 1 more trips of this line +56 min
- Tram 17 Lancy-Pont-Rouge, gareand 1 more trips of this line +56 min
- Bus 33 Puplinge, Pré-Marquis – Genève, Rive Puplinge, Pré-Marquis +56 min
- Bus 6 Solothurn Allmend, Bahnhof – Biberist RBS, Bahnhof Biberist RBS, Bahnhof +54 min
- Bus 3 Lausanne, gare – Le Mont-sur-L., Maillefer Lausanne-Gare +53 min