Punctuality of Swiss public transportSunday 28 June 2026
90.3% of 97,237 trips were on time. The share was lowest at 18:00: 83.5%. Of the busy lines, M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) had the lowest share on time: 12.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.3%
+2.5 ptsDay before: 87.8% · 97,237 trips with live data
Average delay
+1.1 min
Canceled trips
763
0.8% of the trips
The day in numbers
From the timetable of the day, and its trips with live data.
Against a week before
−0.1 pts
Most punctual line
100%
Least punctual line
12.7%
Largest train delay
+121 min
Through the day
The share of the trips on their way that are less than 3 minutes late, every 10 minutes.
- ≥ 95%
- Dashed: Saturday 27 June
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 93.8%
12,712 trips · avg +0.8 min
-
Tram 83.5%
8,415 trips · avg +1.7 min
-
Bus 90.7%
75,575 trips · avg +1 min
-
Metro 98.2%
221 trips · avg +0.8 min
-
Boat 36.9%
314 trips · avg +4.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
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 12.7%
134 trips · avg +6.6 min
-
121 trips · avg +8.1 min
-
70 trips · avg +5.2 min
-
134 trips · avg +4.7 min
-
79 trips · avg +5.4 min
-
41 trips · avg +3.5 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 44.8%
116 trips · avg +4.6 min
-
145 trips · avg +4.2 min
Show 17 more
-
41 trips · avg +4.5 min
-
148 trips · avg +3.2 min
-
224 trips · avg +3.8 min
-
42 trips · avg +3.4 min
-
Bus 24 Lausanne, Tour Haldimand-Lac – Lausanne, BourdonnetteLausanne, Tour Haldimand-Lac – Lausanne, Bourdonnette 54%
124 trips · avg +3.8 min
-
175 trips · avg +2.9 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 56.1%
114 trips · avg +2.8 min
-
89 trips · avg +2.5 min
-
58 trips · avg +2.3 min
-
Bus 353 La Chaux-de-Fonds, gare – La Chaux-de-Fonds, FouletsLa Chaux-de-Fonds, gare – La Chaux-de-Fonds, Foulets 62.3%
69 trips · avg +2 min
-
208 trips · avg +2.7 min
-
118 trips · avg +2.7 min
-
Bus 3 Biel/Bienne, Mösliacker/Pt-Mar – Biel/Bienne, Vorhölzli/Bois-DvBiel/Bienne, Mösliacker/Pt-Mar – Biel/Bienne, Vorhölzli/Bois-Dv 62.8%
113 trips · avg +2.8 min
-
Bus 31 Zürich, Hermetschloo – Zürich, KienastenwiesZürich, Hermetschloo – Zürich, Kienastenwies 63.9%
227 trips · avg +2.9 min
-
188 trips · avg +3.1 min
-
79 trips · avg +2.4 min
-
Bus 22 Carouge GE, Rondeau – Genève, Jardin BotaniqueCarouge GE, Rondeau – Genève, Jardin Botanique 64.6%
82 trips · avg +2.3 min
Most punctual busy lines
-
219 trips · avg +0.6 min
-
154 trips · avg +0.4 min
-
221 trips · avg +0.8 min
-
197 trips · avg +0.4 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 97.4%
155 trips · avg +0.6 min
-
201 trips · avg +0.7 min
-
200 trips · avg +0.8 min
-
199 trips · avg +0.6 min
Least punctual busy lines
-
79 trips · avg +5.4 min
-
57 trips · avg +5.1 min
-
58 trips · avg +3.8 min
-
108 trips · avg +2.5 min
-
42 trips · avg +1.6 min
-
74 trips · avg +2.2 min
-
47 trips · avg +1.4 min
-
87 trips · avg +1.4 min
Show 17 more
-
40 trips · avg +1 min
-
73 trips · avg +1.7 min
-
66 trips · avg +1.1 min
-
52 trips · avg +1.5 min
-
79 trips · avg +1.5 min
-
44 trips · avg +0.8 min
-
54 trips · avg +1.1 min
-
117 trips · avg +1.3 min
-
69 trips · avg +0.9 min
-
40 trips · avg +1 min
-
41 trips · avg +0.8 min
-
119 trips · avg +0.9 min
-
88 trips · avg +0.9 min
-
78 trips · avg +1 min
-
74 trips · avg +0.6 min
-
91 trips · avg +0.7 min
-
53 trips · avg +0.6 min
Most punctual busy lines
-
219 trips · avg +0.6 min
-
119 trips · avg +0.2 min
-
113 trips · avg +0.1 min
-
111 trips · avg +0.3 min
-
95 trips · avg +0.2 min
-
93 trips · avg +0.1 min
-
82 trips · avg +0.3 min
-
81 trips · avg +0.3 min
Least punctual busy lines
-
208 trips · avg +2.7 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 68.3%
199 trips · avg +2.5 min
-
220 trips · avg +2.3 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 72.9%
225 trips · avg +2.1 min
-
190 trips · avg +2.1 min
-
193 trips · avg +1.9 min
-
227 trips · avg +1.9 min
-
262 trips · avg +1.7 min
Show 13 more
-
206 trips · avg +1.7 min
-
217 trips · avg +1.2 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 85.1%
215 trips · avg +1.4 min
-
193 trips · avg +1.7 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 87.4%
254 trips · avg +1.7 min
-
213 trips · avg +1.5 min
-
193 trips · avg +1.7 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 89.2%
195 trips · avg +1.3 min
-
77 trips · avg +1.7 min
-
212 trips · avg +1.4 min
-
217 trips · avg +0.8 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 97.4%
155 trips · avg +0.6 min
-
122 trips · avg +0.5 min
Most punctual busy lines
-
122 trips · avg +0.5 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 97.4%
155 trips · avg +0.6 min
-
217 trips · avg +0.8 min
-
212 trips · avg +1.4 min
-
77 trips · avg +1.7 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 89.2%
195 trips · avg +1.3 min
-
193 trips · avg +1.7 min
-
213 trips · avg +1.5 min
Least punctual busy lines
-
121 trips · avg +8.1 min
-
70 trips · avg +5.2 min
-
41 trips · avg +3.5 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 44.8%
116 trips · avg +4.6 min
-
145 trips · avg +4.2 min
-
41 trips · avg +4.5 min
-
148 trips · avg +3.2 min
-
224 trips · avg +3.8 min
Show 17 more
-
42 trips · avg +3.4 min
-
Bus 24 Lausanne, Tour Haldimand-Lac – Lausanne, BourdonnetteLausanne, Tour Haldimand-Lac – Lausanne, Bourdonnette 54%
124 trips · avg +3.8 min
-
175 trips · avg +2.9 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 56.1%
114 trips · avg +2.8 min
-
89 trips · avg +2.5 min
-
58 trips · avg +2.3 min
-
Bus 353 La Chaux-de-Fonds, gare – La Chaux-de-Fonds, FouletsLa Chaux-de-Fonds, gare – La Chaux-de-Fonds, Foulets 62.3%
69 trips · avg +2 min
-
118 trips · avg +2.7 min
-
Bus 3 Biel/Bienne, Mösliacker/Pt-Mar – Biel/Bienne, Vorhölzli/Bois-DvBiel/Bienne, Mösliacker/Pt-Mar – Biel/Bienne, Vorhölzli/Bois-Dv 62.8%
113 trips · avg +2.8 min
-
Bus 31 Zürich, Hermetschloo – Zürich, KienastenwiesZürich, Hermetschloo – Zürich, Kienastenwies 63.9%
227 trips · avg +2.9 min
-
188 trips · avg +3.1 min
-
79 trips · avg +2.4 min
-
Bus 22 Carouge GE, Rondeau – Genève, Jardin BotaniqueCarouge GE, Rondeau – Genève, Jardin Botanique 64.6%
82 trips · avg +2.3 min
-
Bus 1 Genève, Jardin Botanique – Thônex, Hôpital Trois-ChêneGenève, Jardin Botanique – Thônex, Hôpital Trois-Chêne 65.5%
116 trips · avg +2.2 min
-
65 trips · avg +2.8 min
-
Bus 38 Zürich, Waidspital – Zürich, Schützenhaus HönggZürich, Waidspital – Zürich, Schützenhaus Höngg 66.7%
48 trips · avg +2.6 min
-
52 trips · avg +3.7 min
Most punctual busy lines
-
149 trips · avg +0.1 min
-
154 trips · avg +0.4 min
-
Bus 5 Winterthur, Dättnau – Winterthur, TechnoramaWinterthur, Dättnau – Winterthur, Technorama 99.3%
150 trips · avg +0.5 min
-
149 trips · avg +0.2 min
-
Bus 45 Epalinges, Bois-Murat – Lausanne, Chalet-à-GobetEpalinges, Bois-Murat – Lausanne, Chalet-à-Gobet 98%
153 trips · avg +0.5 min
-
147 trips · avg +0.7 min
-
197 trips · avg +0.4 min
-
201 trips · avg +0.7 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) 12.7%
134 trips · avg +6.6 min
-
134 trips · avg +4.7 min
-
46 trips · avg +0.8 min
Least punctual operators
-
Mouettes genevoises 36.9%
314 trips · avg +4.9 min
-
Berner Oberland-Bahnen 55.5%
137 trips · avg +4.7 min
-
TPG 72.3%
5,515 trips · avg +2.4 min
-
Matterhorn Gotthard Bahn 75.6%
307 trips · avg +2 min
-
Regiobus Gossau SG 76.6%
265 trips · avg +1.9 min
-
Autobetrieb Sernftal 78.7%
108 trips · avg +1.5 min
-
Transports Publics Neuchâtelois 79.6%
1,072 trips · avg +1.7 min
-
BVB 81%
3,341 trips · avg +1.7 min
Show 17 more
-
VBL 82.1%
2,681 trips · avg +1.7 min
-
Automobiles MBC 82.1%
648 trips · avg +1.7 min
-
TPL 82.1%
1,186 trips · avg +1.4 min
-
Verkehrsbetriebe Biel 82.7%
1,119 trips · avg +1.5 min
-
tl 84.8%
5,215 trips · avg +1.5 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 85.3%
388 trips · avg +1.7 min
-
Bernmobil 86.8%
3,127 trips · avg +1.5 min
-
RhB 86.8%
524 trips · avg +1.7 min
-
Stadtbus Frauenfeld 87.6%
194 trips · avg +1.8 min
-
VBZ 87.9%
11,114 trips · avg +1.4 min
-
Autolinee Bleniesi 88.7%
106 trips · avg +1.1 min
-
Regionalps 88.8%
152 trips · avg +1.3 min
-
Automobil Rottal 89.1%
293 trips · avg +1.1 min
-
Bus und Service 89.3%
1,018 trips · avg +1 min
-
Bus Nyon-Prangins 89.3%
103 trips · avg +0.9 min
-
Transports Publics du Chablais 90.7%
734 trips · avg +0.9 min
-
Wengernalpbahn 91%
155 trips · avg +1 min
Most punctual operators
-
Sihltal-Zürich-Uetliberg-Bahn 100%
236 trips · avg +0.2 min
-
Transports Vallée de Joux-Yverdon-Ste-Croix 99.2%
711 trips · avg +0.4 min
-
Regionalverkehr Bern-Solothurn 99.1%
424 trips · avg +0.2 min
-
Automobildienst SZU 98.3%
1,327 trips · avg +0.3 min
-
Autolinee Regionali Luganesi 100%
136 trips · avg +0.1 min
-
Schweizerische Südostbahn 98.6%
490 trips · avg +0.4 min
-
Autobus AG Liestal 98.3%
658 trips · avg +0.5 min
-
Aare Seeland mobil 99.2%
238 trips · avg +0.2 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 93%
1,503 departures · avg +1.3 min
-
Bern 96.6%
918 departures · avg +0.9 min
-
Zürich Oerlikon 94%
862 departures · avg +1.1 min
-
Zürich Stadelhofen 94.8%
714 departures · avg +1.1 min
-
Winterthur 94.4%
708 departures · avg +1.1 min
-
Zürich Hardbrücke 91.2%
694 departures · avg +1.9 min
-
Olten 91%
577 departures · avg +1.5 min
-
Lausanne 91.9%
528 departures · avg +1.4 min
-
Aarau 92.7%
481 departures · avg +1.1 min
-
St. Gallen 94.3%
472 departures · avg +1 min
-
Renens VD 92.5%
465 departures · avg +1.3 min
-
Luzern 97.3%
444 departures · avg +0.9 min
-
Bern, Bahnhof 94.6%
2,094 departures · avg +1.1 min
-
Genève, gare Cornavin 71.2%
1,773 departures · avg +2.4 min
-
Genève, Bel-Air 76.1%
1,703 departures · avg +2 min
-
Lausanne, Bel-Air 77.7%
1,696 departures · avg +2.1 min
-
Luzern, Kantonalbank 87.2%
1,669 departures · avg +1.5 min
-
Bern, Hirschengraben 92.5%
1,651 departures · avg +1.5 min
-
Zürich, Central 91.3%
1,617 departures · avg +1.3 min
-
Luzern, Bahnhof 93.5%
1,531 departures · avg +1 min
-
Bern, Zytglogge 91%
1,516 departures · avg +1.5 min
-
Zürich HB 93%
1,503 departures · avg +1.3 min
-
Basel, Bahnhof SBB 87.5%
1,395 departures · avg +1.6 min
-
Bern, Bärenplatz 92.9%
1,373 departures · avg +1.4 min
-
Wilderswil 51.1%
135 departures · avg +4.7 min
-
Matten b. Interlaken 51.1%
135 departures · avg +4.6 min
-
Zweilütschinen 59.5%
121 departures · avg +4.4 min
-
Gelterkinden 64%
136 departures · avg +2.2 min
-
Sion 69.7%
119 departures · avg +2.7 min
-
Martigny 71.2%
177 departures · avg +2.4 min
-
St-Maurice 72.7%
139 departures · avg +2.1 min
-
Täsch 75.7%
115 departures · avg +2.4 min
-
Killwangen-Spreitenbach 76.2%
168 departures · avg +2.1 min
-
Visp 76.9%
234 departures · avg +2.3 min
-
Baar 77.3%
163 departures · avg +2.1 min
-
Sierre/Siders 77.6%
116 departures · avg +2.3 min
Largest delays
- Bus 1 Maladièreand 1 more trips of this line +156 min
- R19 Tirano +121 min
- NJ Basel Bad Bf +88 min
- Tram 8 Basel, Neuweilerstrasse +75 min
- Bus 4 Prilly, Coudraie – Lausanne, Faverges Faverges +61 min
- ICE Basel Bad Bf – Basel SBB Basel SBBand 6 more trips of this line +58 min
- Tram 12 Thônex, Moillesulazand 4 more trips of this line +57 min
- Bus 6 Genève, Plage – Vernier, village Vernier, village +57 min
- EC Bregenz – Zürich HB Basel Bad Bfand 1 more trips of this line +56 min
- Bus 48 Confignon, croisée – Plan-les-Ouates, ZIPLO Plan-les-Ouates, ZIPLO +55 min
- Bus 45 Zürich, Friedhof Eichbühl – Zürich, Werdhölzli Zürich, Werdhölzli +54 min
- Bus 180 Les Diablerets, gare – Saanen, Bahnhof Gstaad, Bahnhof +54 min
- Bus 17 Vigieand 1 more trips of this line +48 min
- Bus 10 Genève-Aéroport, Terminaland 1 more trips of this line +46 min
- Bus 3 Blumenstein, Dorf +45 min