Punctuality of Swiss public transportOctober 2026So far: 24 of 31 days
88.2% of 3,336,014 trips were on time. The best day was Saturday 24 October with 95.5%, the worst Wednesday 21 October with 84.6%. Of the busy lines, Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gare had the lowest share on time: 16.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.
88.2%
+1.4 ptsSame days of the month before: 86.8% · 3,336,014 trips with live data
Still an estimate from the real-time feed: 1 of 24 days. The final numbers of each day come two days later from the actual times of opentransportdata.swiss (Ist-Daten).
Average delay
+1.3 min
Canceled trips
14,902
0.4% of the trips
Day by day
The share on time of each day. A day opens its page, a week number its week.
- Best day
- Sat 24 Oct · 95.5%
- Worst day
- Wed 21 Oct · 84.6%
By mode
-
Train 94.4%
329,074 trips · avg +0.8 min
-
Tram 84.3%
263,734 trips · avg +1.6 min
-
Bus 88%
2,727,300 trips · avg +1.3 min
-
Metro 85.2%
7,451 trips · avg +1.7 min
-
Boat 63.7%
8,455 trips · avg +3 min
Month by month
The share on time of each month. A point opens its month.
- Dec 2025
- Jan 2026
- Feb 2026
- Mar 2026
- Apr 2026
- May 2026
- Jun 2026
- Jul 2026
- Aug 2026
- Sept 2026
- Oct 2026
- 95%
- Average: 88.3%
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 16.1%
2,232 trips · avg +5.7 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 37%
4,589 trips · avg +4.2 min
-
2,029 trips · avg +4.5 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 48.8%
3,254 trips · avg +4 min
-
1,722 trips · avg +3.8 min
-
2,983 trips · avg +3.7 min
-
3,992 trips · avg +3.4 min
-
2,037 trips · avg +3.8 min
Show 17 more
-
5,402 trips · avg +3.6 min
-
3,882 trips · avg +3 min
-
3,779 trips · avg +3.2 min
-
1,453 trips · avg +3.3 min
-
3,520 trips · avg +3.2 min
-
3,647 trips · avg +2.7 min
-
1,272 trips · avg +3.2 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 64.1%
3,519 trips · avg +2.9 min
-
3,274 trips · avg +3 min
-
Bus 108 Neuchâtel, Temple Valangines – Neuchâtel, Place PuryNeuchâtel, Temple Valangines – Neuchâtel, Place Pury 65%
4,290 trips · avg +2.5 min
-
6,418 trips · avg +2.8 min
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 66.1%
1,623 trips · avg +2.8 min
-
1,585 trips · avg +2.6 min
-
3,806 trips · avg +2.5 min
-
5,119 trips · avg +2.6 min
-
2,940 trips · avg +2.6 min
-
1,880 trips · avg +2.7 min
Most punctual busy lines
-
5,121 trips · avg +0.3 min
-
7,045 trips · avg +0.7 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 97.2%
6,311 trips · avg +0.5 min
-
5,138 trips · avg +0.9 min
-
6,330 trips · avg +0.6 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 95.8%
5,159 trips · avg +0.9 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.7%
6,300 trips · avg +0.8 min
-
5,472 trips · avg +1.2 min
Least punctual busy lines
-
1,512 trips · avg +5.9 min
-
1,262 trips · avg +3.6 min
-
1,509 trips · avg +1.6 min
-
1,601 trips · avg +1.3 min
-
2,676 trips · avg +1.1 min
-
1,801 trips · avg +1.2 min
-
985 trips · avg +1.5 min
-
1,549 trips · avg +1.4 min
Show 17 more
-
1,005 trips · avg +1 min
-
1,879 trips · avg +1.2 min
-
2,802 trips · avg +1 min
-
986 trips · avg +1 min
-
1,760 trips · avg +1 min
-
2,008 trips · avg +1.1 min
-
1,003 trips · avg +0.7 min
-
1,698 trips · avg +1 min
-
1,343 trips · avg +0.9 min
-
1,681 trips · avg +0.8 min
-
1,982 trips · avg +0.8 min
-
2,068 trips · avg +1 min
-
1,702 trips · avg +1.1 min
-
1,901 trips · avg +0.7 min
-
1,414 trips · avg +0.8 min
-
997 trips · avg +0.8 min
-
1,956 trips · avg +0.8 min
Most punctual busy lines
-
1,392 trips · avg +0 min
-
1,612 trips · avg +0.2 min
-
1,706 trips · avg +0.5 min
-
1,775 trips · avg +0.4 min
-
1,852 trips · avg +0.3 min
-
1,311 trips · avg +0.3 min
-
1,171 trips · avg +0.1 min
-
1,152 trips · avg +0.3 min
Least punctual busy lines
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 66.1%
1,623 trips · avg +2.8 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 69.9%
6,498 trips · avg +2.5 min
-
6,511 trips · avg +1.8 min
-
6,566 trips · avg +2.2 min
-
6,279 trips · avg +2 min
-
6,836 trips · avg +2 min
-
2,364 trips · avg +1.5 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 82.1%
3,776 trips · avg +2 min
Show 17 more
-
6,291 trips · avg +1.8 min
-
6,579 trips · avg +1.5 min
-
1,617 trips · avg +1.6 min
-
6,628 trips · avg +1.8 min
-
7,778 trips · avg +1.7 min
-
6,770 trips · avg +1.5 min
-
6,372 trips · avg +1.7 min
-
1,684 trips · avg +1.5 min
-
6,469 trips · avg +1.8 min
-
Tram 2 Binningen, Kronenplatz – Basel, Badischer BahnhofBinningen, Kronenplatz – Basel, Badischer Bahnhof 89.7%
1,392 trips · avg +1.5 min
-
6,722 trips · avg +1.3 min
-
Tram 7 Stettbach, Bahnhof – Zürich, WollishoferplatzStettbach, Bahnhof – Zürich, Wollishoferplatz 90.4%
1,180 trips · avg +1.2 min
-
6,522 trips · avg +1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 91.1%
6,856 trips · avg +1.2 min
-
Tram 10 Zürich Flughafen, Fracht – Zürich, Bahnhofplatz/HBZürich Flughafen, Fracht – Zürich, Bahnhofplatz/HB 91.8%
1,690 trips · avg +1.1 min
-
3,757 trips · avg +1.3 min
-
6,495 trips · avg +0.9 min
Most punctual busy lines
-
2,150 trips · avg +0.2 min
-
5,138 trips · avg +0.9 min
-
Tram 11 Zürich, Central – Zürich Tiefenbrunnen, BahnhofZürich, Central – Zürich Tiefenbrunnen, Bahnhof 95.2%
1,609 trips · avg +1 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 94.9%
3,678 trips · avg +1 min
-
6,495 trips · avg +0.9 min
-
3,757 trips · avg +1.3 min
-
Tram 10 Zürich Flughafen, Fracht – Zürich, Bahnhofplatz/HBZürich Flughafen, Fracht – Zürich, Bahnhofplatz/HB 91.8%
1,690 trips · avg +1.1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 91.1%
6,856 trips · avg +1.2 min
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 16.1%
2,232 trips · avg +5.7 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 37%
4,589 trips · avg +4.2 min
-
2,029 trips · avg +4.5 min
-
1,722 trips · avg +3.8 min
-
3,992 trips · avg +3.4 min
-
2,037 trips · avg +3.8 min
-
5,402 trips · avg +3.6 min
-
3,882 trips · avg +3 min
Show 17 more
-
3,779 trips · avg +3.2 min
-
1,453 trips · avg +3.3 min
-
3,520 trips · avg +3.2 min
-
3,647 trips · avg +2.7 min
-
1,272 trips · avg +3.2 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 64.1%
3,519 trips · avg +2.9 min
-
3,274 trips · avg +3 min
-
Bus 108 Neuchâtel, Temple Valangines – Neuchâtel, Place PuryNeuchâtel, Temple Valangines – Neuchâtel, Place Pury 65%
4,290 trips · avg +2.5 min
-
6,418 trips · avg +2.8 min
-
1,585 trips · avg +2.6 min
-
3,806 trips · avg +2.5 min
-
5,119 trips · avg +2.6 min
-
2,940 trips · avg +2.6 min
-
1,880 trips · avg +2.7 min
-
5,950 trips · avg +3.2 min
-
Bus 16 Lausanne, Grand Vennes – Lausanne, Provence nordLausanne, Grand Vennes – Lausanne, Provence nord 67.3%
3,525 trips · avg +2.7 min
-
Bus 61 Wallisellen, Glatt (Bus) – Zürich, MühlackerWallisellen, Glatt (Bus) – Zürich, Mühlacker 67.4%
3,614 trips · avg +2.6 min
Most punctual busy lines
-
5,121 trips · avg +0.3 min
-
4,313 trips · avg +0.7 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 97.2%
6,311 trips · avg +0.5 min
-
4,333 trips · avg +0.7 min
-
Bus 3 Schaffhausen, Sommerwies – Schaffhausen, KrummackerSchaffhausen, Sommerwies – Schaffhausen, Krummacker 96.5%
4,379 trips · avg +0.8 min
-
6,330 trips · avg +0.6 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 95.8%
5,159 trips · avg +0.9 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.7%
6,300 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) 48.8%
3,254 trips · avg +4 min
-
2,983 trips · avg +3.7 min
-
1,114 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) 99.6%
1,104 trips · avg +0.5 min
Least punctual operators
-
Mouettes genevoises 63.7%
8,455 trips · avg +3 min
-
VBL 70.4%
87,976 trips · avg +2.5 min
-
TPL 71.6%
35,330 trips · avg +2.7 min
-
TPG 74.9%
205,588 trips · avg +2.2 min
-
Transports Publics Neuchâtelois 75.3%
53,224 trips · avg +2 min
-
BVB 77%
101,124 trips · avg +2.1 min
-
Autobetrieb Sernftal 77%
2,770 trips · avg +2.1 min
-
Automobil Rottal 78.7%
10,035 trips · avg +2 min
Show 17 more
-
Regionalps 79.2%
4,740 trips · avg +2.4 min
-
Auto AG Rothenburg 79.2%
15,403 trips · avg +1.8 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 80.4%
18,238 trips · avg +1.9 min
-
tl 82.2%
156,339 trips · avg +1.8 min
-
Bus und Service 83.2%
34,481 trips · avg +1.6 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 83.6%
6,499 trips · avg +1.6 min
-
Busbetrieb Aarau 83.8%
21,650 trips · avg +1.5 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 85.1%
29,281 trips · avg +1.5 min
-
Autolinee Regionali Luganesi 85.6%
4,855 trips · avg +1.4 min
-
Busbetrieb Solothurn und Umgebung 86.6%
16,438 trips · avg +1.3 min
-
VBZ 86.7%
376,663 trips · avg +1.5 min
-
Bernmobil 87%
123,635 trips · avg +1.5 min
-
Lugano-Ponte Tresa 87.6%
2,676 trips · avg +1.1 min
-
Stadtbus Frauenfeld 87.6%
12,071 trips · avg +1.7 min
-
Verkehrsbetriebe der Stadt St.Gallen 87.9%
38,540 trips · avg +1.3 min
-
Service d'automobiles TRN 88.6%
4,821 trips · avg +1.4 min
-
Bus Sierrois 88.7%
6,051 trips · avg +1.2 min
Most punctual operators
-
Sihltal-Zürich-Uetliberg-Bahn 99.3%
6,062 trips · avg +0.4 min
-
Aare Seeland mobil 98.1%
7,631 trips · avg +0.5 min
-
Regionalverkehr Bern-Solothurn 97.9%
13,365 trips · avg +0.4 min
-
THURBO 97.7%
26,541 trips · avg +0.4 min
-
Schweizerische Südostbahn 97.7%
12,086 trips · avg +0.5 min
-
Wengernalpbahn 98%
3,038 trips · avg +0.4 min
-
Zentralbahn 97.5%
8,488 trips · avg +0.5 min
-
Verkehrsbetrieb der Landschaft Davos 97.3%
8,645 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 93.7%
36,211 departures · avg +1.2 min
-
Bern 95.8%
23,831 departures · avg +1 min
-
Zürich Oerlikon 93.8%
21,079 departures · avg +1.2 min
-
Winterthur 95.2%
16,335 departures · avg +1.1 min
-
Zürich Stadelhofen 91.7%
16,290 departures · avg +1.3 min
-
Zürich Hardbrücke 84.9%
15,567 departures · avg +2 min
-
Olten 91.1%
14,112 departures · avg +1.4 min
-
Lausanne 87.9%
12,751 departures · avg +1.7 min
-
St. Gallen 94.5%
12,418 departures · avg +1.1 min
-
Aarau 93.4%
12,129 departures · avg +1.1 min
-
Renens VD 86.9%
11,722 departures · avg +1.7 min
-
Luzern 96.4%
11,083 departures · avg +0.9 min
-
Bern, Bahnhof 93.9%
66,395 departures · avg +1.2 min
-
Genève, gare Cornavin 78.2%
65,127 departures · avg +1.9 min
-
Genève, Bel-Air 78.2%
63,318 departures · avg +2 min
-
Luzern, Kantonalbank 76.8%
51,368 departures · avg +2.2 min
-
Zürich, Central 92.7%
51,135 departures · avg +1.2 min
-
50,779 departures · avg +1.9 min
-
Bern, Zytglogge 91.6%
47,702 departures · avg +1.4 min
-
Lausanne, Bel-Air 66.4%
47,639 departures · avg +2.9 min
-
Bern, Hirschengraben 88.8%
46,959 departures · avg +1.6 min
-
Basel, Bankverein 85.8%
46,343 departures · avg +1.7 min
-
St. Gallen, Bahnhof 90.4%
46,326 departures · avg +1.3 min
-
Luzern, Bahnhof 85.6%
46,167 departures · avg +1.6 min
-
Magliaso Paese 74.2%
2,676 departures · avg +2.4 min
-
Oberentfelden Engelplatz 74.6%
3,522 departures · avg +1.6 min
-
Muhen Nord 74.7%
3,522 departures · avg +1.6 min
-
Zug Chollermüli 77.1%
3,246 departures · avg +2.3 min
-
S. Antonino 77.9%
3,827 departures · avg +2.3 min
-
Richterswil 78.1%
2,501 departures · avg +2.2 min
-
Zug Schutzengel 78.2%
3,144 departures · avg +2.2 min
-
Chiasso 78.9%
4,213 departures · avg +2.4 min
-
Agno 79%
2,676 departures · avg +2.2 min
-
Cham Alpenblick 79%
3,237 departures · avg +2.1 min
-
Magliaso 79.4%
2,676 departures · avg +2.2 min
-
Bioggio Molinazzo 79.7%
2,676 departures · avg +2 min
Largest delays
- Bus 893 Wald ZH, Bahnhof – Wald ZH, Bahnhof Wald ZH, Bahnhofand 5 more trips of this line +292 min
- Bus 892 Wald ZH, Bahnhof – Wald ZH, Rehazentrum Wald ZH, Rehazentrumand 4 more trips of this line +287 min
- Bus 8 Corminboeuf, anc. poste – Marly, piscine Marly, piscine +285 min
- Tram 18 Esslingen – Zürich Stadelhofen, Bahnhof Zürich Stadelhofen, Bahnhofand 5 more trips of this line +282 min
- Bus 591 Goppenstein, Bahnhof – Wiler (Lötschen), Gschteinät Wiler (Lötschen), Talstationand 2 more trips of this line +275 min
- Bus 774 Wallisellen, Schulhaus Bürgli +270 min
- Bus 52 Genthod, Les Hautsand 3 more trips of this line +261 min
- Bus 39 Vésenaz, Pointe à la Biseand 2 more trips of this line +251 min
- SN Grandsonand 1 more trips of this line +249 min
- Bus 885 Rüti ZH, Bahnhofand 9 more trips of this line +242 min
- Bus 521 Thusis, Bahnhof – Obermutten, Dorf Obermutten, Dorfand 1 more trips of this line +227 min
- NJ Zürich HBand 3 more trips of this line +217 min
- Bus 322 Hinterfultigen, Sonnhalde +215 min
- Bus 2 Lausanne, Désert – Lausanne, Epinettes Désertand 4 more trips of this line +214 min
- Bus 3 Baden, Bahnhof Westand 2 more trips of this line +211 min
›Probably errors in the feed (8)
Delays of more than 6 hours. The real-time feed sent them, but they are probably not real.
- Bus 46 Epalinges, Bois-Murat – Epalinges, Ballègue Bois Muratand 11 more trips of this line +1153 min
- Bus 45 Chalet-à-Gobetand 5 more trips of this line +1143 min
- Bus 49 Grands Champs +699 min
- Bus 9 Lutry, Cornicheand 6 more trips of this line +573 min
- Bus 1 Biel/Bienne, Löhre/Mauchamp – Biel/Bienne, Stadien/Stades Biel/Bienne, Löhre/Mauchampand 2 more trips of this line +566 min
- Bus 12 Luzern, Gasshof – Luzern, Bahnhof Luzern, Bahnhofand 7 more trips of this line +552 min
- Bus 10 Genève, Rive – Genève-Aéroport, Terminal Genève, Riveand 1 more trips of this line +419 min
- Bus 48 Pully, Daillettes – Pully, gare Pully, gareand 19 more trips of this line +412 min