Punctuality of Swiss public transportWednesday 22 July 2026
90.7% of 151,203 trips were on time. The share was lowest at 17:20: 80.1%. Of the busy lines, Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gare had the lowest share on time: 23.7%.
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.
90.7%
−0.1 ptsDay before: 90.8% · 151,203 trips with live data
Average delay
+1 min
Canceled trips
643
0.4% 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: Tuesday 21 July
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 93.7%
14,215 trips · avg +0.9 min
-
Tram 86.8%
13,658 trips · avg +1.4 min
-
Bus 90.9%
122,590 trips · avg +1 min
-
Metro 96.3%
296 trips · avg +0.9 min
-
Boat 52%
444 trips · avg +3.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 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 23.7%
194 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) 35.5%
166 trips · avg +4.9 min
-
166 trips · avg +5.1 min
-
136 trips · avg +3.6 min
-
153 trips · avg +3.3 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 50.4%
139 trips · avg +3.3 min
-
95 trips · avg +3.4 min
-
Bus 45 Epalinges, Bois-Murat – Lausanne, Chalet-à-GobetEpalinges, Bois-Murat – Lausanne, Chalet-à-Gobet 50.7%
150 trips · avg +3.8 min
Show 17 more
-
62 trips · avg +12 min
-
144 trips · avg +3.4 min
-
62 trips · avg +3.9 min
-
175 trips · avg +3.4 min
-
236 trips · avg +2.8 min
-
96 trips · avg +3 min
-
Bus 64 Epalinges, Croisettes – Lausanne, Chalet-à-GobetEpalinges, Croisettes – Lausanne, Chalet-à-Gobet 59.2%
184 trips · avg +2.6 min
-
213 trips · avg +2.8 min
-
Bus 122 Grindelwald, Gletscherschlucht – Grindelwald, KlusiGrindelwald, Gletscherschlucht – Grindelwald, Klusi 60%
45 trips · avg +2.5 min
-
205 trips · avg +2.7 min
-
49 trips · avg +2.4 min
-
222 trips · avg +3.2 min
-
158 trips · avg +2.9 min
-
277 trips · avg +2.3 min
-
Bus 105 Gsteigwiler, Dorf – Unterseen, Spital InterlakenGsteigwiler, Dorf – Unterseen, Spital Interlaken 65.2%
66 trips · avg +2.5 min
-
180 trips · avg +2.5 min
-
166 trips · avg +2.5 min
Most punctual busy lines
-
255 trips · avg +0.3 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 99.6%
250 trips · avg +0.2 min
-
240 trips · avg +0.5 min
-
301 trips · avg +0.5 min
-
288 trips · avg +0.7 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 98.4%
254 trips · avg +0.4 min
-
216 trips · avg +0.4 min
-
216 trips · avg +0.5 min
Least punctual busy lines
-
62 trips · avg +12 min
-
79 trips · avg +2.3 min
-
80 trips · avg +1.9 min
-
48 trips · avg +1.9 min
-
68 trips · avg +1.6 min
-
57 trips · avg +1.1 min
-
98 trips · avg +1.9 min
-
82 trips · avg +1.6 min
Show 17 more
-
41 trips · avg +1.6 min
-
58 trips · avg +1.4 min
-
76 trips · avg +1.5 min
-
40 trips · avg +1.4 min
-
107 trips · avg +1 min
-
57 trips · avg +0.9 min
-
48 trips · avg +0.8 min
-
80 trips · avg +0.9 min
-
40 trips · avg +0.8 min
-
70 trips · avg +0.6 min
-
75 trips · avg +0.5 min
-
125 trips · avg +0.7 min
-
47 trips · avg +0.9 min
-
147 trips · avg +0.9 min
-
118 trips · avg +1.1 min
-
53 trips · avg +1 min
-
147 trips · avg +0.6 min
Most punctual busy lines
-
208 trips · avg +0.2 min
-
139 trips · avg +0.3 min
-
126 trips · avg +0.2 min
-
115 trips · avg +0.3 min
-
91 trips · avg +0.3 min
-
81 trips · avg +0.2 min
-
78 trips · avg +0.1 min
-
77 trips · avg +0.3 min
Least punctual busy lines
-
277 trips · avg +2.3 min
-
274 trips · avg +1.9 min
-
294 trips · avg +1.6 min
-
294 trips · avg +1.8 min
-
281 trips · avg +1.9 min
-
509 trips · avg +1.4 min
-
365 trips · avg +1.5 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 87.5%
296 trips · avg +1.6 min
Show 9 more
-
175 trips · avg +1.5 min
-
293 trips · avg +1 min
-
307 trips · avg +1.1 min
-
276 trips · avg +1.3 min
-
290 trips · avg +0.7 min
-
304 trips · avg +0.9 min
-
263 trips · avg +1 min
-
288 trips · avg +0.7 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 99.4%
155 trips · avg +0.7 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
-
288 trips · avg +0.7 min
-
263 trips · avg +1 min
-
304 trips · avg +0.9 min
-
290 trips · avg +0.7 min
-
276 trips · avg +1.3 min
-
307 trips · avg +1.1 min
-
293 trips · avg +1 min
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 23.7%
194 trips · avg +4.4 min
-
136 trips · avg +3.6 min
-
153 trips · avg +3.3 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 50.4%
139 trips · avg +3.3 min
-
95 trips · avg +3.4 min
-
Bus 45 Epalinges, Bois-Murat – Lausanne, Chalet-à-GobetEpalinges, Bois-Murat – Lausanne, Chalet-à-Gobet 50.7%
150 trips · avg +3.8 min
-
144 trips · avg +3.4 min
-
62 trips · avg +3.9 min
Show 17 more
-
175 trips · avg +3.4 min
-
236 trips · avg +2.8 min
-
96 trips · avg +3 min
-
Bus 64 Epalinges, Croisettes – Lausanne, Chalet-à-GobetEpalinges, Croisettes – Lausanne, Chalet-à-Gobet 59.2%
184 trips · avg +2.6 min
-
213 trips · avg +2.8 min
-
Bus 122 Grindelwald, Gletscherschlucht – Grindelwald, KlusiGrindelwald, Gletscherschlucht – Grindelwald, Klusi 60%
45 trips · avg +2.5 min
-
205 trips · avg +2.7 min
-
49 trips · avg +2.4 min
-
222 trips · avg +3.2 min
-
158 trips · avg +2.9 min
-
Bus 105 Gsteigwiler, Dorf – Unterseen, Spital InterlakenGsteigwiler, Dorf – Unterseen, Spital Interlaken 65.2%
66 trips · avg +2.5 min
-
180 trips · avg +2.5 min
-
166 trips · avg +2.5 min
-
48 trips · avg +2.7 min
-
Bus 4 Chur, Austrasse – Chur, Seniorenzentrum CadonauChur, Austrasse – Chur, Seniorenzentrum Cadonau 66.8%
196 trips · avg +2.3 min
-
Bus 501 Estavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, plageEstavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, plage 67.9%
56 trips · avg +2.2 min
-
Bus 931 Uetikon am See, Bahnhof – Uetikon am See, BergheimUetikon am See, Bahnhof – Uetikon am See, Bergheim 68.4%
76 trips · avg +3.8 min
Most punctual busy lines
-
Bus 3 Schaffhausen, Sommerwies – Schaffhausen, KrummackerSchaffhausen, Sommerwies – Schaffhausen, Krummacker 100%
198 trips · avg +0.4 min
-
197 trips · avg +0 min
-
255 trips · avg +0.3 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 99.6%
250 trips · avg +0.2 min
-
198 trips · avg +0.2 min
-
240 trips · avg +0.5 min
-
201 trips · avg +0.7 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 98.4%
254 trips · avg +0.4 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.5%
166 trips · avg +4.9 min
-
166 trips · avg +5.1 min
-
56 trips · avg +0.6 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.8 min
Least punctual operators
-
Mouettes genevoises 52%
444 trips · avg +3.9 min
-
VBL 74.1%
3,775 trips · avg +2.2 min
-
TPL 76.6%
1,596 trips · avg +2 min
-
Berner Oberland-Bahnen 76.6%
137 trips · avg +1.9 min
-
TPG 76.9%
9,711 trips · avg +2 min
-
Bus Sierrois 77.3%
207 trips · avg +2.4 min
-
Bus und Service 79.6%
1,577 trips · avg +1.7 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 83.5%
874 trips · avg +1.7 min
Show 17 more
-
BVB 84.2%
5,124 trips · avg +1.5 min
-
tl 84.3%
6,463 trips · avg +1.3 min
-
Chemins de fer du Jura 84.7%
118 trips · avg +1.1 min
-
Wengernalpbahn 85.8%
155 trips · avg +1.3 min
-
Autobetrieb Sernftal 86.1%
122 trips · avg +1.8 min
-
Autolinee FART 86.6%
716 trips · avg +1.2 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 86.6%
1,384 trips · avg +1.3 min
-
Matterhorn Gotthard Bahn 86.7%
308 trips · avg +1.3 min
-
Transports Publics Neuchâtelois 86.9%
2,912 trips · avg +1.3 min
-
Auto Leuk-Leukerbad 87.4%
239 trips · avg +1 min
-
Automobil Rottal 87.7%
446 trips · avg +1.3 min
-
Auto AG Rothenburg 88.6%
760 trips · avg +1.2 min
-
Autobus AG Liestal 88.9%
908 trips · avg +1.2 min
-
RhB 88.9%
579 trips · avg +1.2 min
-
AFA Bus 89.3%
233 trips · avg +1 min
-
STI Bus 89.6%
2,132 trips · avg +1.2 min
-
Forchbahn 89.7%
175 trips · avg +1.5 min
Most punctual operators
-
Busbetrieb Aarau 100%
935 trips · avg +0 min
-
Busbetrieb Olten-Gösgen-Gäu 99.9%
944 trips · avg +0 min
-
Regionalbus Lenzburg 100%
547 trips · avg +0 min
-
Aargau Verkehr 99.4%
1,434 trips · avg +0.2 min
-
Stadtbus Winterthur 98.7%
1,881 trips · avg +0.4 min
-
Sihltal-Zürich-Uetliberg-Bahn 99.6%
267 trips · avg +0.4 min
-
BLS 98.2%
1,585 trips · avg +0.4 min
-
Aare Seeland mobil 99.1%
337 trips · avg +0.5 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 96.4%
1,555 departures · avg +1.1 min
-
Bern 97.9%
1,061 departures · avg +0.7 min
-
Zürich Oerlikon 97.2%
908 departures · avg +0.9 min
-
Zürich Stadelhofen 96.7%
692 departures · avg +1.1 min
-
Winterthur 95.6%
686 departures · avg +1.2 min
-
Zürich Hardbrücke 91.2%
667 departures · avg +1.8 min
-
Olten 96%
569 departures · avg +1 min
-
Lausanne 93.6%
528 departures · avg +1.2 min
-
St. Gallen 92.8%
526 departures · avg +1.4 min
-
Aarau 96.1%
515 departures · avg +0.8 min
-
Worblaufen 97.9%
481 departures · avg +0.9 min
-
Renens VD 95.3%
471 departures · avg +1 min
-
Genève, gare Cornavin 76.4%
2,673 departures · avg +2 min
-
Genève, Bel-Air 79%
2,594 departures · avg +1.9 min
-
2,289 departures · avg +1.7 min
-
Zürich, Central 96.3%
2,233 departures · avg +0.9 min
-
Luzern, Kantonalbank 78.7%
2,163 departures · avg +2 min
-
Bern, Bahnhof 91.3%
2,158 departures · avg +1.4 min
-
Zürich, Bellevue 95.6%
2,108 departures · avg +1 min
-
Luzern, Bahnhof 86.2%
1,915 departures · avg +1.4 min
-
Lausanne, Bel-Air 70.8%
1,899 departures · avg +2.3 min
-
Bern, Zytglogge 95%
1,898 departures · avg +1.1 min
-
1,893 departures · avg +0.9 min
-
St. Gallen, Bahnhof 95.6%
1,859 departures · avg +1 min
-
Como S. Giovanni 62.7%
118 departures · avg +5.5 min
-
Sonceboz-Sombeval 63.8%
105 departures · avg +2.3 min
-
Payerne 64.8%
108 departures · avg +2.9 min
-
Chiasso 68.4%
187 departures · avg +4.8 min
-
Magliaso Paese 68.8%
112 departures · avg +2.1 min
-
Wilderswil 70.4%
135 departures · avg +2.3 min
-
St-Maurice 71.6%
176 departures · avg +2.4 min
-
Agno 73.2%
112 departures · avg +1.9 min
-
Matten b. Interlaken 73.3%
135 departures · avg +2.3 min
-
Muhen Nord 74.5%
153 departures · avg +1.5 min
-
Oberentfelden Engelplatz 74.5%
153 departures · avg +1.5 min
-
Bex 74.6%
118 departures · avg +2.3 min
Largest delays
- R55 Genolierand 6 more trips of this line +214 min
- Bus 54 Epalinges, Croisettes – Renens VD, gare Croisettes +111 min
- Tram 3 Birsfelden, Hard +100 min
- EV Basel, Dreispitz – Aesch BL, Dorf Basel, Dreispitz +75 min
- Bus 83 Satigny, gare +75 min
- ICE Brig +70 min
- EC Bregenz – Zürich HB Zürich HB +69 min
- R71 Meiringen +65 min
- Bus 45 Epalinges, Bois-Murat – Lausanne, Chalet-à-Gobet Chalet-à-Gobet +64 min
- Bus 205 Montreux, Le Taux – Montreux, rue de la Gare Montreux, Le Taux +62 min
- R22 La Chaux-de-Fonds +62 min
- R42 Malleray-Bévilard +59 min
- Bus 408 Unterschächen, Dorf – Attinghausen, Seilbahn Linthal, Bahnhof +59 min
- Bus 1 Genève, Jardin Botanique +58 min