Punctuality of Swiss public transportWeek 248 Jun – 14 Jun 2026
87.5% of 972,563 trips were on time. The best day was Sunday 14 June with 90.5%, the worst Tuesday 9 June with 86.3%. Of the busy lines, M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) had the lowest share on time: 38.9%.
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.
87.5%
+0.6 ptsWeek before: 87% · 972,563 trips with live data
Average delay
+1.5 min
Canceled trips
5,639
0.6% of the trips
Day by day
The share on time of each day. A day opens its page.
- 95%
- Average: 87.5%
- Best day
- Sun 14 Jun · 90.5%
- Worst day
- Tue 9 Jun · 86.3%
- Worst hour
- Tue 17:00–18:00 · 69%
By mode
-
Train 94.5%
98,041 trips · avg +0.8 min
-
Tram 85%
76,529 trips · avg +1.6 min
-
Bus 87%
793,513 trips · avg +1.6 min
-
Metro 97.1%
1,975 trips · avg +1 min
-
Boat 57.3%
2,505 trips · avg +3.7 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) 38.9%
1,012 trips · avg +4.9 min
-
439 trips · avg +5.9 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 41.8%
1,360 trips · avg +3.8 min
-
1,136 trips · avg +4.6 min
-
813 trips · avg +4.7 min
-
467 trips · avg +2.9 min
-
487 trips · avg +4 min
-
Bus 108 Neuchâtel, Temple Valangines – Neuchâtel, Place PuryNeuchâtel, Temple Valangines – Neuchâtel, Place Pury 55.7%
999 trips · avg +3.6 min
Show 17 more
-
380 trips · avg +3.1 min
-
427 trips · avg +2.9 min
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 56.6%
463 trips · avg +3.7 min
-
1,171 trips · avg +2.8 min
-
Bus 66 Thoiry, Centre commercial – Genève-Aéroport, TerminalThoiry, Centre commercial – Genève-Aéroport, Terminal 57.4%
340 trips · avg +3.2 min
-
Bus 4 Chur, Austrasse – Chur, Seniorenzentrum CadonauChur, Austrasse – Chur, Seniorenzentrum Cadonau 57.6%
1,263 trips · avg +3.6 min
-
607 trips · avg +3.4 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 57.8%
1,302 trips · avg +3.7 min
-
1,068 trips · avg +3.5 min
-
558 trips · avg +3.1 min
-
1,480 trips · avg +3.5 min
-
Bus 50 Versoix, Centre sportif – Genève-Aéroport, TerminalVersoix, Centre sportif – Genève-Aéroport, Terminal 59.2%
326 trips · avg +2.8 min
-
1,890 trips · avg +3.5 min
-
451 trips · avg +8 min
-
336 trips · avg +3.4 min
-
314 trips · avg +3 min
-
931 trips · avg +6.1 min
Most punctual busy lines
-
2,048 trips · avg +0.7 min
-
1,553 trips · avg +0.6 min
-
1,617 trips · avg +0.8 min
-
1,516 trips · avg +1 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.3%
1,840 trips · avg +0.9 min
-
1,965 trips · avg +0.8 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 94.7%
1,519 trips · avg +1 min
-
1,534 trips · avg +0.9 min
Least punctual busy lines
-
451 trips · avg +8 min
-
739 trips · avg +2.5 min
-
797 trips · avg +2.2 min
-
440 trips · avg +2.9 min
-
354 trips · avg +1.5 min
-
414 trips · avg +1.5 min
-
364 trips · avg +0.8 min
-
504 trips · avg +0.7 min
Show 17 more
-
820 trips · avg +1.1 min
-
414 trips · avg +0.7 min
-
304 trips · avg +0.6 min
-
518 trips · avg +1 min
-
541 trips · avg +0.7 min
-
472 trips · avg +0.7 min
-
454 trips · avg +0.9 min
-
281 trips · avg +0.6 min
-
754 trips · avg +0.8 min
-
503 trips · avg +0.7 min
-
582 trips · avg +0.7 min
-
371 trips · avg +0.7 min
-
325 trips · avg +0.7 min
-
287 trips · avg +0.9 min
-
462 trips · avg +0.7 min
-
303 trips · avg +0.7 min
-
522 trips · avg +0.6 min
Most punctual busy lines
-
867 trips · avg +0.3 min
-
823 trips · avg +0.4 min
-
546 trips · avg +0.1 min
-
777 trips · avg +0.1 min
-
727 trips · avg +0.3 min
-
1,163 trips · avg +0.2 min
-
462 trips · avg +0.2 min
-
604 trips · avg +0.2 min
Least punctual busy lines
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 56.6%
463 trips · avg +3.7 min
-
1,962 trips · avg +1.9 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 74.6%
1,902 trips · avg +2.3 min
-
1,073 trips · avg +3 min
-
1,914 trips · avg +2.2 min
-
349 trips · avg +1.9 min
-
Tram 8 Bern, Saali – Bern Brünnen Westside, BahnhofBern, Saali – Bern Brünnen Westside, Bahnhof 79.5%
533 trips · avg +1.9 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 79.7%
2,291 trips · avg +2 min
Show 17 more
-
1,847 trips · avg +2 min
-
Tram 2 Binningen, Kronenplatz – Basel, Badischer BahnhofBinningen, Kronenplatz – Basel, Badischer Bahnhof 80%
464 trips · avg +2.2 min
-
2,460 trips · avg +2.3 min
-
2,042 trips · avg +1.7 min
-
1,959 trips · avg +1.7 min
-
1,848 trips · avg +1.6 min
-
Tram 7 Stettbach, Bahnhof – Zürich, WollishoferplatzStettbach, Bahnhof – Zürich, Wollishoferplatz 85.8%
480 trips · avg +1.8 min
-
1,066 trips · avg +3 min
-
2,382 trips · avg +1.6 min
-
2,033 trips · avg +1.4 min
-
1,914 trips · avg +1.5 min
-
1,985 trips · avg +1.3 min
-
1,991 trips · avg +1.5 min
-
Tram 10 Zürich Flughafen, Fracht – Zürich, Bahnhofplatz/HBZürich Flughafen, Fracht – Zürich, Bahnhofplatz/HB 91.2%
409 trips · avg +1.1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 92%
2,044 trips · avg +1.2 min
-
Tram 11 Zürich, Central – Zürich Tiefenbrunnen, BahnhofZürich, Central – Zürich Tiefenbrunnen, Bahnhof 92.6%
474 trips · avg +1.1 min
-
1,963 trips · avg +0.9 min
Most punctual busy lines
-
975 trips · avg +0.1 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 96.6%
1,075 trips · avg +0.8 min
-
1,516 trips · avg +1 min
-
1,965 trips · avg +0.8 min
-
1,963 trips · avg +0.9 min
-
Tram 11 Zürich, Central – Zürich Tiefenbrunnen, BahnhofZürich, Central – Zürich Tiefenbrunnen, Bahnhof 92.6%
474 trips · avg +1.1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 92%
2,044 trips · avg +1.2 min
-
Tram 10 Zürich Flughafen, Fracht – Zürich, Bahnhofplatz/HBZürich Flughafen, Fracht – Zürich, Bahnhofplatz/HB 91.2%
409 trips · avg +1.1 min
Least punctual busy lines
-
439 trips · avg +5.9 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 41.8%
1,360 trips · avg +3.8 min
-
1,136 trips · avg +4.6 min
-
467 trips · avg +2.9 min
-
487 trips · avg +4 min
-
Bus 108 Neuchâtel, Temple Valangines – Neuchâtel, Place PuryNeuchâtel, Temple Valangines – Neuchâtel, Place Pury 55.7%
999 trips · avg +3.6 min
-
380 trips · avg +3.1 min
-
427 trips · avg +2.9 min
Show 17 more
-
1,171 trips · avg +2.8 min
-
Bus 66 Thoiry, Centre commercial – Genève-Aéroport, TerminalThoiry, Centre commercial – Genève-Aéroport, Terminal 57.4%
340 trips · avg +3.2 min
-
Bus 4 Chur, Austrasse – Chur, Seniorenzentrum CadonauChur, Austrasse – Chur, Seniorenzentrum Cadonau 57.6%
1,263 trips · avg +3.6 min
-
607 trips · avg +3.4 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 57.8%
1,302 trips · avg +3.7 min
-
1,068 trips · avg +3.5 min
-
558 trips · avg +3.1 min
-
1,480 trips · avg +3.5 min
-
Bus 50 Versoix, Centre sportif – Genève-Aéroport, TerminalVersoix, Centre sportif – Genève-Aéroport, Terminal 59.2%
326 trips · avg +2.8 min
-
1,890 trips · avg +3.5 min
-
336 trips · avg +3.4 min
-
314 trips · avg +3 min
-
931 trips · avg +6.1 min
-
1,134 trips · avg +3.5 min
-
938 trips · avg +2.9 min
-
Bus 50 Basel EuroAirport, Verwaltung – Basel, Bahnhof SBBBasel EuroAirport, Verwaltung – Basel, Bahnhof SBB 62.8%
441 trips · avg +2.8 min
-
1,198 trips · avg +2.8 min
Most punctual busy lines
-
Bus 6 St. Gallen, Bach St. Georgen – St. Gallen, HeiligkreuzSt. Gallen, Bach St. Georgen – St. Gallen, Heiligkreuz 97.7%
1,298 trips · avg +0.5 min
-
1,553 trips · avg +0.6 min
-
1,617 trips · avg +0.8 min
-
1,277 trips · avg +0.7 min
-
Bus 5 St. Gallen, Riethüsli – St. Gallen, RotmontenSt. Gallen, Riethüsli – St. Gallen, Rotmonten 96%
1,307 trips · avg +0.8 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.3%
1,840 trips · avg +0.9 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 94.7%
1,519 trips · avg +1 min
-
1,534 trips · avg +0.9 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) 38.9%
1,012 trips · avg +4.9 min
-
813 trips · avg +4.7 min
-
338 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) 98.5%
342 trips · avg +0.7 min
Least punctual operators
-
Mouettes genevoises 57.3%
2,505 trips · avg +3.7 min
-
VBL 66.1%
25,654 trips · avg +3.2 min
-
Autobetrieb Sernftal 68.4%
889 trips · avg +2.5 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 72.3%
5,318 trips · avg +2.6 min
-
Lugano-Ponte Tresa 73%
797 trips · avg +2.2 min
-
TPL 74.4%
10,470 trips · avg +2.1 min
-
Automobil Rottal 74.9%
2,916 trips · avg +1.9 min
-
Transports Publics Neuchâtelois 75.6%
18,120 trips · avg +2 min
Show 17 more
-
TPG 75.8%
58,546 trips · avg +2.4 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 78.1%
1,887 trips · avg +1.9 min
-
Bus und Service 78.8%
10,258 trips · avg +2.1 min
-
BVB 79.1%
31,876 trips · avg +1.9 min
-
Matterhorn Gotthard Bahn 79.3%
2,222 trips · avg +1.5 min
-
Busbetrieb Aarau 81.7%
6,337 trips · avg +1.7 min
-
Auto AG Rothenburg 82.3%
4,812 trips · avg +1.5 min
-
Bus Nyon-Prangins 82.7%
2,179 trips · avg +1.6 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 82.8%
7,923 trips · avg +1.8 min
-
Sierre-Montana-Crans 83.6%
1,271 trips · avg +1.6 min
-
SBB Infrastruktur AG Bahnersatz 83.7%
769 trips · avg +1.9 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 83.8%
7,632 trips · avg +1.5 min
-
Bus Sierrois 83.9%
1,722 trips · avg +1.4 min
-
Stadtbus Frauenfeld 83.9%
3,522 trips · avg +1.7 min
-
Busbetrieb Solothurn und Umgebung 84.7%
4,841 trips · avg +1.4 min
-
Regiobus Gossau SG 84.8%
4,238 trips · avg +1.5 min
-
tl 84.9%
46,441 trips · avg +1.9 min
Most punctual operators
-
Regionalverkehr Bern-Solothurn 99.4%
3,951 trips · avg +0.2 min
-
Sihltal-Zürich-Uetliberg-Bahn 99%
1,804 trips · avg +0.4 min
-
BLS 98.2%
10,689 trips · avg +0.4 min
-
Schweizerische Südostbahn 98.1%
3,533 trips · avg +0.5 min
-
Lausanne-Echallens-Bercher 98.7%
748 trips · avg +0.4 min
-
Busbetrieb Grenchen und Umgebung 98.2%
2,231 trips · avg +0.7 min
-
Zentralbahn 97.8%
2,493 trips · avg +0.4 min
-
Aare Seeland mobil 97.8%
2,220 trips · avg +0.4 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 94.5%
10,836 departures · avg +1.2 min
-
Bern 98.2%
7,254 departures · avg +0.8 min
-
Zürich Oerlikon 95.2%
6,318 departures · avg +1.1 min
-
Zürich Stadelhofen 93.2%
4,880 departures · avg +1.3 min
-
Winterthur 94.8%
4,856 departures · avg +1.2 min
-
Zürich Hardbrücke 83.8%
4,765 departures · avg +2.1 min
-
Olten 91.1%
3,980 departures · avg +1.4 min
-
Aarau 94.5%
3,629 departures · avg +1 min
-
St. Gallen 94.4%
3,586 departures · avg +1.2 min
-
Renens VD 89.4%
3,302 departures · avg +1.5 min
-
Lausanne 89.4%
3,257 departures · avg +1.5 min
-
Luzern 97.2%
3,192 departures · avg +0.9 min
-
Bern, Bahnhof 94.5%
19,716 departures · avg +1.1 min
-
Genève, gare Cornavin 79.3%
18,942 departures · avg +2.1 min
-
Genève, Bel-Air 81.4%
18,121 departures · avg +2 min
-
Zürich, Central 93.7%
15,333 departures · avg +1.1 min
-
Bern, Hirschengraben 88.6%
15,056 departures · avg +1.6 min
-
Basel, Schifflände 84.3%
15,001 departures · avg +1.8 min
-
Luzern, Kantonalbank 72.7%
14,982 departures · avg +2.7 min
-
Bern, Zytglogge 91.4%
14,430 departures · avg +1.4 min
-
Lausanne, Bel-Air 73.5%
14,332 departures · avg +2.5 min
-
Zürich, Bellevue 93.2%
13,921 departures · avg +1.2 min
-
Basel, Bahnhof SBB 88.4%
13,876 departures · avg +1.6 min
-
St. Gallen, Bahnhof 93.2%
13,463 departures · avg +1.1 min
-
Magliaso Paese 61.9%
797 departures · avg +3.4 min
-
Agno 63%
797 departures · avg +3.4 min
-
Magliaso 64.4%
797 departures · avg +3.3 min
-
Serocca 64.6%
797 departures · avg +3.2 min
-
Bioggio Molinazzo 67.9%
797 departures · avg +3 min
-
Caslano 70.3%
797 departures · avg +2.9 min
-
Gelterkinden 71.4%
948 departures · avg +2.2 min
-
Bioggio 72.4%
797 departures · avg +2.5 min
-
Oberentfelden Engelplatz 73.7%
1,024 departures · avg +1.6 min
-
Muhen Nord 73.9%
1,024 departures · avg +1.6 min
-
Zug Chollermüli 75%
940 departures · avg +2.3 min
-
Cham Alpenblick 75.1%
930 departures · avg +2.4 min
Largest delays
- Bus 8 Corminboeuf, anc. poste – Marly, piscine Marly, piscineand 2 more trips of this line +358 min
- ICE Basel SBBand 1 more trips of this line +180 min
- Bus 5 Thônex, Vallard – Genève-Aéroport, Terminal Genève-Aéroport, Terminaland 2 more trips of this line +179 min
- Bus 760 Cossonay-Ville, centre – La Sarraz, collège Guébettes Cossonay-Ville, centre +145 min
- Bus 750 Mont-la-Ville, Le Battoir +144 min
- Bus 24 Schaffhausen, Bahnhof +143 min
- Bus 82 Plan-les-Ouates, ZIPLO +137 min
- EV Basel, Dreispitz – Aesch BL, Dorf Aesch BL, Dorfand 6 more trips of this line +131 min
- Bus 705 Ecublens VD, EPFL Piccard +131 min
- Tram 1 Basel, Bahnhof SBB – Basel, Dreirosenbrücke Basel, Dreirosenbrücke +125 min
- Tram 14 Basel, Dreirosenbrücke – Pratteln, Schlossstrasse Pratteln, Schlossstrasse +123 min
- Tram 15 Genève, Nations +119 min
- ICE Basel Bad Bfand 2 more trips of this line +119 min
- Bus 48 Confignon, croisée – Plan-les-Ouates, ZIPLO Confignon, croiséeand 2 more trips of this line +113 min
- Bus 431 Sargans, Bahnhof +109 min
›Probably errors in the feed (9)
Delays of more than 6 hours. The real-time feed sent them, but they are probably not real.
- Bus 245 Fribourg/Freiburg, gare rout.and 1 more trips of this line +23159 min
- Bus 470 Fribourg/Freiburg, gare rout.and 1 more trips of this line +23131 min
- Bus 201 Epagny, Les Gottes – Marsens, village Marsens, village +23090 min
- Bus 64 Epalinges, Croisettes – Lausanne, Chalet-à-Gobet Croisettesand 19 more trips of this line +880 min
- Bus 8 Veyrier, douaneand 1 more trips of this line +809 min
- Bus 20 Veyrier, Tournettes – Bellevue GE, Valavran Bellevue GE, Valavranand 4 more trips of this line +754 min
- Bus 1 Gebenstorf, Reuss – Würenlos, Bettlen Baden, Bahnhof Ostand 3 more trips of this line +676 min
- Bus 3 Wettingen, Brunnenwiese +673 min
- Bus 23 Ebikon, Bahnhofand 6 more trips of this line +589 min