Punctuality of Swiss public transportSunday 21 June 2026
90.4% of 97,159 trips were on time. The share was lowest at 16:30: 84.1%. Of the busy lines, Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gare had the lowest share on time: 16.3%.
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.4%
+2.5 ptsDay before: 87.9% · 97,159 trips with live data
Average delay
+1.1 min
Canceled trips
297
0.3% 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: Saturday 20 June
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 94.7%
12,422 trips · avg +0.8 min
-
Tram 86.8%
8,644 trips · avg +1.5 min
-
Bus 90.3%
75,512 trips · avg +1 min
-
Metro 96.4%
221 trips · avg +1.2 min
-
Boat 40.6%
360 trips · avg +4.7 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 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 16.3%
98 trips · avg +5.4 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 18.7%
134 trips · avg +6.2 min
-
69 trips · avg +5.7 min
-
134 trips · avg +6 min
-
Bus 3 Grand-Saconnex, Gardiol – Genève, Crêts-de-ChampelGrand-Saconnex, Gardiol – Genève, Crêts-de-Champel 30.1%
173 trips · avg +5.7 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 34.2%
114 trips · avg +3.6 min
-
65 trips · avg +3.9 min
-
120 trips · avg +5.6 min
Show 17 more
-
41 trips · avg +4.7 min
-
Bus 54 Vernier, Parfumerie – Versoix, Centre sportifVernier, Parfumerie – Versoix, Centre sportif 42.5%
40 trips · avg +4.3 min
-
146 trips · avg +4.4 min
-
47 trips · avg +4.2 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 +3.7 min
-
148 trips · avg +3.4 min
-
81 trips · avg +3.5 min
-
Bus 24 Lausanne, Bourdonnette – Lausanne, Ouchy-OlympiqueLausanne, Bourdonnette – Lausanne, Ouchy-Olympique 50%
134 trips · avg +3.5 min
-
Bus 59 Chambésy, Plage du Vengeron – Genève-Aéroport, TerminalChambésy, Plage du Vengeron – Genève-Aéroport, Terminal 51.2%
41 trips · avg +2.8 min
-
220 trips · avg +3.6 min
-
42 trips · avg +4 min
-
100 trips · avg +2.9 min
-
107 trips · avg +4 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 55.7%
106 trips · avg +3.4 min
-
Bus 10 Schliern, Bus-Endstation – Ostermundigen, RütiSchliern, Bus-Endstation – Ostermundigen, Rüti 55.8%
283 trips · avg +3 min
-
118 trips · avg +3.6 min
-
41 trips · avg +2.6 min
Most punctual busy lines
-
215 trips · avg +0.4 min
-
217 trips · avg +0.7 min
-
Tram 15 Zürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, BahnhofZürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, Bahnhof 99%
204 trips · avg +0.8 min
-
200 trips · avg +0.4 min
-
216 trips · avg +0.7 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 97.5%
201 trips · avg +0.5 min
-
204 trips · avg +1 min
-
221 trips · avg +1.2 min
Least punctual busy lines
-
63 trips · avg +10.8 min
-
101 trips · avg +3 min
-
42 trips · avg +1.7 min
-
85 trips · avg +1.5 min
-
41 trips · avg +1.3 min
-
64 trips · avg +2 min
-
66 trips · avg +1.2 min
-
81 trips · avg +0.7 min
Show 17 more
-
50 trips · avg +0.7 min
-
121 trips · avg +1 min
-
79 trips · avg +0.6 min
-
72 trips · avg +0.6 min
-
65 trips · avg +1.3 min
-
40 trips · avg +1 min
-
68 trips · avg +0.9 min
-
42 trips · avg +0.5 min
-
42 trips · avg +0.5 min
-
123 trips · avg +0.6 min
-
72 trips · avg +0.5 min
-
76 trips · avg +0.6 min
-
40 trips · avg +0.7 min
-
82 trips · avg +0.6 min
-
42 trips · avg +0.4 min
-
72 trips · avg +0.4 min
-
50 trips · avg +0.7 min
Most punctual busy lines
-
215 trips · avg +0.4 min
-
116 trips · avg +0.1 min
-
115 trips · avg +0.4 min
-
108 trips · avg +0.1 min
-
80 trips · avg +0.1 min
-
79 trips · avg +0.1 min
-
79 trips · avg +0.2 min
-
78 trips · avg +0.4 min
Least punctual busy lines
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 63.5%
197 trips · avg +2.7 min
-
Tram 2 Binningen, Kronenplatz – Basel, Badischer BahnhofBinningen, Kronenplatz – Basel, Badischer Bahnhof 67%
197 trips · avg +2.6 min
-
216 trips · avg +2 min
-
149 trips · avg +2.6 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 75.4%
199 trips · avg +2.1 min
-
213 trips · avg +2 min
-
203 trips · avg +1.9 min
-
194 trips · avg +1.8 min
Show 17 more
-
195 trips · avg +1.7 min
-
193 trips · avg +1.6 min
-
247 trips · avg +1.7 min
-
77 trips · avg +2.3 min
-
223 trips · avg +1.3 min
-
217 trips · avg +1 min
-
218 trips · avg +1.3 min
-
205 trips · avg +1.2 min
-
Tram 11 Zürich, Central – Zürich Tiefenbrunnen, BahnhofZürich, Central – Zürich Tiefenbrunnen, Bahnhof 91%
210 trips · avg +1.1 min
-
Tram 7 Stettbach, Bahnhof – Zürich, WollishoferplatzStettbach, Bahnhof – Zürich, Wollishoferplatz 91.2%
216 trips · avg +1.3 min
-
190 trips · avg +1.2 min
-
Tram 10 Zürich Flughafen, Fracht – Zürich, Bahnhofplatz/HBZürich Flughafen, Fracht – Zürich, Bahnhofplatz/HB 93.7%
159 trips · avg +1 min
-
208 trips · avg +1.2 min
-
219 trips · avg +1.1 min
-
427 trips · avg +1 min
-
225 trips · avg +1.2 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 95.6%
225 trips · avg +1 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 100%
155 trips · avg +0.5 min
-
122 trips · avg +0 min
-
217 trips · avg +0.7 min
-
Tram 15 Zürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, BahnhofZürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, Bahnhof 99%
204 trips · avg +0.8 min
-
Tram 12 Stettbach, Bahnhof – Zürich Flughafen, FrachtStettbach, Bahnhof – Zürich Flughafen, Fracht 98.1%
154 trips · avg +1.2 min
-
225 trips · avg +1.2 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 95.6%
225 trips · avg +1 min
-
427 trips · avg +1 min
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 16.3%
98 trips · avg +5.4 min
-
69 trips · avg +5.7 min
-
Bus 3 Grand-Saconnex, Gardiol – Genève, Crêts-de-ChampelGrand-Saconnex, Gardiol – Genève, Crêts-de-Champel 30.1%
173 trips · avg +5.7 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 34.2%
114 trips · avg +3.6 min
-
65 trips · avg +3.9 min
-
120 trips · avg +5.6 min
-
41 trips · avg +4.7 min
-
Bus 54 Vernier, Parfumerie – Versoix, Centre sportifVernier, Parfumerie – Versoix, Centre sportif 42.5%
40 trips · avg +4.3 min
Show 17 more
-
146 trips · avg +4.4 min
-
47 trips · avg +4.2 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 +3.7 min
-
148 trips · avg +3.4 min
-
81 trips · avg +3.5 min
-
Bus 24 Lausanne, Bourdonnette – Lausanne, Ouchy-OlympiqueLausanne, Bourdonnette – Lausanne, Ouchy-Olympique 50%
134 trips · avg +3.5 min
-
Bus 59 Chambésy, Plage du Vengeron – Genève-Aéroport, TerminalChambésy, Plage du Vengeron – Genève-Aéroport, Terminal 51.2%
41 trips · avg +2.8 min
-
220 trips · avg +3.6 min
-
42 trips · avg +4 min
-
100 trips · avg +2.9 min
-
107 trips · avg +4 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 55.7%
106 trips · avg +3.4 min
-
Bus 10 Schliern, Bus-Endstation – Ostermundigen, RütiSchliern, Bus-Endstation – Ostermundigen, Rüti 55.8%
283 trips · avg +3 min
-
118 trips · avg +3.6 min
-
41 trips · avg +2.6 min
-
177 trips · avg +2.8 min
-
42 trips · avg +3.2 min
Most punctual busy lines
-
154 trips · avg +0.6 min
-
200 trips · avg +0.4 min
-
154 trips · avg +0.5 min
-
216 trips · avg +0.7 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 97.5%
201 trips · avg +0.5 min
-
191 trips · avg +0.7 min
-
204 trips · avg +1 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 96.1%
206 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) 18.7%
134 trips · avg +6.2 min
-
134 trips · avg +6 min
-
46 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) 100%
46 trips · avg +0.5 min
Least punctual operators
-
Mouettes genevoises 40.6%
360 trips · avg +4.7 min
-
TPG 70.4%
5,112 trips · avg +2.5 min
-
Transports Publics Neuchâtelois 73.7%
1,044 trips · avg +1.9 min
-
Matterhorn Gotthard Bahn 74.3%
307 trips · avg +2.8 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 77.9%
507 trips · avg +2.2 min
-
BVB 78.3%
3,269 trips · avg +1.9 min
-
TPL 79.7%
1,186 trips · avg +1.5 min
-
VBL 80.8%
2,683 trips · avg +1.7 min
Show 17 more
-
tl 84.4%
5,544 trips · avg +1.5 min
-
Bernmobil 84.4%
4,067 trips · avg +1.5 min
-
Stadtbus Frauenfeld 85.1%
194 trips · avg +2 min
-
Regiobus Gossau SG 86.1%
259 trips · avg +1.4 min
-
Service d'automobiles TRN 88.7%
141 trips · avg +1.1 min
-
Verkehrsbetriebe Biel 89%
1,105 trips · avg +1.1 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 89.3%
984 trips · avg +1.2 min
-
Transports Publics du Chablais 89.7%
651 trips · avg +1.2 min
-
SBB Infrastruktur AG Bahnersatz 89.7%
175 trips · avg +1.1 min
-
Verkehrsbetriebe Herisau 89.7%
146 trips · avg +1.2 min
-
Bus und Service 89.8%
1,016 trips · avg +1 min
-
Busbetrieb Olten-Gösgen-Gäu 89.9%
587 trips · avg +0.9 min
-
Zentralbahn 90.4%
323 trips · avg +0.8 min
-
Sierre-Montana-Crans 90.4%
188 trips · avg +0.9 min
-
VBZ 90.5%
10,891 trips · avg +1.2 min
-
Montreux-Oberland Bernois 90.8%
120 trips · avg +1.5 min
-
STI Bus 91%
1,463 trips · avg +1.1 min
Most punctual operators
-
Automobildienst SZU 99.1%
1,331 trips · avg +0.4 min
-
THURBO 99%
1,101 trips · avg +0.2 min
-
Aargau Verkehr 98.7%
1,033 trips · avg +0.4 min
-
Autobus AG Liestal 98.9%
658 trips · avg +0.5 min
-
Sihltal-Zürich-Uetliberg-Bahn 99.6%
236 trips · avg +0.2 min
-
Autolinee Regionali Luganesi 100%
136 trips · avg +0.2 min
-
Schweizerische Südostbahn 98.6%
499 trips · avg +0.3 min
-
BLT 97.7%
1,813 trips · avg +0.6 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 97%
1,514 departures · avg +1 min
-
Bern 93.6%
913 departures · avg +1.2 min
-
Zürich Oerlikon 96.9%
859 departures · avg +0.8 min
-
Zürich Stadelhofen 98.5%
717 departures · avg +0.9 min
-
Winterthur 97.7%
704 departures · avg +1.2 min
-
Zürich Hardbrücke 94.9%
691 departures · avg +1.7 min
-
Olten 91.4%
567 departures · avg +1.4 min
-
Lausanne 86%
523 departures · avg +1.7 min
-
Renens VD 88.4%
500 departures · avg +1.4 min
-
Aarau 96.9%
480 departures · avg +1 min
-
St. Gallen 93.5%
459 departures · avg +1.7 min
-
Luzern 96.9%
445 departures · avg +0.8 min
-
Genève, gare Cornavin 70.4%
1,760 departures · avg +2.6 min
-
Lausanne, Bel-Air 73.4%
1,732 departures · avg +2.5 min
-
Bern, Bahnhof 86.5%
1,698 departures · avg +1.6 min
-
Genève, Bel-Air 71.3%
1,692 departures · avg +2.6 min
-
1,672 departures · avg +1.6 min
-
Zürich, Central 96.8%
1,633 departures · avg +0.9 min
-
Bern, Hirschengraben 88.5%
1,544 departures · avg +1.6 min
-
Luzern, Bahnhof 92.8%
1,521 departures · avg +1.1 min
-
Zürich HB 97%
1,514 departures · avg +1 min
-
1,468 departures · avg +1.8 min
-
Bern, Zytglogge 85%
1,402 departures · avg +1.7 min
-
Basel, Bahnhof SBB 88.6%
1,378 departures · avg +1.5 min
-
Gelterkinden 67.2%
137 departures · avg +2.5 min
-
Montreux 69.3%
218 departures · avg +2.7 min
-
Täsch 72.3%
112 departures · avg +3.3 min
-
Spiez 80.6%
186 departures · avg +2.8 min
-
Aigle 81.3%
209 departures · avg +2.1 min
-
Moutier 81.7%
109 departures · avg +1.6 min
-
Rotkreuz 81.9%
166 departures · avg +1.7 min
-
Sissach 82.1%
156 departures · avg +2.2 min
-
Muhen Nord 82.1%
106 departures · avg +1.3 min
-
Oberentfelden Engelplatz 82.1%
106 departures · avg +1.3 min
-
Worbboden 84.5%
116 departures · avg +1.5 min
-
Zug 84.8%
343 departures · avg +2 min
Largest delays
- EC Bregenz – Zürich HB Zürich HBand 2 more trips of this line +151 min
- Tram 10 Dornach, Bahnhof +108 min
- N5 Lausanne, St-François – St-Sulpice VD, Venoge sud Venoge sudand 1 more trips of this line +107 min
- Bus 1 Gebenstorf, Reuss – Würenlos, Bettlen Baden, Bahnhof Ostand 1 more trips of this line +95 min
- GEX St. Moritzand 1 more trips of this line +77 min
- Tram 14 Bernex, Vaillyand 4 more trips of this line +73 min
- IR37 Basel SBB +67 min
- Bus 182 Chur, Postautostation – Lenzerheide/Lai, Post Lenzerheide/Lai, Post +63 min
- GEX St. Moritzand 1 more trips of this line +61 min
- Bus 217 Muri AG, Spital – Affoltern a.A., Bahnhof Muri AG, Spital +61 min
- Bus 735 Bichelsee, Dorf – Wil SG, Bahnhof Bichelsee, Dorf +59 min
- Bus 681 Oberwald, Bahnhof +57 min
- ICE Basel SBBand 3 more trips of this line +53 min
- Bus 8 Le Mont-sur-L., Grand-Mont – Pully, gare Pully, gare +52 min
- Tram 15 Plan-les-Ouates, ZIPLO +50 min