Punctuality of Swiss public transportTuesday 16 December 2025
85.2% of 148,453 trips were on time. The share was lowest at 17:30: 60.1%. Of the busy lines, M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) had the lowest share on time: 35.1%.
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.2%
−1.2 ptsDay before: 86.5% · 148,453 trips with live data
Average delay
+1.4 min
Canceled trips
480
0.3% 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: Monday 15 December
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 94.5%
14,098 trips · avg +0.8 min
-
Tram 80.2%
11,392 trips · avg +1.8 min
-
Bus 84.7%
122,227 trips · avg +1.5 min
-
Metro 92.9%
340 trips · avg +0.9 min
-
Boat 56.8%
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
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 35.1%
148 trips · avg +4.8 min
-
175 trips · avg +6.2 min
-
202 trips · avg +7.9 min
-
149 trips · avg +4.2 min
-
Bus 898 Büren an der Aare, Bahnhof – Münchenbuchsee, BahnhofBüren an der Aare, Bahnhof – Münchenbuchsee, Bahnhof 46%
50 trips · avg +3.5 min
-
60 trips · avg +3.8 min
-
148 trips · avg +3.9 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 50%
208 trips · avg +3.3 min
Show 17 more
-
186 trips · avg +4.6 min
-
151 trips · avg +3.2 min
-
170 trips · avg +4 min
-
63 trips · avg +9.1 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 57.3%
218 trips · avg +3.8 min
-
330 trips · avg +3.2 min
-
Bus 11 Chur, Bahnhofplatz – Felsberg, Rjterstutz/AeuliChur, Bahnhofplatz – Felsberg, Rjterstutz/Aeuli 58.7%
143 trips · avg +2.8 min
-
92 trips · avg +2.9 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 60.2%
279 trips · avg +2.9 min
-
Bus 61 Wallisellen, Glatt (Bus) – Zürich, MühlackerWallisellen, Glatt (Bus) – Zürich, Mühlacker 60.8%
158 trips · avg +3.3 min
-
286 trips · avg +3.3 min
-
106 trips · avg +2.8 min
-
256 trips · avg +3.1 min
-
Bus 32 Zürich, Strassenverkehrsamt – Zürich, HolzerhurdZürich, Strassenverkehrsamt – Zürich, Holzerhurd 61.4%
319 trips · avg +2.9 min
-
171 trips · avg +2.8 min
-
338 trips · avg +3.6 min
-
229 trips · avg +2.9 min
Most punctual busy lines
-
228 trips · avg +0.5 min
-
303 trips · avg +0.8 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 96.4%
277 trips · avg +0.6 min
-
239 trips · avg +0.9 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95%
282 trips · avg +0.8 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 93.4%
242 trips · avg +1 min
-
294 trips · avg +1.1 min
-
340 trips · avg +0.9 min
Least punctual busy lines
-
63 trips · avg +9.1 min
-
74 trips · avg +3.2 min
-
76 trips · avg +1.9 min
-
132 trips · avg +1.2 min
-
52 trips · avg +1.7 min
-
107 trips · avg +1.4 min
-
42 trips · avg +1 min
-
118 trips · avg +1.3 min
Show 17 more
-
72 trips · avg +1 min
-
116 trips · avg +1.9 min
-
75 trips · avg +1.4 min
-
77 trips · avg +0.8 min
-
77 trips · avg +1.1 min
-
50 trips · avg +1 min
-
153 trips · avg +1.2 min
-
72 trips · avg +1 min
-
42 trips · avg +0.9 min
-
56 trips · avg +0.8 min
-
83 trips · avg +0.8 min
-
84 trips · avg +1 min
-
59 trips · avg +0.5 min
-
76 trips · avg +1.4 min
-
78 trips · avg +0.9 min
-
82 trips · avg +0.9 min
-
50 trips · avg +0.9 min
Most punctual busy lines
-
208 trips · avg +0.3 min
-
126 trips · avg +0.3 min
-
98 trips · avg +0.3 min
-
80 trips · avg +0.3 min
-
79 trips · avg +0.2 min
-
78 trips · avg +0.1 min
-
77 trips · avg +0.4 min
-
77 trips · avg +0.3 min
Least punctual busy lines
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 60.2%
279 trips · avg +2.9 min
-
294 trips · avg +2.1 min
-
259 trips · avg +2.3 min
-
286 trips · avg +2.2 min
-
303 trips · avg +2.2 min
-
306 trips · avg +1.8 min
-
260 trips · avg +2 min
-
297 trips · avg +2.1 min
Show 13 more
-
384 trips · avg +1.9 min
-
252 trips · avg +1.9 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 80.4%
306 trips · avg +1.9 min
-
304 trips · avg +1.7 min
-
300 trips · avg +1.6 min
-
413 trips · avg +1.6 min
-
161 trips · avg +1.8 min
-
296 trips · avg +1.1 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 88.8%
107 trips · avg +1.9 min
-
181 trips · avg +1.3 min
-
294 trips · avg +1.1 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 94.8%
155 trips · avg +1 min
-
142 trips · avg +0.2 min
Most punctual busy lines
-
142 trips · avg +0.2 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 94.8%
155 trips · avg +1 min
-
294 trips · avg +1.1 min
-
181 trips · avg +1.3 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 88.8%
107 trips · avg +1.9 min
-
296 trips · avg +1.1 min
-
161 trips · avg +1.8 min
-
413 trips · avg +1.6 min
Least punctual busy lines
-
175 trips · avg +6.2 min
-
202 trips · avg +7.9 min
-
149 trips · avg +4.2 min
-
Bus 898 Büren an der Aare, Bahnhof – Münchenbuchsee, BahnhofBüren an der Aare, Bahnhof – Münchenbuchsee, Bahnhof 46%
50 trips · avg +3.5 min
-
60 trips · avg +3.8 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 50%
208 trips · avg +3.3 min
-
186 trips · avg +4.6 min
-
151 trips · avg +3.2 min
Show 17 more
-
170 trips · avg +4 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 57.3%
218 trips · avg +3.8 min
-
330 trips · avg +3.2 min
-
Bus 11 Chur, Bahnhofplatz – Felsberg, Rjterstutz/AeuliChur, Bahnhofplatz – Felsberg, Rjterstutz/Aeuli 58.7%
143 trips · avg +2.8 min
-
92 trips · avg +2.9 min
-
Bus 61 Wallisellen, Glatt (Bus) – Zürich, MühlackerWallisellen, Glatt (Bus) – Zürich, Mühlacker 60.8%
158 trips · avg +3.3 min
-
286 trips · avg +3.3 min
-
106 trips · avg +2.8 min
-
256 trips · avg +3.1 min
-
Bus 32 Zürich, Strassenverkehrsamt – Zürich, HolzerhurdZürich, Strassenverkehrsamt – Zürich, Holzerhurd 61.4%
319 trips · avg +2.9 min
-
171 trips · avg +2.8 min
-
338 trips · avg +3.6 min
-
229 trips · avg +2.9 min
-
151 trips · avg +2.9 min
-
174 trips · avg +2.6 min
-
Bus 58 Münchenstein, Schlossmatt – Reinach BL, BruggrainMünchenstein, Schlossmatt – Reinach BL, Bruggrain 63.3%
60 trips · avg +3 min
-
66 trips · avg +3 min
Most punctual busy lines
-
228 trips · avg +0.5 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 98.5%
206 trips · avg +1 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 96.4%
277 trips · avg +0.6 min
-
239 trips · avg +0.9 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95%
282 trips · avg +0.8 min
-
218 trips · avg +0.8 min
-
Bus 6 St. Gallen, Bach St. Georgen – St. Gallen, HeiligkreuzSt. Gallen, Bach St. Georgen – St. Gallen, Heiligkreuz 94.7%
207 trips · avg +0.9 min
-
201 trips · avg +1.1 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) 35.1%
148 trips · avg +4.8 min
-
148 trips · avg +3.9 min
-
50 trips · avg +0.5 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
-
Mouettes genevoises 56.8%
396 trips · avg +3.4 min
-
TPL 63.5%
1,613 trips · avg +3.6 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 69%
869 trips · avg +2.5 min
-
VBL 69.3%
3,917 trips · avg +2.5 min
-
BVB 71.1%
4,460 trips · avg +2.4 min
-
Transports Publics Neuchâtelois 71.7%
2,791 trips · avg +2.4 min
-
Automobil Rottal 73.3%
461 trips · avg +2.2 min
-
Bus Nyon-Prangins 74%
389 trips · avg +2.2 min
Show 17 more
-
Autolinee Regionali Luganesi 74.2%
229 trips · avg +2.5 min
-
Auto AG Rothenburg 74.6%
763 trips · avg +2.2 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 75.2%
303 trips · avg +2.1 min
-
TPG 76%
9,609 trips · avg +2 min
-
Bus und Service 76.6%
1,521 trips · avg +2 min
-
Busbetrieb Solothurn und Umgebung 76.7%
746 trips · avg +2 min
-
Bamert Bus 79.7%
177 trips · avg +1.9 min
-
Busbetrieb Aarau 80.3%
935 trips · avg +1.8 min
-
VBZ 80.3%
16,709 trips · avg +1.8 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 80.5%
1,383 trips · avg +1.9 min
-
Regiobus Gossau SG 81.6%
538 trips · avg +1.7 min
-
Bus Sierrois 81.7%
338 trips · avg +1.7 min
-
Montreux-Oberland Bernois 81.9%
138 trips · avg +2.1 min
-
tl 82%
6,778 trips · avg +1.6 min
-
TPF 82.2%
4,127 trips · avg +1.6 min
-
Lugano-Ponte Tresa 82.6%
132 trips · avg +1.2 min
-
Autobetrieb Sernftal 83.3%
114 trips · avg +1.2 min
Most punctual operators
-
Zentralbahn 100%
324 trips · avg +0.2 min
-
Regionalverkehr Bern-Solothurn 99.7%
605 trips · avg +0.3 min
-
THURBO 98.3%
1,112 trips · avg +0.4 min
-
Aare Seeland mobil 98.9%
281 trips · avg +0.4 min
-
Sihltal-Zürich-Uetliberg-Bahn 98.7%
313 trips · avg +0.7 min
-
Appenzeller Bahnen 98.6%
345 trips · avg +0.4 min
-
Schweizerische Südostbahn 98.1%
514 trips · avg +0.5 min
-
BLS 96.2%
1,566 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.5%
1,723 departures · avg +1.2 min
-
Bern 97.9%
1,068 departures · avg +0.8 min
-
Zürich Oerlikon 93.4%
914 departures · avg +1.2 min
-
Zürich Stadelhofen 87.4%
699 departures · avg +1.5 min
-
Winterthur 96.1%
689 departures · avg +1.1 min
-
Zürich Hardbrücke 81.8%
674 departures · avg +2.2 min
-
Olten 93.5%
602 departures · avg +1.2 min
-
Lausanne 94.3%
529 departures · avg +1.2 min
-
St. Gallen 92.8%
527 departures · avg +1.4 min
-
Aarau 93.9%
522 departures · avg +1.1 min
-
Renens VD 92.8%
487 departures · avg +1.2 min
-
Worblaufen 97.7%
480 departures · avg +0.9 min
-
Genève, gare Cornavin 80.2%
3,140 departures · avg +1.8 min
-
Genève, Bel-Air 82.9%
3,045 departures · avg +1.7 min
-
Bern, Bahnhof 90.8%
2,697 departures · avg +1.4 min
-
Luzern, Kantonalbank 76.3%
2,454 departures · avg +2.2 min
-
Zürich, Central 85.6%
2,263 departures · avg +1.8 min
-
Basel, Schifflände 79.7%
2,241 departures · avg +2 min
-
Zürich, Bellevue 85.9%
2,154 departures · avg +1.8 min
-
Luzern, Bahnhof 83.6%
2,133 departures · avg +1.7 min
-
Lausanne, Bel-Air 64.7%
2,097 departures · avg +2.9 min
-
Basel, Bankverein 81.8%
2,026 departures · avg +1.9 min
-
St. Gallen, Bahnhof 85.7%
2,026 departures · avg +1.6 min
-
Bern, Hirschengraben 86.1%
1,975 departures · avg +1.8 min
-
Magliaso Paese 62.9%
132 departures · avg +2.6 min
-
100 departures · avg +2.3 min
-
St. Gallen Marktplatz 66.4%
110 departures · avg +2.6 min
-
Magliaso 67.4%
132 departures · avg +2.3 min
-
Agno 67.4%
132 departures · avg +2.4 min
-
Serocca 68.9%
132 departures · avg +2.1 min
-
Vevey Vignerons 69%
100 departures · avg +2.4 min
-
S. Antonino 69.6%
161 departures · avg +2.5 min
-
Riazzino 70.3%
158 departures · avg +2.3 min
-
Muhen Nord 70.6%
153 departures · avg +1.8 min
-
Oberentfelden Engelplatz 70.6%
153 departures · avg +1.8 min
-
Lustmühle 71.3%
108 departures · avg +2.7 min
Largest delays
- Bus 1 Gebenstorf, Reuss – Würenlos, Bettlen Baden, Bahnhof Ost +173 min
- Bus 3 Wettingen, Brunnenwiese +170 min
- NJ Feldkirch – Zürich HB Zürich HB +105 min
- Bus 19 Onex, cité – Vernier, village Vernier, village +102 min
- R15 Boudry Littorailand 1 more trips of this line +76 min
- Bus 16 Lausanne, Grand Vennes – Lausanne, Provence nord Provence nord +74 min
- EC Bregenz – Zürich HB Zürich HBand 2 more trips of this line +69 min
- R24 Les Brenets – Le Locle Les Brenets +66 min
- Tram 6 Worb Dorfand 1 more trips of this line +65 min
- Bus 675 Chavornay, gare +63 min
- Tram 12 Lancy-Bachet, gare – Thônex, Moillesulaz Lancy-Bachet, gare +61 min
- Bus 68 Saint-Genis, Jean Monnetand 1 more trips of this line +60 min
- Bus 932 Weinfelden, Bahnhof – Neukirch an der Thur, Dorf Neukirch an der Thur, Dorf +59 min
- Bus 50 Blumenstein, Dorf – Thun, Bahnhof Thun, Bahnhof +59 min
- Bus 7 Pully, Val-Vert – Prilly-Malley, gare/aréna Prilly-M., gareand 1 more trips of this line +59 min