Punctuality of Swiss public transportSaturday 30 May 2026
87.7% of 122,218 trips were on time. The share was lowest at 00:50: 78.6%. Of the busy lines, M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) had the lowest share on time: 10.4%.
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.7%
+3.9 ptsDay before: 83.8% · 122,218 trips with live data
Average delay
+1.3 min
Canceled trips
543
0.4% 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: Friday 29 May
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 94.9%
13,533 trips · avg +0.7 min
-
Tram 82.9%
10,404 trips · avg +1.9 min
-
Bus 87.3%
97,747 trips · avg +1.3 min
-
Metro 97.5%
278 trips · avg +1 min
-
Boat 35.9%
256 trips · avg +5.2 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) 10.4%
96 trips · avg +7.3 min
-
40 trips · avg +7 min
-
96 trips · avg +6.3 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 31.8%
107 trips · avg +6 min
-
74 trips · avg +4.7 min
-
70 trips · avg +4.5 min
-
70 trips · avg +4.4 min
-
69 trips · avg +4.7 min
Show 17 more
-
Bus 24 Lausanne, Bourdonnette – Lausanne, Ouchy-OlympiqueLausanne, Bourdonnette – Lausanne, Ouchy-Olympique 37.9%
140 trips · avg +7.8 min
-
184 trips · avg +4 min
-
Bus 61 Wallisellen, Glatt (Bus) – Zürich, MühlackerWallisellen, Glatt (Bus) – Zürich, Mühlacker 40.6%
143 trips · avg +3.9 min
-
96 trips · avg +4.5 min
-
148 trips · avg +3.4 min
-
72 trips · avg +4.7 min
-
72 trips · avg +3.7 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 47.3%
184 trips · avg +3.4 min
-
Bus 6 Biel/Bienne, Spitalzentrum/CHB – Port, BellevueBiel/Bienne, Spitalzentrum/CHB – Port, Bellevue 47.7%
130 trips · avg +3.5 min
-
Bus 64 Epalinges, Croisettes – Lausanne, Chalet-à-GobetEpalinges, Croisettes – Lausanne, Chalet-à-Gobet 48%
148 trips · avg +4.4 min
-
47 trips · avg +3.2 min
-
80 trips · avg +4.3 min
-
42 trips · avg +3.8 min
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 50.8%
266 trips · avg +3.4 min
-
59 trips · avg +2.9 min
-
43 trips · avg +3.7 min
-
233 trips · avg +3.8 min
Most punctual busy lines
-
302 trips · avg +0.6 min
-
212 trips · avg +0.3 min
-
267 trips · avg +0.8 min
-
Bus 17 Lausanne, Vigie – Villars-Ste-Croix, Croix-PéageLausanne, Vigie – Villars-Ste-Croix, Croix-Péage 97.1%
245 trips · avg +0.8 min
-
Bus 611 Zug, St. Johannes – Oberwil b. Zug,Klinik ZugerseeZug, St. Johannes – Oberwil b. Zug,Klinik Zugersee 97.1%
205 trips · avg +0.7 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 96.8%
219 trips · avg +0.9 min
-
217 trips · avg +1.5 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 95.4%
216 trips · avg +0.6 min
Least punctual busy lines
-
116 trips · avg +2.3 min
-
63 trips · avg +5.4 min
-
R15 Boudry Littorail – Neuchâtel Place Pury LittorailBoudry Littorail – Neuchâtel Place Pury Littorail 82%
100 trips · avg +2.4 min
-
75 trips · avg +1.6 min
-
63 trips · avg +1.7 min
-
40 trips · avg +1.3 min
-
79 trips · avg +1 min
-
71 trips · avg +1.2 min
Show 17 more
-
85 trips · avg +0.9 min
-
77 trips · avg +0.5 min
-
40 trips · avg +0.6 min
-
40 trips · avg +0.6 min
-
114 trips · avg +0.9 min
-
57 trips · avg +0.5 min
-
77 trips · avg +1.1 min
-
77 trips · avg +0.9 min
-
80 trips · avg +1.3 min
-
82 trips · avg +0.8 min
-
83 trips · avg +0.8 min
-
67 trips · avg +1.2 min
-
70 trips · avg +0.7 min
-
115 trips · avg +1.2 min
-
78 trips · avg +0.8 min
-
78 trips · avg +0.9 min
-
41 trips · avg +0.5 min
Most punctual busy lines
-
126 trips · avg +0.2 min
-
116 trips · avg +0.3 min
-
114 trips · avg +0.3 min
-
82 trips · avg +0.2 min
-
79 trips · avg +0.2 min
-
79 trips · avg +0 min
-
78 trips · avg +0.1 min
-
78 trips · avg +0.1 min
Least punctual busy lines
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 50.8%
266 trips · avg +3.4 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 69%
284 trips · avg +3.5 min
-
Tram 8 Bern, Saali – Bern Brünnen Westside, BahnhofBern, Saali – Bern Brünnen Westside, Bahnhof 72.8%
294 trips · avg +5.9 min
-
276 trips · avg +2.1 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 73.8%
275 trips · avg +2.2 min
-
248 trips · avg +1.5 min
-
342 trips · avg +1.7 min
-
265 trips · avg +1.9 min
Show 17 more
-
270 trips · avg +1.9 min
-
258 trips · avg +1.7 min
-
Tram 2 Binningen, Kronenplatz – Basel, Badischer BahnhofBinningen, Kronenplatz – Basel, Badischer Bahnhof 82.4%
267 trips · avg +1.8 min
-
351 trips · avg +1.5 min
-
266 trips · avg +2.2 min
-
258 trips · avg +1.7 min
-
247 trips · avg +1.5 min
-
Tram 11 Zürich, Central – Zürich Tiefenbrunnen, BahnhofZürich, Central – Zürich Tiefenbrunnen, Bahnhof 86.1%
266 trips · avg +1.5 min
-
282 trips · avg +1.5 min
-
287 trips · avg +3.2 min
-
268 trips · avg +1.6 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 90.1%
274 trips · avg +1.2 min
-
224 trips · avg +1.1 min
-
Tram 10 Zürich Flughafen, Fracht – Zürich, Bahnhofplatz/HBZürich Flughafen, Fracht – Zürich, Bahnhofplatz/HB 92.5%
252 trips · avg +1.1 min
-
268 trips · avg +1 min
-
267 trips · avg +0.8 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98%
152 trips · avg +0.8 min
Most punctual busy lines
-
138 trips · avg +0.1 min
-
135 trips · avg +0.4 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98%
152 trips · avg +0.8 min
-
267 trips · avg +0.8 min
-
268 trips · avg +1 min
-
Tram 10 Zürich Flughafen, Fracht – Zürich, Bahnhofplatz/HBZürich Flughafen, Fracht – Zürich, Bahnhofplatz/HB 92.5%
252 trips · avg +1.1 min
-
224 trips · avg +1.1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 90.1%
274 trips · avg +1.2 min
Least punctual busy lines
-
40 trips · avg +7 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 31.8%
107 trips · avg +6 min
-
74 trips · avg +4.7 min
-
70 trips · avg +4.5 min
-
70 trips · avg +4.4 min
-
69 trips · avg +4.7 min
-
Bus 24 Lausanne, Bourdonnette – Lausanne, Ouchy-OlympiqueLausanne, Bourdonnette – Lausanne, Ouchy-Olympique 37.9%
140 trips · avg +7.8 min
-
184 trips · avg +4 min
Show 17 more
-
Bus 61 Wallisellen, Glatt (Bus) – Zürich, MühlackerWallisellen, Glatt (Bus) – Zürich, Mühlacker 40.6%
143 trips · avg +3.9 min
-
96 trips · avg +4.5 min
-
148 trips · avg +3.4 min
-
72 trips · avg +4.7 min
-
72 trips · avg +3.7 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 47.3%
184 trips · avg +3.4 min
-
Bus 6 Biel/Bienne, Spitalzentrum/CHB – Port, BellevueBiel/Bienne, Spitalzentrum/CHB – Port, Bellevue 47.7%
130 trips · avg +3.5 min
-
Bus 64 Epalinges, Croisettes – Lausanne, Chalet-à-GobetEpalinges, Croisettes – Lausanne, Chalet-à-Gobet 48%
148 trips · avg +4.4 min
-
47 trips · avg +3.2 min
-
80 trips · avg +4.3 min
-
42 trips · avg +3.8 min
-
59 trips · avg +2.9 min
-
43 trips · avg +3.7 min
-
233 trips · avg +3.8 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 53.3%
150 trips · avg +3.2 min
-
82 trips · avg +3.3 min
-
211 trips · avg +3.4 min
Most punctual busy lines
-
180 trips · avg +0.4 min
-
167 trips · avg +0.7 min
-
167 trips · avg +0.4 min
-
Bus 6 Schaffhausen, Falkeneck – Schaffhausen, BuchthalenSchaffhausen, Falkeneck – Schaffhausen, Buchthalen 98.8%
171 trips · avg +0.6 min
-
212 trips · avg +0.3 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 98.3%
181 trips · avg +0.7 min
-
176 trips · avg +0.9 min
-
Bus 17 Lausanne, Vigie – Villars-Ste-Croix, Croix-PéageLausanne, Vigie – Villars-Ste-Croix, Croix-Péage 97.1%
245 trips · avg +0.8 min
Least punctual operators
-
Mouettes genevoises 35.9%
256 trips · avg +5.2 min
-
VBL 68.9%
3,362 trips · avg +2.4 min
-
Autobetrieb Sernftal 69.1%
110 trips · avg +2.7 min
-
Transports Publics Neuchâtelois 70.5%
2,116 trips · avg +2.3 min
-
TPL 71.3%
1,218 trips · avg +2.3 min
-
Bus Sierrois 72%
193 trips · avg +2 min
-
TPG 74%
7,264 trips · avg +2.1 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 77.5%
641 trips · avg +2.2 min
Show 17 more
-
BVB 79.5%
4,274 trips · avg +2 min
-
Automobil Rottal 79.7%
320 trips · avg +1.7 min
-
Verkehrsbetriebe Biel 79.8%
1,235 trips · avg +1.7 min
-
Matterhorn Gotthard Bahn 81.1%
328 trips · avg +1.4 min
-
tl 81.3%
6,030 trips · avg +1.8 min
-
Auto AG Rothenburg 81.8%
698 trips · avg +1.5 min
-
Busbetrieb Aarau 83.7%
860 trips · avg +1.5 min
-
VBZ 83.8%
14,572 trips · avg +1.7 min
-
Automobiles MBC 84%
856 trips · avg +1.4 min
-
Busbetrieb Solothurn und Umgebung 84%
551 trips · avg +1.4 min
-
Auto Leuk-Leukerbad 84.1%
226 trips · avg +1.5 min
-
Bernmobil 84.7%
4,276 trips · avg +2.3 min
-
Bus Nyon-Prangins 85.1%
215 trips · avg +1.4 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 86%
242 trips · avg +1.4 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 86.3%
1,168 trips · avg +1.3 min
-
Bus und Service 86.8%
1,348 trips · avg +1.4 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 88.1%
1,032 trips · avg +1.2 min
Most punctual operators
-
Regionalverkehr Bern-Solothurn 100%
493 trips · avg +0.1 min
-
THURBO 98.5%
1,101 trips · avg +0.3 min
-
Regionalps 99.5%
182 trips · avg +0.4 min
-
Zentralbahn 98.8%
327 trips · avg +0.3 min
-
Aare Seeland mobil 98.7%
300 trips · avg +0.3 min
-
Wengernalpbahn 99.4%
156 trips · avg +0.2 min
-
Schweizerische Südostbahn 97.9%
479 trips · avg +0.4 min
-
Lausanne-Echallens-Bercher 99.3%
137 trips · avg +0.1 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 96%
1,465 departures · avg +1.1 min
-
Bern 97.6%
912 departures · avg +0.9 min
-
Zürich Oerlikon 96.8%
824 departures · avg +0.9 min
-
Zürich Stadelhofen 97.5%
718 departures · avg +0.9 min
-
Zürich Hardbrücke 86.5%
703 departures · avg +1.9 min
-
Winterthur 97.4%
612 departures · avg +0.8 min
-
Olten 88.6%
597 departures · avg +1.5 min
-
Aarau 91.3%
503 departures · avg +1.2 min
-
Lausanne 88.2%
499 departures · avg +1.5 min
-
Renens VD 92.4%
498 departures · avg +1.3 min
-
St. Gallen 95.9%
466 departures · avg +0.9 min
-
Luzern 97.3%
451 departures · avg +0.8 min
-
Bern, Bahnhof 91.6%
2,621 departures · avg +2.3 min
-
Genève, gare Cornavin 81.8%
2,375 departures · avg +1.7 min
-
Genève, Bel-Air 82.7%
2,336 departures · avg +1.6 min
-
Basel, Schifflände 81.2%
2,108 departures · avg +2.2 min
-
Bern, Hirschengraben 86.8%
2,044 departures · avg +2.9 min
-
Luzern, Kantonalbank 73.8%
2,009 departures · avg +2.3 min
-
Zürich, Central 91.4%
1,998 departures · avg +1.3 min
-
Bern, Zytglogge 89%
1,926 departures · avg +2.9 min
-
Lausanne, Bel-Air 67.1%
1,926 departures · avg +2.7 min
-
Zürich, Bellevue 88%
1,856 departures · avg +1.4 min
-
Basel, Bahnhof SBB 88.1%
1,836 departures · avg +1.6 min
-
Luzern, Bahnhof 85.7%
1,801 departures · avg +1.5 min
-
Puidoux 71.8%
124 departures · avg +2.4 min
-
Oberentfelden Engelplatz 72.8%
151 departures · avg +1.6 min
-
Muhen Nord 73.5%
151 departures · avg +1.6 min
-
100 departures · avg +3.4 min
-
100 departures · avg +3.2 min
-
100 departures · avg +3 min
-
Rupperswil 78%
132 departures · avg +2.1 min
-
100 departures · avg +3.9 min
-
Neuchâtel Evole 79%
100 departures · avg +3 min
-
100 departures · avg +3.5 min
-
Killwangen-Spreitenbach 80.4%
168 departures · avg +2 min
-
Othmarsingen 80.5%
154 departures · avg +1.8 min
Largest delays
- Tram 6 Allschwil, Dorf +334 min
- ICE Basel Bad Bfand 5 more trips of this line +127 min
- Tram 8 Bern, Saali – Bern Brünnen Westside, Bahnhof Bern, Saali +104 min
- Tram 7 Bern, Ostring – Bern, Bümpliz Bern, Bümpliz +82 min
- Bus 720 Gimel, La Vernette – Allaman, gare Gimel, La Vernetteand 2 more trips of this line +81 min
- Bus 814 Frauenfeld, Bahnhof – Frauenfeld, Bahnhof Frauenfeld, Bahnhof +78 min
- Bus 323 Thurnen, Bahnhof – Schwarzenburg, Bahnhof Riggisberg, Post +77 min
- Bus 7 Luzern, Unterlöchli – Horw, Biregghof Luzern, Unterlöchli +69 min
- Tram 6 Worb Dorf +69 min
- Tram 16 Basel, Messeplatz – Basel, Bruderholz Basel, Bruderholz +68 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 83 Zürich Altstetten, Bahnhof – Zürich, Milchbuck Zürich, Milchbuck +427 min
- Bus 72 Zürich, Milchbuck – Zürich, Morgental Zürich, Milchbuckand 1 more trips of this line +387 min