Punctuality of Swiss public transportThursday 16 July 2026
89.1% of 150,777 trips were on time. The share was lowest at 17:20: 77%. Of the busy lines, Bus 15 Lugano, Stazione/Via Basilea – Muzzano, Paese had the lowest share on time: 28.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.
89.1%
−0.4 ptsDay before: 89.5% · 150,777 trips with live data
Average delay
+1.2 min
Canceled trips
962
0.6% 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 15 July
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 92.2%
14,174 trips · avg +1 min
-
Tram 83.3%
13,039 trips · avg +1.6 min
-
Bus 89.4%
122,824 trips · avg +1.1 min
-
Metro 86.8%
296 trips · avg +1.5 min
-
Boat 51.8%
444 trips · avg +3.8 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 15 Lugano, Stazione/Via Basilea – Muzzano, PaeseLugano, Stazione/Via Basilea – Muzzano, Paese 28.9%
45 trips · avg +10.6 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 28.9%
166 trips · avg +5.4 min
-
166 trips · avg +4.2 min
-
Bus 7 Vernier, Lignon Tours – Vessy, Grands-EssertsVernier, Lignon Tours – Vessy, Grands-Esserts 46.7%
199 trips · avg +4.1 min
-
186 trips · avg +3.6 min
-
59 trips · avg +12.5 min
-
56 trips · avg +2.5 min
-
Bus 55 Chavannes-des-Bois – Genève-Aéroport, TerminalChavannes-des-Bois – Genève-Aéroport, Terminal 52%
75 trips · avg +4.4 min
Show 17 more
-
99 trips · avg +2.9 min
-
222 trips · avg +3.3 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 55.3%
206 trips · avg +3 min
-
Bus 82 Pratteln, Zentrum Grüssen – Pratteln, ChästeliPratteln, Zentrum Grüssen – Pratteln, Chästeli 55.4%
83 trips · avg +3.2 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 55.7%
70 trips · avg +2.8 min
-
73 trips · avg +3.2 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 58.4%
245 trips · avg +3 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 59%
268 trips · avg +2.8 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 59.2%
218 trips · avg +3.5 min
-
49 trips · avg +2.9 min
-
214 trips · avg +3.3 min
-
286 trips · avg +2.9 min
-
284 trips · avg +2.8 min
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 61.4%
303 trips · avg +3 min
-
47 trips · avg +3.9 min
-
224 trips · avg +3 min
-
175 trips · avg +2.6 min
Most punctual busy lines
-
333 trips · avg +0.9 min
-
255 trips · avg +0.6 min
-
268 trips · avg +0.7 min
-
300 trips · avg +0.7 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 97%
265 trips · avg +0.7 min
-
277 trips · avg +1 min
-
260 trips · avg +0.6 min
-
Bus 768 Zürich Oerlikon, Bahnhof – Zürich Flughafen, BahnhofZürich Oerlikon, Bahnhof – Zürich Flughafen, Bahnhof 95.9%
244 trips · avg +1.1 min
Least punctual busy lines
-
59 trips · avg +12.5 min
-
79 trips · avg +2.7 min
-
58 trips · avg +2.1 min
-
40 trips · avg +2.5 min
-
106 trips · avg +1.4 min
-
41 trips · avg +1.5 min
-
42 trips · avg +1.7 min
-
71 trips · avg +1.3 min
Show 17 more
-
78 trips · avg +1.2 min
-
98 trips · avg +1.5 min
-
79 trips · avg +1.4 min
-
40 trips · avg +1.1 min
-
82 trips · avg +2.5 min
-
58 trips · avg +1.9 min
-
60 trips · avg +1.3 min
-
46 trips · avg +1.1 min
-
78 trips · avg +1.3 min
-
47 trips · avg +1.2 min
-
40 trips · avg +1.4 min
-
41 trips · avg +1.4 min
-
68 trips · avg +1.1 min
-
108 trips · avg +1.6 min
-
45 trips · avg +1.1 min
-
101 trips · avg +1.5 min
-
76 trips · avg +1.3 min
Most punctual busy lines
-
208 trips · avg +0.2 min
-
118 trips · avg +0.3 min
-
R15 Neuchâtel Place Pury Littorail – Boudry LittorailNeuchâtel Place Pury Littorail – Boudry Littorail 100%
116 trips · avg +0.6 min
-
93 trips · avg +0.2 min
-
81 trips · avg +0.3 min
-
78 trips · avg +0.8 min
-
87 trips · avg +0.3 min
-
77 trips · avg +0.5 min
Least punctual busy lines
-
284 trips · avg +2.8 min
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 61.4%
303 trips · avg +3 min
-
276 trips · avg +2.2 min
-
279 trips · avg +2.3 min
-
278 trips · avg +2.3 min
-
285 trips · avg +1.8 min
-
274 trips · avg +1.9 min
-
Tram 21 Basel, Bahnhof St. Johann – Basel, Badischer BahnhofBasel, Bahnhof St. Johann – Basel, Badischer Bahnhof 76.5%
272 trips · avg +2.1 min
Show 17 more
-
335 trips · avg +1.9 min
-
415 trips · avg +1.6 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 81.9%
359 trips · avg +1.7 min
-
294 trips · avg +1.5 min
-
165 trips · avg +1.8 min
-
496 trips · avg +1.2 min
-
289 trips · avg +1.4 min
-
311 trips · avg +1.5 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 89.3%
290 trips · avg +1.4 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 90.4%
282 trips · avg +1.3 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 90.5%
295 trips · avg +1.2 min
-
290 trips · avg +1.2 min
-
289 trips · avg +1.2 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 92.6%
282 trips · avg +1.1 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 92.8%
153 trips · avg +1.2 min
-
271 trips · avg +0.8 min
-
257 trips · avg +1.1 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.7%
154 trips · avg +0.6 min
-
268 trips · avg +0.7 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 94.6%
278 trips · avg +1 min
-
257 trips · avg +1.1 min
-
271 trips · avg +0.8 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 92.8%
153 trips · avg +1.2 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 92.6%
282 trips · avg +1.1 min
-
289 trips · avg +1.2 min
Least punctual busy lines
-
Bus 15 Lugano, Stazione/Via Basilea – Muzzano, PaeseLugano, Stazione/Via Basilea – Muzzano, Paese 28.9%
45 trips · avg +10.6 min
-
Bus 7 Vernier, Lignon Tours – Vessy, Grands-EssertsVernier, Lignon Tours – Vessy, Grands-Esserts 46.7%
199 trips · avg +4.1 min
-
186 trips · avg +3.6 min
-
56 trips · avg +2.5 min
-
Bus 55 Chavannes-des-Bois – Genève-Aéroport, TerminalChavannes-des-Bois – Genève-Aéroport, Terminal 52%
75 trips · avg +4.4 min
-
99 trips · avg +2.9 min
-
222 trips · avg +3.3 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 55.3%
206 trips · avg +3 min
Show 17 more
-
Bus 82 Pratteln, Zentrum Grüssen – Pratteln, ChästeliPratteln, Zentrum Grüssen – Pratteln, Chästeli 55.4%
83 trips · avg +3.2 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 55.7%
70 trips · avg +2.8 min
-
73 trips · avg +3.2 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 58.4%
245 trips · avg +3 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 59%
268 trips · avg +2.8 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 59.2%
218 trips · avg +3.5 min
-
49 trips · avg +2.9 min
-
214 trips · avg +3.3 min
-
286 trips · avg +2.9 min
-
47 trips · avg +3.9 min
-
224 trips · avg +3 min
-
175 trips · avg +2.6 min
-
99 trips · avg +3 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 63.4%
71 trips · avg +2.9 min
-
47 trips · avg +3.5 min
-
206 trips · avg +3.3 min
-
Bus 11 Genève, Jardin Botanique – Genève-Eaux-Vives, gareGenève, Jardin Botanique – Genève-Eaux-Vives, gare 64.7%
190 trips · avg +2.7 min
Most punctual busy lines
-
231 trips · avg +0.6 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 98.3%
242 trips · avg +0.7 min
-
333 trips · avg +0.9 min
-
255 trips · avg +0.6 min
-
216 trips · avg +0.4 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 97.6%
207 trips · avg +0.7 min
-
216 trips · avg +0.7 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 97%
265 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) 28.9%
166 trips · avg +5.4 min
-
166 trips · avg +4.2 min
-
M4 Genève-Port Noir (lac) – Genève-De-Châteaubriand (lac)Genève-Port Noir (lac) – Genève-De-Châteaubriand (lac) 91.1%
56 trips · avg +1.2 min
-
56 trips · avg +0.8 min
Least punctual operators
-
Mouettes genevoises 51.8%
444 trips · avg +3.8 min
-
Autobetrieb Sernftal 65.6%
122 trips · avg +3.2 min
-
Berner Oberland-Bahnen 69.3%
137 trips · avg +2.4 min
-
TPG 72.3%
9,366 trips · avg +2.3 min
-
TPL 73.4%
1,596 trips · avg +2.5 min
-
VBL 78%
3,783 trips · avg +1.9 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 79%
1,318 trips · avg +1.9 min
-
BVB 80.4%
5,103 trips · avg +1.8 min
Show 17 more
-
Transports Publics Neuchâtelois 81.9%
2,891 trips · avg +1.6 min
-
tl 83.9%
6,432 trips · avg +1.6 min
-
Auto AG Rothenburg 84.1%
736 trips · avg +1.5 min
-
Forchbahn 84.2%
165 trips · avg +1.8 min
-
AFA Bus 84.3%
235 trips · avg +1.2 min
-
Wengernalpbahn 84.3%
153 trips · avg +1.2 min
-
Automobil Rottal 84.4%
454 trips · avg +1.4 min
-
Bus und Service 84.9%
1,581 trips · avg +1.5 min
-
Chemins de fer du Jura 85%
120 trips · avg +1 min
-
Autolinee FART 85.1%
716 trips · avg +1.4 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 85.2%
867 trips · avg +1.5 min
-
Transports Vallée de Joux-Yverdon-Ste-Croix 85.4%
1,083 trips · avg +1.3 min
-
Autobus AG Liestal 86.2%
908 trips · avg +1.3 min
-
Busbetrieb Aarau 86.4%
909 trips · avg +1.3 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 86.4%
1,380 trips · avg +1.6 min
-
Transports Publics du Chablais 86.6%
1,123 trips · avg +1.4 min
-
VBZ 87.1%
16,401 trips · avg +1.4 min
Most punctual operators
-
Bamert Bus 100%
172 trips · avg +0.5 min
-
Regionalverkehr Bern-Solothurn 98.3%
604 trips · avg +0.3 min
-
Verkehrsbetriebe Schaffhausen 97.5%
1,953 trips · avg +0.7 min
-
Verkehrsbetriebe Herisau 98.4%
370 trips · avg +0.9 min
-
Verkehrsbetriebe Kreuzlingen 98.1%
478 trips · avg +0.9 min
-
Automobiles MBC 97.1%
1,160 trips · avg +0.5 min
-
Zentralbahn 97.8%
367 trips · avg +0.4 min
-
Zugerland Verkehrsbetriebe 96.1%
2,928 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 90.9%
1,546 departures · avg +1.4 min
-
Bern 95.2%
1,058 departures · avg +1 min
-
Zürich Oerlikon 92.5%
912 departures · avg +1.2 min
-
Zürich Stadelhofen 88.6%
692 departures · avg +1.5 min
-
Winterthur 87.9%
679 departures · avg +1.9 min
-
Zürich Hardbrücke 84.9%
669 departures · avg +2.1 min
-
Olten 87.5%
568 departures · avg +1.7 min
-
St. Gallen 90.9%
536 departures · avg +1.6 min
-
Lausanne 92.4%
525 departures · avg +1.2 min
-
Aarau 89.4%
520 departures · avg +1.2 min
-
Worblaufen 97.1%
480 departures · avg +0.8 min
-
Renens VD 92.3%
467 departures · avg +1.3 min
-
Genève, gare Cornavin 72.6%
2,712 departures · avg +2.2 min
-
Genève, Bel-Air 65.9%
2,403 departures · avg +2.6 min
-
Basel, Bahnhof SBB 82.3%
2,282 departures · avg +1.8 min
-
Bern, Bahnhof 95.1%
2,221 departures · avg +1 min
-
Zürich, Central 90.9%
2,179 departures · avg +1.2 min
-
Luzern, Kantonalbank 84.1%
2,154 departures · avg +1.8 min
-
Zürich, Bellevue 89.2%
2,014 departures · avg +1.4 min
-
Luzern, Bahnhof 90.3%
1,914 departures · avg +1.2 min
-
Bern, Zytglogge 94.6%
1,902 departures · avg +1.1 min
-
1,899 departures · avg +1 min
-
1,898 departures · avg +2.5 min
-
St. Gallen, Bahnhof 95.1%
1,874 departures · avg +1 min
-
Sonceboz-Sombeval 61.9%
105 departures · avg +3.3 min
-
Wilderswil 65.9%
135 departures · avg +2.6 min
-
Matten b. Interlaken 68.1%
135 departures · avg +2.7 min
-
Zweilütschinen 71.1%
121 departures · avg +2.3 min
-
Muhen Nord 71.5%
151 departures · avg +1.7 min
-
Mulhouse 71.6%
109 departures · avg +7.2 min
-
Gelterkinden 71.6%
134 departures · avg +2 min
-
Oberentfelden Engelplatz 72.2%
151 departures · avg +1.7 min
-
St. Gallen Güterbahnhof 72.2%
108 departures · avg +2.3 min
-
Lustmühle 72.2%
108 departures · avg +2.8 min
-
St. Gallen Marktplatz 75.5%
110 departures · avg +2.2 min
-
S. Antonino 76.4%
161 departures · avg +2.4 min
Largest delays
- Bus 20 Lausanne, gare – Lausanne, Blécherette Blécheretteand 2 more trips of this line +169 min
- Bus 25 Glycines +113 min
- R85 Vallorcine (F) +88 min
- Bus 624 Soglio, Paese – Promontogno, Posta Soglio, Paeseand 2 more trips of this line +73 min
- R41 Biel/Bienne +65 min
- Bus 531 Obertschappina – Thusis, Bahnhof Thusis, Bahnhof +61 min
- Bus 18 Lausanne, Clochatte – Crissier, Timonet Clochatte +59 min
- Bus 21 Onex, cité +58 min
- Bus 11 Sargans, Bahnhof – Feldkirch, Bahnhof Feldkirch, Bahnhof +58 min
- ICE Basel Bad Bf – Basel SBB Basel SBBand 9 more trips of this line +56 min
- Tram 10 Rodersdorf, Station – Dornach, Bahnhof Ettingen, Dorf +55 min
- EC Bregenz – Zürich HB Zürich HBand 3 more trips of this line +53 min
- Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nord Prilly Mt-Goulinand 1 more trips of this line +53 min
- Bus 55 Chavannes-des-Bois – Genève-Aéroport, Terminal Chavannes-des-Bois +52 min
- NJ Basel Bad Bf +52 min