Punctuality of Swiss public transportThursday 23 July 2026
91.1% of 150,696 trips were on time. The share was lowest at 17:20: 80.3%. Of the busy lines, Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gare had the lowest share on time: 27.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.
91.1%
+0.4 ptsDay before: 90.7% · 150,696 trips with live data
Average delay
+1 min
Canceled trips
818
0.5% 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 22 July
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 95.1%
14,064 trips · avg +0.9 min
-
Tram 87.2%
13,573 trips · avg +1.3 min
-
Bus 91.2%
122,319 trips · avg +1 min
-
Metro 93.2%
296 trips · avg +1.1 min
-
Boat 55.6%
444 trips · avg +3.7 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 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 27.8%
194 trips · avg +4.3 min
-
166 trips · avg +4.9 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.4%
166 trips · avg +4.5 min
-
Bus 45 Epalinges, Bois-Murat – Lausanne, Chalet-à-GobetEpalinges, Bois-Murat – Lausanne, Chalet-à-Gobet 49.7%
153 trips · avg +3.3 min
-
153 trips · avg +3.5 min
-
51 trips · avg +3.5 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 57.1%
140 trips · avg +2.9 min
-
52 trips · avg +2.8 min
Show 17 more
-
234 trips · avg +2.7 min
-
139 trips · avg +3.2 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 59.6%
218 trips · avg +4.5 min
-
177 trips · avg +2.9 min
-
142 trips · avg +3.2 min
-
Bus 122 Grindelwald, Gletscherschlucht – Grindelwald, KlusiGrindelwald, Gletscherschlucht – Grindelwald, Klusi 62.2%
45 trips · avg +2.7 min
-
49 trips · avg +2.9 min
-
142 trips · avg +2.5 min
-
276 trips · avg +2.4 min
-
Bus 42 Grand-Lancy, Stade de Genève – Avusy, villageGrand-Lancy, Stade de Genève – Avusy, village 65.1%
86 trips · avg +2.7 min
-
Bus 105 Gsteigwiler, Dorf – Unterseen, Spital InterlakenGsteigwiler, Dorf – Unterseen, Spital Interlaken 65.2%
66 trips · avg +2.5 min
-
98 trips · avg +2.7 min
-
79 trips · avg +2.3 min
-
Bus 64 Epalinges, Croisettes – Lausanne, Chalet-à-GobetEpalinges, Croisettes – Lausanne, Chalet-à-Gobet 65.9%
179 trips · avg +2.4 min
-
224 trips · avg +2.7 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 67%
206 trips · avg +2.3 min
-
98 trips · avg +3.4 min
Most punctual busy lines
-
302 trips · avg +0.4 min
-
289 trips · avg +0.7 min
-
251 trips · avg +0.4 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 98.8%
250 trips · avg +0.3 min
-
216 trips · avg +0.4 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 98.4%
253 trips · avg +0.5 min
-
240 trips · avg +0.6 min
-
291 trips · avg +0.6 min
Least punctual busy lines
-
79 trips · avg +2.3 min
-
62 trips · avg +14.2 min
-
57 trips · avg +3.4 min
-
41 trips · avg +2.3 min
-
48 trips · avg +1.6 min
-
54 trips · avg +1 min
-
104 trips · avg +1.5 min
-
76 trips · avg +1.3 min
Show 17 more
-
106 trips · avg +0.8 min
-
58 trips · avg +1.3 min
-
82 trips · avg +1.4 min
-
116 trips · avg +1.3 min
-
115 trips · avg +1 min
-
118 trips · avg +1 min
-
75 trips · avg +1 min
-
72 trips · avg +0.8 min
-
147 trips · avg +1 min
-
76 trips · avg +0.6 min
-
76 trips · avg +0.5 min
-
79 trips · avg +1 min
-
40 trips · avg +1.1 min
-
40 trips · avg +0.6 min
-
81 trips · avg +0.4 min
-
41 trips · avg +0.7 min
-
145 trips · avg +0.5 min
Most punctual busy lines
-
208 trips · avg +0.2 min
-
119 trips · avg +0.4 min
-
104 trips · avg +0.2 min
-
79 trips · avg +0.4 min
-
79 trips · avg +0 min
-
79 trips · avg +0.1 min
-
78 trips · avg +0.7 min
-
78 trips · avg +0.1 min
Least punctual busy lines
-
276 trips · avg +2.4 min
-
274 trips · avg +2.3 min
-
262 trips · avg +1.7 min
-
294 trips · avg +2 min
-
511 trips · avg +1.5 min
-
178 trips · avg +1.8 min
-
281 trips · avg +1.7 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 89.6%
289 trips · avg +1.2 min
Show 9 more
-
358 trips · avg +1.5 min
-
293 trips · avg +0.9 min
-
266 trips · avg +1.4 min
-
266 trips · avg +1.1 min
-
306 trips · avg +1 min
-
295 trips · avg +1 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 96.1%
155 trips · avg +0.9 min
-
291 trips · avg +0.6 min
-
289 trips · avg +0.7 min
Most punctual busy lines
-
289 trips · avg +0.7 min
-
291 trips · avg +0.6 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 96.1%
155 trips · avg +0.9 min
-
295 trips · avg +1 min
-
306 trips · avg +1 min
-
266 trips · avg +1.4 min
-
266 trips · avg +1.1 min
-
293 trips · avg +0.9 min
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 27.8%
194 trips · avg +4.3 min
-
Bus 45 Epalinges, Bois-Murat – Lausanne, Chalet-à-GobetEpalinges, Bois-Murat – Lausanne, Chalet-à-Gobet 49.7%
153 trips · avg +3.3 min
-
153 trips · avg +3.5 min
-
51 trips · avg +3.5 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 57.1%
140 trips · avg +2.9 min
-
52 trips · avg +2.8 min
-
234 trips · avg +2.7 min
-
139 trips · avg +3.2 min
Show 17 more
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 59.6%
218 trips · avg +4.5 min
-
177 trips · avg +2.9 min
-
142 trips · avg +3.2 min
-
Bus 122 Grindelwald, Gletscherschlucht – Grindelwald, KlusiGrindelwald, Gletscherschlucht – Grindelwald, Klusi 62.2%
45 trips · avg +2.7 min
-
49 trips · avg +2.9 min
-
142 trips · avg +2.5 min
-
Bus 42 Grand-Lancy, Stade de Genève – Avusy, villageGrand-Lancy, Stade de Genève – Avusy, village 65.1%
86 trips · avg +2.7 min
-
Bus 105 Gsteigwiler, Dorf – Unterseen, Spital InterlakenGsteigwiler, Dorf – Unterseen, Spital Interlaken 65.2%
66 trips · avg +2.5 min
-
98 trips · avg +2.7 min
-
Bus 64 Epalinges, Croisettes – Lausanne, Chalet-à-GobetEpalinges, Croisettes – Lausanne, Chalet-à-Gobet 65.9%
179 trips · avg +2.4 min
-
224 trips · avg +2.7 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 67%
206 trips · avg +2.3 min
-
98 trips · avg +3.4 min
-
215 trips · avg +2.1 min
-
202 trips · avg +2.6 min
-
136 trips · avg +2.3 min
-
213 trips · avg +2.4 min
Most punctual busy lines
-
197 trips · avg +0 min
-
201 trips · avg +0.6 min
-
251 trips · avg +0.4 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 98.8%
250 trips · avg +0.3 min
-
216 trips · avg +0.4 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 98.5%
202 trips · avg +0.7 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 98.4%
253 trips · avg +0.5 min
-
198 trips · avg +0.4 min
Least punctual busy lines
-
166 trips · avg +4.9 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.4%
166 trips · avg +4.5 min
-
56 trips · avg +0.7 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%
56 trips · avg +0.5 min
Least punctual operators
-
Mouettes genevoises 55.6%
444 trips · avg +3.7 min
-
TPL 70.4%
1,598 trips · avg +3 min
-
Berner Oberland-Bahnen 75.9%
137 trips · avg +1.9 min
-
TPG 77.9%
9,791 trips · avg +2 min
-
VBL 78.1%
3,789 trips · avg +2 min
-
Bus Sierrois 79.7%
217 trips · avg +2.2 min
-
tl 82.5%
6,416 trips · avg +1.5 min
-
Bus und Service 83.6%
1,573 trips · avg +1.6 min
Show 17 more
-
Verkehrsbetrieb LIECHTENSTEINmobil 83.6%
868 trips · avg +1.7 min
-
Forchbahn 83.7%
178 trips · avg +1.8 min
-
BVB 84.1%
5,128 trips · avg +1.6 min
-
Chemins de fer du Jura 84.2%
114 trips · avg +1.9 min
-
Automobil Rottal 85.5%
449 trips · avg +1.1 min
-
Matterhorn Gotthard Bahn 85.7%
315 trips · avg +1.6 min
-
Autolinee FART 86.3%
716 trips · avg +1.1 min
-
Transports Publics Neuchâtelois 87.1%
2,905 trips · avg +1.3 min
-
Auto Leuk-Leukerbad 87.8%
237 trips · avg +1.1 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 88.2%
1,384 trips · avg +1.3 min
-
Wengernalpbahn 88.3%
154 trips · avg +1.1 min
-
AFA Bus 88.9%
235 trips · avg +1 min
-
Auto AG Rothenburg 89.2%
697 trips · avg +1.2 min
-
Autobus AG Liestal 89.5%
908 trips · avg +1.2 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 89.8%
1,183 trips · avg +1.1 min
-
Montreux-Oberland Bernois 90.2%
133 trips · avg +0.9 min
-
Bernmobil 90.5%
5,924 trips · avg +1.1 min
Most punctual operators
-
Busbetrieb Aarau 100%
935 trips · avg +0 min
-
Regionalbus Lenzburg 100%
547 trips · avg +0 min
-
Busbetrieb Olten-Gösgen-Gäu 99.8%
944 trips · avg +0 min
-
Aargau Verkehr 99.4%
1,435 trips · avg +0.2 min
-
Zentralbahn 99.5%
368 trips · avg +0.3 min
-
BLS 98.3%
1,587 trips · avg +0.4 min
-
THURBO 98.1%
1,096 trips · avg +0.3 min
-
Regionalverkehr Bern-Solothurn 98.3%
604 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 95.7%
1,566 departures · avg +1.1 min
-
Bern 98.6%
1,059 departures · avg +0.8 min
-
Zürich Oerlikon 96.5%
919 departures · avg +1 min
-
Zürich Stadelhofen 97.9%
700 departures · avg +1.1 min
-
Winterthur 97%
689 departures · avg +1 min
-
Zürich Hardbrücke 90.2%
675 departures · avg +1.9 min
-
Olten 91.5%
568 departures · avg +1.4 min
-
St. Gallen 94.9%
530 departures · avg +1.2 min
-
Lausanne 92.2%
525 departures · avg +1.3 min
-
Aarau 94.6%
516 departures · avg +0.9 min
-
Worblaufen 96.2%
479 departures · avg +0.9 min
-
Renens VD 91.1%
471 departures · avg +1.3 min
-
Genève, gare Cornavin 78.5%
2,735 departures · avg +1.8 min
-
Genève, Bel-Air 80%
2,631 departures · avg +1.8 min
-
Basel, Bahnhof SBB 87.1%
2,294 departures · avg +1.6 min
-
Zürich, Central 96.3%
2,187 departures · avg +0.9 min
-
Luzern, Kantonalbank 82.6%
2,160 departures · avg +1.8 min
-
Bern, Bahnhof 91.2%
2,153 departures · avg +1.4 min
-
Zürich, Bellevue 95.8%
2,039 departures · avg +1 min
-
Luzern, Bahnhof 89.3%
1,920 departures · avg +1.3 min
-
Bern, Zytglogge 95.1%
1,898 departures · avg +1.2 min
-
Lausanne, Bel-Air 69.7%
1,896 departures · avg +2.5 min
-
St. Gallen, Bahnhof 94.1%
1,871 departures · avg +1.1 min
-
1,851 departures · avg +0.9 min
-
St. Gallen Marktplatz 71.8%
110 departures · avg +2.4 min
-
Wilderswil 72.6%
135 departures · avg +2.2 min
-
Matten b. Interlaken 72.6%
135 departures · avg +2.2 min
-
Muhen Nord 74.5%
153 departures · avg +1.5 min
-
Oberentfelden Engelplatz 74.5%
153 departures · avg +1.5 min
-
S. Antonino 74.5%
161 departures · avg +2.4 min
-
Bex 75.4%
118 departures · avg +2.5 min
-
Täsch 75.7%
115 departures · avg +2.6 min
-
Lustmühle 76.9%
108 departures · avg +2.5 min
-
Zug Schutzengel 77.1%
140 departures · avg +2.2 min
-
Zug Chollermüli 77.9%
140 departures · avg +2.2 min
-
Hünenberg Zythus 79.3%
140 departures · avg +2.1 min
Largest delays
- EC Bregenz – Zürich HB Basel SBBand 1 more trips of this line +320 min
- EV Basel, Dreispitz – Aesch BL, Dorf Aesch BL, Dorfand 5 more trips of this line +260 min
- R55 Genolierand 2 more trips of this line +217 min
- ICE Churand 4 more trips of this line +197 min
- Bus 60 Genève, gare Cornavin – Gex, L'Aiglette Gex, L'Aiglette +112 min
- Bus 7 Prilly-M., gare +78 min
- Bus 11 Sargans, Bahnhof – Feldkirch, Bahnhof Balzers, Schlossweg +74 min
- Bus 18 Lausanne, Clochatte – Crissier, Timonet Clochatte +70 min