Punctuality of Swiss public transportWeek 323 Aug – 9 Aug 2026
90.4% of 975,424 trips were on time. The best day was Sunday 9 August with 91.8%, the worst Friday 7 August with 89.5%. Of the busy lines, M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) had the lowest share on time: 25%.
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.4%
−0.7 ptsWeek before: 91.1% · 975,424 trips with live data
Average delay
+1.1 min
Canceled trips
4,173
0.4% of the trips
Day by day
The share on time of each day. A day opens its page.
- 95%
- Average: 90.4%
By mode
-
Train 94.7%
96,819 trips · avg +0.8 min
-
Tram 86.6%
88,948 trips · avg +1.5 min
-
Bus 90.4%
784,883 trips · avg +1.1 min
-
Metro 99.1%
1,978 trips · avg +0.9 min
-
Boat 46.9%
2,796 trips · avg +4.3 min
Hour by hour
The share of the trips on their way that are less than 3 minutes late, each hour. A day opens its page.
- ≥ 95%
- 90–95%
- 85–90%
- 75–85%
- < 75%
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) 25%
1,098 trips · avg +5.9 min
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 28.9%
1,062 trips · avg +4.6 min
-
958 trips · avg +5.5 min
-
540 trips · avg +3.5 min
-
1,067 trips · avg +3.4 min
-
1,345 trips · avg +2.9 min
-
516 trips · avg +3.8 min
-
Bus 45 Epalinges, Bois-Murat – Lausanne, Chalet-à-GobetEpalinges, Bois-Murat – Lausanne, Chalet-à-Gobet 57.7%
915 trips · avg +3 min
Show 17 more
-
890 trips · avg +5 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 58.1%
1,305 trips · avg +2.8 min
-
1,173 trips · avg +2.8 min
-
1,246 trips · avg +3.1 min
-
599 trips · avg +2.9 min
-
1,570 trips · avg +3.2 min
-
Bus 122 Grindelwald, Gletscherschlucht – Grindelwald, KlusiGrindelwald, Gletscherschlucht – Grindelwald, Klusi 62.8%
298 trips · avg +2.8 min
-
974 trips · avg +2.9 min
-
489 trips · avg +2.7 min
-
456 trips · avg +7.7 min
-
1,019 trips · avg +2.1 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 66.5%
793 trips · avg +2.7 min
-
314 trips · avg +2.6 min
-
517 trips · avg +2.3 min
-
593 trips · avg +2.6 min
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 67.2%
464 trips · avg +2.5 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 67.5%
650 trips · avg +2.7 min
Most punctual busy lines
-
1,495 trips · avg +0.4 min
-
1,686 trips · avg +0.4 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 98.1%
1,660 trips · avg +0.4 min
-
1,388 trips · avg +0.5 min
-
1,626 trips · avg +0.8 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 97.6%
1,505 trips · avg +0.7 min
-
2,041 trips · avg +0.8 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 96.1%
1,323 trips · avg +0.9 min
Least punctual busy lines
-
456 trips · avg +7.7 min
-
552 trips · avg +2 min
-
559 trips · avg +1.9 min
-
406 trips · avg +1.6 min
-
736 trips · avg +2 min
-
317 trips · avg +1.1 min
-
582 trips · avg +1.3 min
-
334 trips · avg +1 min
Show 17 more
-
369 trips · avg +0.9 min
-
748 trips · avg +0.7 min
-
327 trips · avg +0.6 min
-
551 trips · avg +0.5 min
-
455 trips · avg +0.8 min
-
585 trips · avg +0.7 min
-
498 trips · avg +0.9 min
-
518 trips · avg +1 min
-
594 trips · avg +0.6 min
-
732 trips · avg +0.9 min
-
385 trips · avg +0.8 min
-
522 trips · avg +0.7 min
-
369 trips · avg +1 min
-
703 trips · avg +0.6 min
-
694 trips · avg +0.7 min
-
546 trips · avg +0.6 min
-
287 trips · avg +0.4 min
Most punctual busy lines
-
406 trips · avg +0 min
-
1,163 trips · avg +0.2 min
-
867 trips · avg +0.3 min
-
396 trips · avg +0.1 min
-
775 trips · avg +0.2 min
-
546 trips · avg +0.1 min
-
496 trips · avg +0.5 min
-
467 trips · avg +0.2 min
Least punctual busy lines
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 67.2%
464 trips · avg +2.5 min
-
1,954 trips · avg +1.9 min
-
1,838 trips · avg +2.1 min
-
1,854 trips · avg +1.9 min
-
Tram 7 Stettbach, Bahnhof – Zürich, WollishoferplatzStettbach, Bahnhof – Zürich, Wollishoferplatz 79.9%
512 trips · avg +1.7 min
-
3,295 trips · avg +1.5 min
-
1,889 trips · avg +1.9 min
-
349 trips · avg +1.6 min
Show 14 more
-
1,959 trips · avg +1.5 min
-
2,000 trips · avg +1.3 min
-
1,121 trips · avg +1.3 min
-
2,404 trips · avg +1.5 min
-
Tram 10 Zürich Flughafen, Fracht – Zürich, Bahnhofplatz/HBZürich Flughafen, Fracht – Zürich, Bahnhofplatz/HB 88.9%
434 trips · avg +1.2 min
-
2,039 trips · avg +1.2 min
-
2,236 trips · avg +1.2 min
-
1,990 trips · avg +1.6 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 92.1%
2,062 trips · avg +1.1 min
-
1,785 trips · avg +1.1 min
-
1,996 trips · avg +0.8 min
-
Tram 15 Zürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, BahnhofZürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, Bahnhof 95.5%
292 trips · avg +1.2 min
-
1,987 trips · avg +0.8 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.7%
1,080 trips · avg +0.8 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.7%
1,080 trips · avg +0.8 min
-
1,987 trips · avg +0.8 min
-
Tram 15 Zürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, BahnhofZürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, Bahnhof 95.5%
292 trips · avg +1.2 min
-
1,996 trips · avg +0.8 min
-
1,785 trips · avg +1.1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 92.1%
2,062 trips · avg +1.1 min
-
1,990 trips · avg +1.6 min
-
2,236 trips · avg +1.2 min
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 28.9%
1,062 trips · avg +4.6 min
-
540 trips · avg +3.5 min
-
1,067 trips · avg +3.4 min
-
1,345 trips · avg +2.9 min
-
516 trips · avg +3.8 min
-
Bus 45 Epalinges, Bois-Murat – Lausanne, Chalet-à-GobetEpalinges, Bois-Murat – Lausanne, Chalet-à-Gobet 57.7%
915 trips · avg +3 min
-
890 trips · avg +5 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 58.1%
1,305 trips · avg +2.8 min
Show 17 more
-
1,173 trips · avg +2.8 min
-
1,246 trips · avg +3.1 min
-
599 trips · avg +2.9 min
-
1,570 trips · avg +3.2 min
-
Bus 122 Grindelwald, Gletscherschlucht – Grindelwald, KlusiGrindelwald, Gletscherschlucht – Grindelwald, Klusi 62.8%
298 trips · avg +2.8 min
-
974 trips · avg +2.9 min
-
489 trips · avg +2.7 min
-
1,019 trips · avg +2.1 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 66.5%
793 trips · avg +2.7 min
-
314 trips · avg +2.6 min
-
517 trips · avg +2.3 min
-
593 trips · avg +2.6 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 67.5%
650 trips · avg +2.7 min
-
1,422 trips · avg +2.3 min
-
380 trips · avg +2.5 min
-
1,069 trips · avg +2.4 min
-
Bus 602 Pontresina, Bahnhof – Silvaplana, Rundella CurtinsPontresina, Bahnhof – Silvaplana, Rundella Curtins 69.9%
382 trips · avg +2.1 min
Most punctual busy lines
-
1,495 trips · avg +0.4 min
-
1,290 trips · avg +0.2 min
-
1,686 trips · avg +0.4 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 98.1%
1,660 trips · avg +0.4 min
-
1,388 trips · avg +0.5 min
-
1,626 trips · avg +0.8 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 97.6%
1,505 trips · avg +0.7 min
-
1,270 trips · avg +0.8 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) 25%
1,098 trips · avg +5.9 min
-
958 trips · avg +5.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) 98.6%
370 trips · avg +0.6 min
-
370 trips · avg +0.4 min
Least punctual operators
-
Mouettes genevoises 46.9%
2,796 trips · avg +4.3 min
-
Berner Oberland-Bahnen 77%
958 trips · avg +1.8 min
-
VBL 77.7%
24,978 trips · avg +2.1 min
-
TPG 77.8%
62,151 trips · avg +2.1 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 81.2%
5,585 trips · avg +1.8 min
-
Autobetrieb Sernftal 81.9%
830 trips · avg +1.8 min
-
BVB 82.8%
34,208 trips · avg +1.6 min
-
Bus und Service 83.3%
10,177 trips · avg +1.6 min
Show 17 more
-
Transports Publics Neuchâtelois 83.3%
17,856 trips · avg +1.5 min
-
Bus Sierrois 83.6%
1,271 trips · avg +1.5 min
-
Matterhorn Gotthard Bahn 84.2%
2,196 trips · avg +1.5 min
-
Autolinee FART 84.7%
4,922 trips · avg +1.1 min
-
tl 84.9%
43,575 trips · avg +1.4 min
-
TPL 86.2%
10,370 trips · avg +1.2 min
-
Bernmobil 86.3%
38,237 trips · avg +1.4 min
-
STI Bus 86.9%
14,189 trips · avg +1.4 min
-
Verkehrsbetrieb der Landschaft Davos 87%
2,586 trips · avg +1.2 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 88.1%
1,907 trips · avg +1.4 min
-
Forchbahn 88.2%
1,121 trips · avg +1.3 min
-
Auto AG Rothenburg 88.2%
4,948 trips · avg +1.3 min
-
Busbetrieb Solothurn und Umgebung 88.4%
4,787 trips · avg +1.2 min
-
Busbetrieb Aarau 88.4%
6,338 trips · avg +1.3 min
-
Automobil Rottal 88.4%
2,908 trips · avg +1.4 min
-
Stadtbus Frauenfeld 88.7%
3,520 trips · avg +1.3 min
-
Lugano-Ponte Tresa Ersatzverkehr 89.1%
816 trips · avg +1.2 min
Most punctual operators
-
Sihltal-Zürich-Uetliberg-Bahn 99.6%
1,801 trips · avg +0.3 min
-
Regionalverkehr Bern-Solothurn 99.3%
3,940 trips · avg +0.2 min
-
Zentralbahn 98.6%
2,493 trips · avg +0.3 min
-
Automobildienst SZU 98.2%
11,106 trips · avg +0.4 min
-
Stadtbus Winterthur 98.2%
12,347 trips · avg +0.4 min
-
Verkehrsbetriebe Glattal 97.6%
28,188 trips · avg +0.7 min
-
Appenzeller Bahnen 98%
2,255 trips · avg +0.4 min
-
BLS 97.6%
10,642 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 95.6%
10,913 departures · avg +1.1 min
-
Bern 96.6%
7,127 departures · avg +1 min
-
Zürich Oerlikon 95.6%
6,306 departures · avg +1 min
-
Zürich Stadelhofen 94.3%
4,932 departures · avg +1.2 min
-
Winterthur 95.8%
4,883 departures · avg +1.1 min
-
Zürich Hardbrücke 89.5%
4,758 departures · avg +1.9 min
-
Olten 92%
4,213 departures · avg +1.4 min
-
Lausanne 89.9%
3,735 departures · avg +1.4 min
-
Aarau 94.4%
3,629 departures · avg +0.9 min
-
St. Gallen 94%
3,626 departures · avg +1.2 min
-
Renens VD 91.3%
3,291 departures · avg +1.3 min
-
Worblaufen 98.5%
3,163 departures · avg +0.8 min
-
Genève, gare Cornavin 79.1%
17,448 departures · avg +1.9 min
-
Genève, Bel-Air 80.3%
16,854 departures · avg +1.9 min
-
Bern, Bahnhof 88.6%
15,566 departures · avg +1.6 min
-
Basel, Bahnhof SBB 87.3%
15,186 departures · avg +1.5 min
-
Zürich, Central 95%
14,984 departures · avg +1 min
-
14,499 departures · avg +2.1 min
-
Bern, Zytglogge 90%
13,430 departures · avg +1.5 min
-
Lausanne, Bel-Air 71.4%
13,055 departures · avg +2.3 min
-
12,952 departures · avg +0.9 min
-
Luzern, Bahnhof 90.7%
12,922 departures · avg +1.4 min
-
Zürich, Bellevue 94.4%
12,596 departures · avg +1.1 min
-
St. Gallen, Bahnhof 92.8%
12,154 departures · avg +1.3 min
-
Wilderswil 72.7%
944 departures · avg +2.3 min
-
Matten b. Interlaken 73.6%
944 departures · avg +2.3 min
-
Muhen Nord 74.4%
1,026 departures · avg +1.6 min
-
Payerne 74.4%
767 departures · avg +2.4 min
-
Oberentfelden Engelplatz 74.6%
1,026 departures · avg +1.6 min
-
Como S. Giovanni 76.4%
810 departures · avg +2.7 min
-
Chiasso 76.9%
1,201 departures · avg +2.5 min
-
Zweilütschinen 78.7%
846 departures · avg +1.9 min
-
Zug Chollermüli 80.1%
909 departures · avg +2.1 min
-
Zug Schutzengel 80.1%
909 departures · avg +2.1 min
-
Romont FR 80.7%
1,093 departures · avg +1.9 min
-
Täsch 82.4%
803 departures · avg +1.8 min
Largest delays
- EV Basel, Dreispitz – Aesch BL, Dorf Aesch BL, Dorfand 7 more trips of this line +290 min
- Bus 8 Corminboeuf, anc. poste – Marly, piscine Marly, piscineand 2 more trips of this line +218 min
- Bus 25 Ramsen, Petersburg +196 min
- Bus 470 Romont FR, gare +193 min
- Bus 893 Wald ZH, Bahnhof – Wald ZH, Bahnhof Wald ZH, Bahnhofand 2 more trips of this line +186 min
- Bus 892 Wald ZH, Bahnhof – Wald ZH, Rehazentrum Wald ZH, Rehazentrumand 1 more trips of this line +181 min
- Bus 83 Satigny, gare +167 min
- Bus 62 Sursee, Bahnhof – Ruswil, Rottalcenter Ruswil, Rottalcenterand 1 more trips of this line +165 min
- Bus 91 Genève, Beau-Séjour – Genève, Pointe de la Jonction Genève, Pointe de la Jonctionand 3 more trips of this line +146 min
- Bus 604 Pontresina, Post – Chiavenna, Stazione Pontresina, Postand 2 more trips of this line +142 min
- Bus 11 Sion, SUVA – Sion, Garenne Sion, SUVA +140 min
- Bus 25 Pully, gare +137 min
- Bus 344 Brunnwil, Weilerand 1 more trips of this line +137 min
- S17 Dietikon – Wohlen AG Wohlen AG +136 min
- EC Bregenz – Zürich HB Lausanneand 4 more trips of this line +120 min
›Probably errors in the feed (2)
Delays of more than 6 hours. The real-time feed sent them, but they are probably not real.
- Bus 20 Horw, Ennethorwand 7 more trips of this line +607 min
- Bus 165 Münsingen, Bahnhof – Kirchdorf BE, Kirchgasse Münsingen, Bahnhof +390 min