Punctuality of Swiss public transportThursday 9 July 2026
87% of 151,052 trips were on time. The share was lowest at 17:40: 73.9%. Of the busy lines, M1 Genève-Pâquis (lac) – Genève-Molard (lac) had the lowest share on time: 22.9%.
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%
−0.5 ptsDay before: 87.5% · 151,052 trips with live data
Average delay
+1.3 min
Canceled trips
831
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: Wednesday 8 July
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 93.2%
14,287 trips · avg +0.9 min
-
Tram 80.3%
12,997 trips · avg +1.9 min
-
Bus 87.1%
123,028 trips · avg +1.3 min
-
Metro 82.4%
296 trips · avg +1.8 min
-
Boat 47.7%
444 trips · avg +4.1 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
-
166 trips · avg +5.7 min
-
Bus 15 Lugano, Stazione/Via Basilea – Muzzano, PaeseLugano, Stazione/Via Basilea – Muzzano, Paese 31.1%
45 trips · avg +7.3 min
-
45 trips · avg +3.9 min
-
42 trips · avg +5.7 min
-
Bus 5 Biel/Bienne, Bahnhof/Gare – Biel/Bienne, Spitalzentrum/CHBBiel/Bienne, Bahnhof/Gare – Biel/Bienne, Spitalzentrum/CHB 36.6%
134 trips · avg +5.8 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 37.3%
166 trips · avg +5.1 min
-
76 trips · avg +4.3 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 40.8%
196 trips · avg +3.6 min
Show 17 more
-
Bus 7 Vernier, Lignon Tours – Vessy, Grands-EssertsVernier, Lignon Tours – Vessy, Grands-Esserts 41.2%
194 trips · avg +4.6 min
-
47 trips · avg +4.1 min
-
217 trips · avg +5.1 min
-
156 trips · avg +4.8 min
-
217 trips · avg +4.1 min
-
206 trips · avg +4.5 min
-
96 trips · avg +4 min
-
98 trips · avg +4.9 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 47.1%
70 trips · avg +3.6 min
-
186 trips · avg +4.4 min
-
Bus 11 Genève, Jardin Botanique – Genève-Eaux-Vives, gareGenève, Jardin Botanique – Genève-Eaux-Vives, gare 48.9%
176 trips · avg +3.8 min
-
194 trips · avg +4.9 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 50.2%
259 trips · avg +3.7 min
-
128 trips · avg +4.4 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 51.8%
110 trips · avg +3.6 min
-
59 trips · avg +2.8 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 52.8%
235 trips · avg +4.4 min
Most punctual busy lines
-
304 trips · avg +0.8 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 96.5%
288 trips · avg +0.7 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 95.7%
278 trips · avg +0.7 min
-
288 trips · avg +0.6 min
-
340 trips · avg +1 min
-
266 trips · avg +1.1 min
-
266 trips · avg +1 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 93.1%
246 trips · avg +0.7 min
Least punctual busy lines
-
79 trips · avg +3.1 min
-
58 trips · avg +2.7 min
-
62 trips · avg +7.8 min
-
68 trips · avg +1.3 min
-
41 trips · avg +1.7 min
-
108 trips · avg +1.9 min
-
40 trips · avg +2.1 min
-
104 trips · avg +1.6 min
Show 17 more
-
40 trips · avg +2.5 min
-
76 trips · avg +1.5 min
-
82 trips · avg +1.7 min
-
107 trips · avg +1.3 min
-
78 trips · avg +1.5 min
-
41 trips · avg +1.5 min
-
42 trips · avg +1.4 min
-
79 trips · avg +1.3 min
-
71 trips · avg +0.9 min
-
40 trips · avg +1.4 min
-
79 trips · avg +1.2 min
-
80 trips · avg +1 min
-
47 trips · avg +1.4 min
-
70 trips · avg +0.9 min
-
40 trips · avg +1.7 min
-
83 trips · avg +1 min
-
98 trips · avg +0.8 min
Most punctual busy lines
-
121 trips · avg +0.3 min
-
119 trips · avg +0.2 min
-
91 trips · avg +0.3 min
-
81 trips · avg +0.5 min
-
81 trips · avg +0.2 min
-
79 trips · avg +0.1 min
-
79 trips · avg +0.2 min
-
79 trips · avg +0.2 min
Least punctual busy lines
-
277 trips · avg +2.3 min
-
274 trips · avg +2.1 min
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 70.5%
281 trips · avg +2.5 min
-
415 trips · avg +2.1 min
-
301 trips · avg +2.5 min
-
281 trips · avg +2.1 min
-
269 trips · avg +1.7 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 75.2%
274 trips · avg +2.2 min
Show 17 more
-
280 trips · avg +2.1 min
-
168 trips · avg +2.9 min
-
Tram 21 Basel, Bahnhof St. Johann – Basel, Badischer BahnhofBasel, Bahnhof St. Johann – Basel, Badischer Bahnhof 77.5%
276 trips · avg +2 min
-
304 trips · avg +1.8 min
-
369 trips · avg +2 min
-
294 trips · avg +1.7 min
-
510 trips · avg +1.4 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 80.8%
380 trips · avg +1.8 min
-
256 trips · avg +1.5 min
-
284 trips · avg +1.8 min
-
299 trips · avg +1.4 min
-
213 trips · avg +1.2 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 87.9%
290 trips · avg +1.3 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 88.1%
278 trips · avg +1.1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 88.3%
300 trips · avg +1.4 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 89.4%
292 trips · avg +1.4 min
-
311 trips · avg +1.1 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 99.4%
155 trips · avg +0.7 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 94.8%
154 trips · avg +1.1 min
-
266 trips · avg +1.1 min
-
311 trips · avg +1.1 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 89.4%
292 trips · avg +1.4 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 88.3%
300 trips · avg +1.4 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 88.1%
278 trips · avg +1.1 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 87.9%
290 trips · avg +1.3 min
Least punctual busy lines
-
Bus 15 Lugano, Stazione/Via Basilea – Muzzano, PaeseLugano, Stazione/Via Basilea – Muzzano, Paese 31.1%
45 trips · avg +7.3 min
-
45 trips · avg +3.9 min
-
42 trips · avg +5.7 min
-
Bus 5 Biel/Bienne, Bahnhof/Gare – Biel/Bienne, Spitalzentrum/CHBBiel/Bienne, Bahnhof/Gare – Biel/Bienne, Spitalzentrum/CHB 36.6%
134 trips · avg +5.8 min
-
76 trips · avg +4.3 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 40.8%
196 trips · avg +3.6 min
-
Bus 7 Vernier, Lignon Tours – Vessy, Grands-EssertsVernier, Lignon Tours – Vessy, Grands-Esserts 41.2%
194 trips · avg +4.6 min
-
47 trips · avg +4.1 min
Show 17 more
-
217 trips · avg +5.1 min
-
156 trips · avg +4.8 min
-
217 trips · avg +4.1 min
-
206 trips · avg +4.5 min
-
96 trips · avg +4 min
-
98 trips · avg +4.9 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 47.1%
70 trips · avg +3.6 min
-
186 trips · avg +4.4 min
-
Bus 11 Genève, Jardin Botanique – Genève-Eaux-Vives, gareGenève, Jardin Botanique – Genève-Eaux-Vives, gare 48.9%
176 trips · avg +3.8 min
-
194 trips · avg +4.9 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 50.2%
259 trips · avg +3.7 min
-
128 trips · avg +4.4 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 51.8%
110 trips · avg +3.6 min
-
59 trips · avg +2.8 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 52.8%
235 trips · avg +4.4 min
-
Bus 311 La Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gareLa Chaux-de-Fonds, Cerisier – La Chaux-de-Fonds, gare 52.8%
89 trips · avg +2.9 min
-
173 trips · avg +3.6 min
Most punctual busy lines
-
240 trips · avg +0.6 min
-
208 trips · avg +0.4 min
-
235 trips · avg +0.7 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 96.5%
288 trips · avg +0.7 min
-
213 trips · avg +1 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 95.7%
278 trips · avg +0.7 min
-
208 trips · avg +0.7 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 95.4%
239 trips · avg +0.9 min
Least punctual busy lines
-
166 trips · avg +5.7 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 37.3%
166 trips · avg +5.1 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.6 min
Least punctual operators
-
Mouettes genevoises 47.7%
444 trips · avg +4.1 min
-
Berner Oberland-Bahnen 59.1%
137 trips · avg +2.9 min
-
TPG 63.6%
9,381 trips · avg +3.3 min
-
Autobetrieb Sernftal 73.8%
122 trips · avg +2.5 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 75.5%
302 trips · avg +1.8 min
-
Forchbahn 75.6%
168 trips · avg +2.9 min
-
VBL 75.7%
3,790 trips · avg +2.1 min
-
Transports Publics Neuchâtelois 77%
2,820 trips · avg +1.9 min
Show 17 more
-
TPL 77.4%
1,595 trips · avg +2.1 min
-
tl 78.5%
6,471 trips · avg +2.1 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 78.7%
865 trips · avg +1.9 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 79.6%
108 trips · avg +1.9 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 80.9%
1,321 trips · avg +1.9 min
-
AFA Bus 81.3%
235 trips · avg +1.6 min
-
Verkehrsbetriebe Biel 81.5%
1,323 trips · avg +1.8 min
-
BVB 81.6%
4,951 trips · avg +1.7 min
-
VBZ 82.7%
16,512 trips · avg +1.7 min
-
Bus und Service 82.8%
1,580 trips · avg +1.6 min
-
Autolinee Bleniesi 83.4%
163 trips · avg +1.5 min
-
Bus Nyon-Prangins 83.5%
389 trips · avg +1.4 min
-
Busbetrieb Aarau 84.1%
935 trips · avg +1.4 min
-
Auto AG Rothenburg 84.3%
712 trips · avg +1.5 min
-
Matterhorn Gotthard Bahn 84.5%
309 trips · avg +1.4 min
-
Wengernalpbahn 84.5%
155 trips · avg +1.3 min
-
Automobil Rottal 85%
453 trips · avg +1.5 min
Most punctual operators
-
Regionalverkehr Bern-Solothurn 99.2%
601 trips · avg +0.3 min
-
Sihltal-Zürich-Uetliberg-Bahn 99.6%
267 trips · avg +0.3 min
-
Lugano-Ponte Tresa 100%
121 trips · avg +0.3 min
-
Schweizerische Südostbahn 98.3%
517 trips · avg +0.4 min
-
Aare Seeland mobil 98.5%
338 trips · avg +0.2 min
-
THURBO 97.1%
1,108 trips · avg +0.4 min
-
Zentralbahn 97.6%
368 trips · avg +0.5 min
-
Verkehrsbetriebe Kreuzlingen 97.1%
483 trips · avg +0.9 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 93.5%
1,556 departures · avg +1.2 min
-
Bern 95.1%
1,072 departures · avg +0.9 min
-
Zürich Oerlikon 94.5%
919 departures · avg +1.1 min
-
Zürich Stadelhofen 93.3%
700 departures · avg +1.4 min
-
Winterthur 92.4%
693 departures · avg +1.3 min
-
676 departures · avg +2.1 min
-
Olten 91.9%
571 departures · avg +1.5 min
-
St. Gallen 94%
537 departures · avg +1.1 min
-
Lausanne 86.6%
523 departures · avg +1.8 min
-
Aarau 93.5%
520 departures · avg +1.1 min
-
Worblaufen 98.7%
475 departures · avg +0.9 min
-
Luzern 99.2%
471 departures · avg +0.8 min
-
2,670 departures · avg +3.1 min
-
Genève, Bel-Air 57.3%
2,360 departures · avg +4 min
-
Zürich, Central 90%
2,174 departures · avg +1.3 min
-
Basel, Bahnhof SBB 84.1%
2,165 departures · avg +1.7 min
-
Luzern, Kantonalbank 80.1%
2,161 departures · avg +1.9 min
-
Zürich, Bellevue 87%
2,069 departures · avg +1.6 min
-
Bern, Bahnhof 92.3%
2,027 departures · avg +1.3 min
-
Luzern, Bahnhof 88.7%
1,922 departures · avg +1.3 min
-
Lausanne, Bel-Air 59.7%
1,915 departures · avg +3.2 min
-
1,908 departures · avg +1.3 min
-
Bern, Zytglogge 93.4%
1,891 departures · avg +1.3 min
-
St. Gallen, Bahnhof 93.4%
1,862 departures · avg +1.1 min
-
Wilderswil 62.2%
135 departures · avg +3.4 min
-
Matten b. Interlaken 64.4%
135 departures · avg +3.3 min
-
Zweilütschinen 66.1%
121 departures · avg +3 min
-
L'Asse 66.7%
108 departures · avg +2.8 min
-
Les Plantaz 68.5%
108 departures · avg +2.7 min
-
La Vuarpillière 68.5%
108 departures · avg +2.8 min
-
St. Gallen Bruggen 73.3%
146 departures · avg +2.2 min
-
Como S. Giovanni 73.9%
119 departures · avg +3.1 min
-
Muhen Nord 75.2%
153 departures · avg +1.6 min
-
Oberentfelden Engelplatz 75.2%
153 departures · avg +1.6 min
-
Gelterkinden 75.4%
134 departures · avg +1.8 min
-
Spiez 75.8%
182 departures · avg +2.2 min
Largest delays
- EC Bregenz – Zürich HB Zürich HBand 1 more trips of this line +98 min
- Bus 50 Versoix, Centre sportif +92 min
- Bus 701 Le Prese, Stazione – Samedan, Bahnhof Samedan, Bahnhof +82 min
- EV Basel, Dreispitz – Aesch BL, Dorf Aesch BL, Dorfand 5 more trips of this line +70 min
- Bus 20 Veyrier, Tournettes – Bellevue GE, Valavran Bellevue GE, Valavran +63 min
- Tram 14 Bernex, Vaillyand 6 more trips of this line +62 min
- Bus 4 Prilly, Coudraie – Lausanne, Faverges Prilly, Coudraieand 1 more trips of this line +60 min
- Bus 82 Collonges, marché – Plan-les-Ouates, ZIPLO Plan-les-Ouates, ZIPLOand 4 more trips of this line +60 min
- Bus 40 Grand-Lancy, Stade de Genève +57 min
- Bus 166 Wichtrach, Dorfplatz +57 min
- Bus 8 Riponne-M.Béjart +55 min
- ICE Basel Bad Bf – Basel SBB Basel Bad Bf +54 min
- Bus 765 Dietlikon, Schwimmbad – Zürich Flughafen, Bahnhof Zürich Flughafen, Bahnhof +54 min
- Bus 811 Mals, Bahnhof/Malles, stazione +53 min
- IR95 Brig +53 min