Punctuality of Swiss public transportThursday 25 June 2026
84.6% of 146,385 trips were on time. The share was lowest at 17:20: 68.7%. Of the busy lines, Bus 15 Lugano, Stazione/Via Basilea – Muzzano, Paese had the lowest share on time: 31.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.
84.6%
−0.6 ptsDay before: 85.2% · 146,385 trips with live data
Average delay
+1.5 min
Canceled trips
1,846
1.2% 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 24 June
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 89.7%
14,186 trips · avg +1.2 min
-
Tram 79%
11,159 trips · avg +2.1 min
-
Bus 84.6%
120,300 trips · avg +1.5 min
-
Metro 81.8%
296 trips · avg +3.2 min
-
Boat 57%
444 trips · avg +3.3 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 15 Lugano, Stazione/Via Basilea – Muzzano, PaeseLugano, Stazione/Via Basilea – Muzzano, Paese 31.1%
45 trips · avg +6.8 min
-
189 trips · avg +7.7 min
-
163 trips · avg +4.4 min
-
68 trips · avg +3.7 min
-
Bus 361 La Chaux-de-Fonds, gare – Le Locle, TechnicumLa Chaux-de-Fonds, gare – Le Locle, Technicum 35.4%
65 trips · avg +4 min
-
131 trips · avg +5.8 min
-
49 trips · avg +4 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 36.7%
264 trips · avg +7.1 min
Show 17 more
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 38.6%
189 trips · avg +5.7 min
-
102 trips · avg +4.7 min
-
102 trips · avg +4.1 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 42.2%
166 trips · avg +4.5 min
-
242 trips · avg +6.7 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 42.7%
213 trips · avg +3.9 min
-
166 trips · avg +4 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 43.7%
71 trips · avg +4.1 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 44.2%
215 trips · avg +3.8 min
-
282 trips · avg +3.7 min
-
238 trips · avg +4.7 min
-
147 trips · avg +4.4 min
-
406 trips · avg +6.5 min
-
150 trips · avg +4 min
-
61 trips · avg +3.6 min
-
65 trips · avg +3.7 min
-
Bus 751 Stettbach, Bahnhof – Zürich, Kirche FlunternStettbach, Bahnhof – Zürich, Kirche Fluntern 47.9%
96 trips · avg +3.3 min
Most punctual busy lines
-
285 trips · avg +0.8 min
-
306 trips · avg +0.9 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.5%
286 trips · avg +0.9 min
-
289 trips · avg +0.7 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 94.3%
265 trips · avg +1.1 min
-
311 trips · avg +0.9 min
-
285 trips · avg +0.9 min
-
265 trips · avg +1 min
Least punctual busy lines
-
65 trips · avg +3.7 min
-
100 trips · avg +3.4 min
-
58 trips · avg +11.5 min
-
128 trips · avg +2.7 min
-
77 trips · avg +3.8 min
-
78 trips · avg +3.8 min
-
108 trips · avg +2.6 min
-
43 trips · avg +2.7 min
Show 17 more
-
58 trips · avg +3.4 min
-
80 trips · avg +2.6 min
-
R15 Neuchâtel Place Pury Littorail – Boudry LittorailNeuchâtel Place Pury Littorail – Boudry Littorail 76.6%
111 trips · avg +2.3 min
-
77 trips · avg +2.2 min
-
73 trips · avg +4 min
-
48 trips · avg +1.6 min
-
78 trips · avg +2.3 min
-
83 trips · avg +1.9 min
-
42 trips · avg +1.9 min
-
79 trips · avg +1.7 min
-
71 trips · avg +1.6 min
-
117 trips · avg +1.6 min
-
45 trips · avg +1.4 min
-
72 trips · avg +1.6 min
-
40 trips · avg +2 min
-
74 trips · avg +1.5 min
-
82 trips · avg +1.4 min
Most punctual busy lines
-
142 trips · avg +0.1 min
-
115 trips · avg +0.3 min
-
79 trips · avg +0.3 min
-
150 trips · avg +0.5 min
-
91 trips · avg +0.3 min
-
84 trips · avg +0.8 min
-
76 trips · avg +0.7 min
-
72 trips · avg +0.4 min
Least punctual busy lines
-
242 trips · avg +6.7 min
-
406 trips · avg +6.5 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 60.1%
283 trips · avg +2.8 min
-
286 trips · avg +2.8 min
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 63.7%
303 trips · avg +2.8 min
-
293 trips · avg +1.9 min
-
224 trips · avg +2.7 min
-
295 trips · avg +2.1 min
Show 17 more
-
274 trips · avg +2.2 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 74%
285 trips · avg +2.4 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 75.1%
357 trips · avg +2.5 min
-
355 trips · avg +2.1 min
-
Tram 8 Bern Brünnen Westside, Bahnhof – Bern, SaaliBern Brünnen Westside, Bahnhof – Bern, Saali 75.6%
311 trips · avg +2 min
-
308 trips · avg +1.9 min
-
306 trips · avg +1.9 min
-
288 trips · avg +1.6 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 83.1%
350 trips · avg +1.8 min
-
303 trips · avg +1.6 min
-
287 trips · avg +1.5 min
-
287 trips · avg +1.6 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 85.1%
302 trips · avg +1.5 min
-
177 trips · avg +1.8 min
-
269 trips · avg +1.8 min
-
276 trips · avg +1.6 min
-
280 trips · avg +1.3 min
Most punctual busy lines
-
142 trips · avg +0.1 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 97.4%
155 trips · avg +1 min
-
285 trips · avg +0.8 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 96.1%
153 trips · avg +1.1 min
-
289 trips · avg +0.7 min
-
216 trips · avg +1 min
-
311 trips · avg +0.9 min
-
99 trips · avg +1.1 min
Least punctual busy lines
-
Bus 15 Lugano, Stazione/Via Basilea – Muzzano, PaeseLugano, Stazione/Via Basilea – Muzzano, Paese 31.1%
45 trips · avg +6.8 min
-
189 trips · avg +7.7 min
-
163 trips · avg +4.4 min
-
68 trips · avg +3.7 min
-
Bus 361 La Chaux-de-Fonds, gare – Le Locle, TechnicumLa Chaux-de-Fonds, gare – Le Locle, Technicum 35.4%
65 trips · avg +4 min
-
131 trips · avg +5.8 min
-
49 trips · avg +4 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 36.7%
264 trips · avg +7.1 min
Show 17 more
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 38.6%
189 trips · avg +5.7 min
-
102 trips · avg +4.7 min
-
102 trips · avg +4.1 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 42.7%
213 trips · avg +3.9 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 43.7%
71 trips · avg +4.1 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 44.2%
215 trips · avg +3.8 min
-
282 trips · avg +3.7 min
-
238 trips · avg +4.7 min
-
147 trips · avg +4.4 min
-
150 trips · avg +4 min
-
61 trips · avg +3.6 min
-
Bus 751 Stettbach, Bahnhof – Zürich, Kirche FlunternStettbach, Bahnhof – Zürich, Kirche Fluntern 47.9%
96 trips · avg +3.3 min
-
219 trips · avg +4.3 min
-
225 trips · avg +5.9 min
-
169 trips · avg +4.2 min
-
40 trips · avg +3.5 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 50.9%
110 trips · avg +4 min
Most punctual busy lines
-
240 trips · avg +0.7 min
-
246 trips · avg +0.7 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.5%
286 trips · avg +0.9 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 94.3%
265 trips · avg +1.1 min
-
Bus 768 Zürich Oerlikon, Bahnhof – Zürich Flughafen, BahnhofZürich Oerlikon, Bahnhof – Zürich Flughafen, Bahnhof 94.3%
244 trips · avg +1.4 min
-
Bus 17 Villars-Ste-Croix, Croix-Péage – Lausanne, VigieVillars-Ste-Croix, Croix-Péage – Lausanne, Vigie 93.2%
237 trips · avg +0.9 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 93%
243 trips · avg +1.1 min
-
238 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) 42.2%
166 trips · avg +4.5 min
-
166 trips · avg +4 min
-
56 trips · avg +0.3 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 57%
444 trips · avg +3.3 min
-
VBL 62.8%
3,893 trips · avg +2.8 min
-
Matterhorn Gotthard Bahn 64.7%
309 trips · avg +2.8 min
-
Lugano-Ponte Tresa 66.4%
128 trips · avg +2.7 min
-
Automobil Rottal 66.6%
461 trips · avg +2.4 min
-
TPG 66.7%
9,083 trips · avg +3.3 min
-
Transports Publics Neuchâtelois 70.7%
2,999 trips · avg +2.4 min
-
BVB 71%
4,793 trips · avg +2.5 min
Show 17 more
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 71.3%
108 trips · avg +2.6 min
-
Auto AG Rothenburg 72.1%
743 trips · avg +2.2 min
-
Autobetrieb Sernftal 74.1%
135 trips · avg +1.7 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 76%
875 trips · avg +2.1 min
-
TPL 76.6%
1,595 trips · avg +1.9 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 77.9%
303 trips · avg +1.8 min
-
Montreux-Oberland Bernois 78%
123 trips · avg +2.3 min
-
Bus und Service 78.7%
1,581 trips · avg +1.9 min
-
tl 80%
6,711 trips · avg +1.9 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 80.2%
1,186 trips · avg +1.6 min
-
Verkehrsbetriebe Biel 80.4%
1,339 trips · avg +1.8 min
-
Busbetrieb Solothurn und Umgebung 80.5%
778 trips · avg +1.7 min
-
Regiobus Gossau SG 80.5%
672 trips · avg +2 min
-
VBZ 81.5%
16,489 trips · avg +1.8 min
-
Wengernalpbahn 82.4%
119 trips · avg +2 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 82.6%
1,385 trips · avg +1.6 min
-
Busbetrieb Aarau 83.3%
935 trips · avg +1.6 min
Most punctual operators
-
Busbetrieb Grenchen und Umgebung 99.2%
384 trips · avg +0.6 min
-
Lausanne-Echallens-Bercher 100%
142 trips · avg +0.1 min
-
Sihltal-Zürich-Uetliberg-Bahn 99.2%
264 trips · avg +0.4 min
-
Aare Seeland mobil 98.5%
338 trips · avg +0.3 min
-
THURBO 96.7%
1,112 trips · avg +0.5 min
-
Zentralbahn 97%
368 trips · avg +0.6 min
-
Auto AG Uri 96.2%
364 trips · avg +0.7 min
-
Autolinee Regionali Luganesi 96.8%
216 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 84%
1,536 departures · avg +2.1 min
-
Bern 94.7%
1,067 departures · avg +1.1 min
-
Zürich Oerlikon 83.5%
907 departures · avg +1.9 min
-
Zürich Stadelhofen 76.3%
692 departures · avg +2.6 min
-
Winterthur 84.8%
684 departures · avg +2.2 min
-
Zürich Hardbrücke 69.9%
664 departures · avg +3 min
-
Olten 83.3%
564 departures · avg +1.9 min
-
St. Gallen 88.8%
534 departures · avg +1.7 min
-
Lausanne 89.8%
521 departures · avg +1.6 min
-
Aarau 87.7%
519 departures · avg +1.4 min
-
Renens VD 87.6%
492 departures · avg +1.6 min
-
Worblaufen 94.9%
475 departures · avg +1.1 min
-
Bern, Bahnhof 92.7%
2,965 departures · avg +1.2 min
-
Genève, gare Cornavin 58.6%
2,785 departures · avg +4.1 min
-
Genève, Bel-Air 60.3%
2,347 departures · avg +4.3 min
-
Basel, Schifflände 79.6%
2,265 departures · avg +2.1 min
-
2,249 departures · avg +1.7 min
-
Luzern, Kantonalbank 69.3%
2,233 departures · avg +2.6 min
-
Zürich, Central 89%
2,208 departures · avg +1.3 min
-
Bern, Zytglogge 89.3%
2,175 departures · avg +1.5 min
-
Basel, Bahnhof SBB 82.2%
2,118 departures · avg +2 min
-
St. Gallen, Bahnhof 87.1%
2,061 departures · avg +1.5 min
-
Zürich, Bellevue 89.8%
2,056 departures · avg +1.4 min
-
Luzern, Bahnhof 79.5%
2,009 departures · avg +1.9 min
-
Magliaso Paese 48.4%
128 departures · avg +4 min
-
Magliaso 49.2%
128 departures · avg +4 min
-
Agno 49.2%
128 departures · avg +4.1 min
-
Serocca 52.3%
128 departures · avg +3.7 min
-
Sion 53.3%
152 departures · avg +3.6 min
-
Bioggio Molinazzo 54.7%
128 departures · avg +3.5 min
-
Lustmühle 59.3%
108 departures · avg +2.8 min
-
Gelterkinden 59.8%
132 departures · avg +2.7 min
-
Caslano 60.2%
128 departures · avg +3.4 min
-
Bioggio 60.2%
128 departures · avg +3.1 min
-
Martigny 60.3%
214 departures · avg +3.4 min
-
Givrins 62%
108 departures · avg +2.7 min
Largest delays
- Tram 17 Lancy-Pont-Rouge, gareand 5 more trips of this line +135 min
- Tram 15 Plan-les-Ouates, ZIPLO – Genève, Nations Genève, gare Cornavinand 1 more trips of this line +129 min
- NJ Zürich HB +106 min
- Bus 381 Les Haudères, centre – Sion, poste/gare Sion, poste/gareand 2 more trips of this line +98 min
- EC Bregenz – Zürich HB Zürich HB +80 min
- Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, Bahnhof Zürich, Triemli +75 min
- Bus 19 Onex, cité – Vernier, village Vernier, village +71 min
- Bus 1 Ebikon, Fildern – Obernau, Dorf Ebikon, Fildern +71 min
- Tram 12 Lancy-Bachet, gare – Thônex, Moillesulaz Thônex, Moillesulazand 4 more trips of this line +69 min
- TGV Zürich HB +66 min
- Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, Albisgütli Zürich, Bahnhofstrasse/HBand 1 more trips of this line +61 min
- Bus 847 Diessenhofen, Bahnhof – Marthalen, Bahnhof Diessenhofen, Bahnhof +61 min
- Bus 34 Choulex, village – Chêne-Bougeries, Conches place Chêne-Bougeries, Conches place +59 min
- RE3 Erzingen (Baden) +58 min
- Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire Vernier, Lignon Tours +58 min