Punctuality of Swiss public transportFriday 10 July 2026
88.4% of 153,945 trips were on time. The share was lowest at 17:00: 78.9%. Of the busy lines, M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) had the lowest share on time: 30.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.
88.4%
+1.4 ptsDay before: 87% · 153,945 trips with live data
Average delay
+1.2 min
Canceled trips
810
0.5% 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: Thursday 9 July
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 95.3%
14,386 trips · avg +0.7 min
-
Tram 83%
13,527 trips · avg +1.6 min
-
Bus 88.3%
125,292 trips · avg +1.2 min
-
Metro 98%
296 trips · avg +1 min
-
Boat 54.3%
444 trips · avg +3.6 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) 30.7%
166 trips · avg +5.3 min
-
Bus 15 Lugano, Stazione/Via Basilea – Muzzano, PaeseLugano, Stazione/Via Basilea – Muzzano, Paese 31.1%
45 trips · avg +6.6 min
-
Bus 501 Estavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, portEstavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, port 35.7%
56 trips · avg +4.8 min
-
80 trips · avg +4.4 min
-
99 trips · avg +4.1 min
-
42 trips · avg +5.2 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 46.8%
203 trips · avg +3.3 min
-
166 trips · avg +4 min
Show 17 more
-
Bus 61 Wallisellen, Glatt (Bus) – Zürich, MühlackerWallisellen, Glatt (Bus) – Zürich, Mühlacker 48.8%
166 trips · avg +3.3 min
-
Bus 7 Vernier, Lignon Tours – Vessy, Grands-EssertsVernier, Lignon Tours – Vessy, Grands-Esserts 49%
200 trips · avg +3.9 min
-
138 trips · avg +3.5 min
-
183 trips · avg +5.1 min
-
99 trips · avg +3.2 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 52.9%
238 trips · avg +3.3 min
-
148 trips · avg +3.9 min
-
217 trips · avg +3.5 min
-
Bus 391 Lenzburg, Kronenplatz – Lenzburg, LangsamstigLenzburg, Kronenplatz – Lenzburg, Langsamstig 55%
80 trips · avg +3.7 min
-
151 trips · avg +2.9 min
-
216 trips · avg +3.4 min
-
48 trips · avg +3.1 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 56.5%
308 trips · avg +3.4 min
-
Bus 444 Bremgarten AG, Obertorplatz – Zürich Enge, Bahnhof/Bederstr.Bremgarten AG, Obertorplatz – Zürich Enge, Bahnhof/Bederstr. 56.8%
44 trips · avg +2.3 min
-
62 trips · avg +10.4 min
-
Bus 311 La Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gareLa Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gare 59.1%
93 trips · avg +2.7 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 59.2%
103 trips · avg +2.7 min
Most punctual busy lines
-
246 trips · avg +0.7 min
-
304 trips · avg +0.6 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 98.7%
300 trips · avg +0.6 min
-
347 trips · avg +0.8 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 97.5%
243 trips · avg +0.8 min
-
275 trips · avg +0.8 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 96.1%
259 trips · avg +0.7 min
-
279 trips · avg +0.8 min
Least punctual busy lines
-
62 trips · avg +10.4 min
-
40 trips · avg +2 min
-
61 trips · avg +1.4 min
-
79 trips · avg +1.8 min
-
141 trips · avg +2.5 min
-
68 trips · avg +1.4 min
-
73 trips · avg +2.1 min
-
41 trips · avg +1.2 min
Show 17 more
-
R15 Neuchâtel Place Pury Littorail – Boudry LittorailNeuchâtel Place Pury Littorail – Boudry Littorail 86.2%
116 trips · avg +1.3 min
-
40 trips · avg +1.4 min
-
116 trips · avg +1 min
-
58 trips · avg +1.3 min
-
40 trips · avg +1.6 min
-
82 trips · avg +1.3 min
-
41 trips · avg +1.4 min
-
40 trips · avg +0.9 min
-
40 trips · avg +1.5 min
-
71 trips · avg +0.8 min
-
72 trips · avg +1.1 min
-
74 trips · avg +1.3 min
-
75 trips · avg +0.8 min
-
78 trips · avg +1 min
-
79 trips · avg +0.9 min
-
80 trips · avg +0.8 min
-
121 trips · avg +0.7 min
Most punctual busy lines
-
208 trips · avg +0.1 min
-
153 trips · avg +0.5 min
-
126 trips · avg +0.3 min
-
120 trips · avg +0.3 min
-
118 trips · avg +0.2 min
-
117 trips · avg +0.6 min
-
98 trips · avg +0.3 min
-
81 trips · avg +0.7 min
Least punctual busy lines
-
287 trips · avg +2.5 min
-
284 trips · avg +2.2 min
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 70.3%
323 trips · avg +2.3 min
-
290 trips · avg +1.8 min
-
294 trips · avg +2.4 min
-
Tram 21 Basel, Bahnhof St. Johann – Basel, Badischer BahnhofBasel, Bahnhof St. Johann – Basel, Badischer Bahnhof 73%
281 trips · avg +2.4 min
-
418 trips · avg +1.9 min
-
186 trips · avg +2.2 min
Show 17 more
-
523 trips · avg +1.5 min
-
305 trips · avg +2.1 min
-
295 trips · avg +1.8 min
-
374 trips · avg +1.8 min
-
308 trips · avg +1.5 min
-
283 trips · avg +1.7 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 86.8%
295 trips · avg +1.5 min
-
286 trips · avg +1.1 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 88.5%
383 trips · avg +1.4 min
-
298 trips · avg +1.1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 92%
313 trips · avg +1.2 min
-
322 trips · avg +1 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 92.4%
290 trips · avg +1.2 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 92.4%
291 trips · avg +1.2 min
-
269 trips · avg +1.2 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 94.7%
282 trips · avg +1 min
-
279 trips · avg +0.8 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 97.4%
155 trips · avg +0.9 min
-
275 trips · avg +0.8 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 96.8%
154 trips · avg +0.8 min
-
279 trips · avg +0.8 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 94.7%
282 trips · avg +1 min
-
269 trips · avg +1.2 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 92.4%
291 trips · avg +1.2 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 92.4%
290 trips · avg +1.2 min
Least punctual busy lines
-
Bus 15 Lugano, Stazione/Via Basilea – Muzzano, PaeseLugano, Stazione/Via Basilea – Muzzano, Paese 31.1%
45 trips · avg +6.6 min
-
Bus 501 Estavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, portEstavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, port 35.7%
56 trips · avg +4.8 min
-
80 trips · avg +4.4 min
-
99 trips · avg +4.1 min
-
42 trips · avg +5.2 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 46.8%
203 trips · avg +3.3 min
-
Bus 61 Wallisellen, Glatt (Bus) – Zürich, MühlackerWallisellen, Glatt (Bus) – Zürich, Mühlacker 48.8%
166 trips · avg +3.3 min
-
Bus 7 Vernier, Lignon Tours – Vessy, Grands-EssertsVernier, Lignon Tours – Vessy, Grands-Esserts 49%
200 trips · avg +3.9 min
Show 17 more
-
138 trips · avg +3.5 min
-
183 trips · avg +5.1 min
-
99 trips · avg +3.2 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 52.9%
238 trips · avg +3.3 min
-
148 trips · avg +3.9 min
-
217 trips · avg +3.5 min
-
Bus 391 Lenzburg, Kronenplatz – Lenzburg, LangsamstigLenzburg, Kronenplatz – Lenzburg, Langsamstig 55%
80 trips · avg +3.7 min
-
151 trips · avg +2.9 min
-
216 trips · avg +3.4 min
-
48 trips · avg +3.1 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 56.5%
308 trips · avg +3.4 min
-
Bus 444 Bremgarten AG, Obertorplatz – Zürich Enge, Bahnhof/Bederstr.Bremgarten AG, Obertorplatz – Zürich Enge, Bahnhof/Bederstr. 56.8%
44 trips · avg +2.3 min
-
Bus 311 La Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gareLa Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gare 59.1%
93 trips · avg +2.7 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 59.2%
103 trips · avg +2.7 min
-
Bus 28 Petit-Lancy, Les Esserts – Grand-Saconnex, Tunnel RoutierPetit-Lancy, Les Esserts – Grand-Saconnex, Tunnel Routier 59.2%
130 trips · avg +2.7 min
-
59 trips · avg +2.5 min
-
219 trips · avg +2.9 min
Most punctual busy lines
-
246 trips · avg +0.7 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 98.7%
300 trips · avg +0.6 min
-
347 trips · avg +0.8 min
-
212 trips · avg +0.5 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 97.5%
243 trips · avg +0.8 min
-
236 trips · avg +0.9 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 96.1%
259 trips · avg +0.7 min
-
211 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) 30.7%
166 trips · avg +5.3 min
-
166 trips · avg +4 min
-
56 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%
56 trips · avg +0.4 min
Least punctual operators
-
Mouettes genevoises 54.3%
444 trips · avg +3.6 min
-
TPG 69.1%
9,425 trips · avg +2.7 min
-
Autobetrieb Sernftal 71%
124 trips · avg +2.4 min
-
VBL 76.5%
3,831 trips · avg +2 min
-
TPL 76.5%
1,599 trips · avg +2.2 min
-
Forchbahn 78%
186 trips · avg +2.2 min
-
Transports Publics Neuchâtelois 79.1%
2,898 trips · avg +1.8 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 79.2%
307 trips · avg +1.7 min
Show 17 more
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 79.5%
1,328 trips · avg +1.8 min
-
BVB 80.7%
5,254 trips · avg +1.8 min
-
tl 80.8%
6,542 trips · avg +1.8 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 81.2%
839 trips · avg +1.9 min
-
Bus und Service 82.1%
1,568 trips · avg +1.6 min
-
Verkehrsbetrieb der Landschaft Davos 82.5%
378 trips · avg +1.4 min
-
Regionalbus Lenzburg 83.3%
557 trips · avg +1.5 min
-
Lausanne-Echallens-Bercher 83.7%
141 trips · avg +2.5 min
-
Auto AG Rothenburg 84.2%
766 trips · avg +1.6 min
-
Busbetrieb Aarau 85%
956 trips · avg +1.4 min
-
VBZ 85.4%
17,001 trips · avg +1.5 min
-
Berner Oberland-Bahnen 85.4%
137 trips · avg +1.6 min
-
Automobil Rottal 86.4%
463 trips · avg +1.3 min
-
Matterhorn Gotthard Bahn 86.6%
322 trips · avg +1.2 min
-
AFA Bus 86.8%
235 trips · avg +1.2 min
-
Verkehrsbetriebe Biel 87.1%
1,335 trips · avg +1.4 min
-
Autobus AG Liestal 87.4%
914 trips · avg +1.3 min
Most punctual operators
-
Sihltal-Zürich-Uetliberg-Bahn 100%
268 trips · avg +0.3 min
-
Zentralbahn 99.7%
372 trips · avg +0.2 min
-
THURBO 98.9%
1,109 trips · avg +0.2 min
-
Regionalverkehr Bern-Solothurn 99.2%
604 trips · avg +0.2 min
-
Regionalps 100%
188 trips · avg +0.4 min
-
Schweizerische Südostbahn 99%
516 trips · avg +0.3 min
-
BLS 98%
1,569 trips · avg +0.5 min
-
Transports de la région Morges-Bière-Cossonay 100%
110 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 97.3%
1,553 departures · avg +1 min
-
Bern 97.3%
1,079 departures · avg +0.9 min
-
Zürich Oerlikon 97.5%
916 departures · avg +0.8 min
-
Winterthur 95.7%
698 departures · avg +1.2 min
-
Zürich Stadelhofen 97.3%
692 departures · avg +1.1 min
-
Zürich Hardbrücke 92.4%
668 departures · avg +1.8 min
-
Olten 95.2%
581 departures · avg +1.3 min
-
Lausanne 89%
543 departures · avg +1.4 min
-
St. Gallen 96.3%
542 departures · avg +1.2 min
-
Aarau 96.8%
524 departures · avg +0.9 min
-
Renens VD 89.1%
479 departures · avg +1.4 min
-
Worblaufen 99.2%
478 departures · avg +0.9 min
-
Genève, gare Cornavin 67.6%
2,672 departures · avg +2.8 min
-
Genève, Bel-Air 65.3%
2,401 departures · avg +2.9 min
-
Basel, Bahnhof SBB 85.1%
2,342 departures · avg +1.7 min
-
Zürich, Central 93.5%
2,328 departures · avg +1.1 min
-
Luzern, Kantonalbank 80.6%
2,201 departures · avg +2 min
-
Bern, Bahnhof 93.1%
2,155 departures · avg +1.2 min
-
Zürich, Bellevue 91.7%
2,100 departures · avg +1.3 min
-
2,021 departures · avg +1.2 min
-
Bern, Zytglogge 91.4%
1,970 departures · avg +1.3 min
-
Luzern, Bahnhof 88.7%
1,949 departures · avg +1.3 min
-
Lausanne, Bel-Air 65.1%
1,944 departures · avg +2.8 min
-
St. Gallen, Bahnhof 93.4%
1,901 departures · avg +1.1 min
-
Riazzino 71%
155 departures · avg +2.7 min
-
Gordola 71%
155 departures · avg +2.7 min
-
Minusio 71.6%
155 departures · avg +2.7 min
-
Muhen Nord 71.9%
153 departures · avg +1.7 min
-
Oberentfelden Engelplatz 71.9%
153 departures · avg +1.7 min
-
Lustmühle 72.7%
110 departures · avg +2.5 min
-
S. Antonino 72.8%
158 departures · avg +2.6 min
-
Magliaso Paese 73.6%
121 departures · avg +2.2 min
-
Wilderswil 74.1%
135 departures · avg +2.1 min
-
Gelterkinden 74.3%
136 departures · avg +2 min
-
St. Gallen Güterbahnhof 74.5%
110 departures · avg +2 min
-
St. Gallen Riethüsli 74.5%
110 departures · avg +2 min
Largest delays
- EC Bregenz – Zürich HB Zürich HBand 3 more trips of this line +144 min
- NJ Zürich HB +128 min
- Bus 2 Sierre, Hôtel de Ville/gare – Sierre, Piscine Guillamo Sierre, Hôtel de Ville/gare +90 min
- Bus 9 Temple de Broyeand 1 more trips of this line +85 min
- Bus 1 Genève, Jardin Botaniqueand 1 more trips of this line +72 min
- N1 Schaffhausen, Bahnhof +69 min
- Tram 2 Binningen, Kronenplatz +69 min
- Bus 171 Chur, Postautostation – Bellinzona, Stazione Chur, Postautostation +67 min
- Bus 82 Collonges, marché – Plan-les-Ouates, ZIPLO Plan-les-Ouates, ZIPLOand 1 more trips of this line +61 min
- Bus 1 Sierre, Ecoparc de Daval – Sierre, Sablons Sierre, Ecoparc de Davaland 1 more trips of this line +61 min
- PE Lugano +60 min
- ICE Basel Bad Bf – Basel SBB Basel Bad Bfand 3 more trips of this line +58 min
- Bus 13 Balzers, Schlossweg – Schaanwald, Zollamt Balzers, Schlossweg +57 min
- Bus 72 Augst BL, Stundeglas +56 min
- Bus 10 Genève-Aéroport, Terminal – Genève, Rive Genève, Rive +54 min