Punctuality of Swiss public transportThursday 2 April 2026
85.8% of 151,490 trips were on time. The share was lowest at 17:20: 65.6%. Of the busy lines, Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'Rue had the lowest share on time: 17.2%.
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.
85.8%
−0.9 ptsDay before: 86.7% · 151,490 trips with live data
Average delay
+1.4 min
Canceled trips
458
0.3% of the trips
The day in numbers
From the timetable of the day, and its trips with live data.
Through the day
The share of the trips on their way that are less than 3 minutes late, every 10 minutes.
- ≥ 95%
- Dashed: Wednesday 1 April
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 95.2%
14,416 trips · avg +0.7 min
-
Tram 83.5%
11,621 trips · avg +1.7 min
-
Bus 85%
124,754 trips · avg +1.5 min
-
Metro 85.7%
336 trips · avg +1.5 min
-
Boat 51.8%
363 trips · avg +3.9 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 Marin-Epagnier, gare – Cormondrèche, Grand'RueMarin-Epagnier, gare – Cormondrèche, Grand'Rue 17.2%
238 trips · avg +7.1 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 31.1%
148 trips · avg +5 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 35.3%
207 trips · avg +4.8 min
-
149 trips · avg +3.9 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 36.2%
152 trips · avg +7.9 min
-
59 trips · avg +3.8 min
-
74 trips · avg +4.4 min
-
57 trips · avg +6.4 min
Show 17 more
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 42.5%
266 trips · avg +5 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 43.3%
215 trips · avg +3.7 min
-
175 trips · avg +4.4 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 43.7%
71 trips · avg +5.2 min
-
95 trips · avg +4.1 min
-
Bus 16 Muzzano, Paese – Lugano, Stazione/Via BasileaMuzzano, Paese – Lugano, Stazione/Via Basilea 46.7%
45 trips · avg +4.7 min
-
Bus 361 La Chaux-de-Fonds, gare – Le Locle, TechnicumLa Chaux-de-Fonds, gare – Le Locle, Technicum 48.5%
66 trips · avg +3.9 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 49.1%
218 trips · avg +6.8 min
-
75 trips · avg +3.3 min
-
85 trips · avg +3 min
-
48 trips · avg +3.2 min
-
92 trips · avg +3.6 min
-
202 trips · avg +4.9 min
-
59 trips · avg +3.6 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 53.2%
62 trips · avg +3.5 min
-
40 trips · avg +2.7 min
-
98 trips · avg +4.3 min
Most punctual busy lines
-
324 trips · avg +0.7 min
-
306 trips · avg +0.8 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 95%
398 trips · avg +0.8 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 94.9%
277 trips · avg +0.8 min
-
344 trips · avg +1 min
-
292 trips · avg +1.1 min
-
386 trips · avg +1.3 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 92.3%
284 trips · avg +1.1 min
Least punctual busy lines
-
68 trips · avg +8.1 min
-
108 trips · avg +2.1 min
-
132 trips · avg +1.5 min
-
74 trips · avg +2.5 min
-
76 trips · avg +1.6 min
-
53 trips · avg +1.9 min
-
121 trips · avg +1.5 min
-
R15 Neuchâtel Place Pury Littorail – Boudry LittorailNeuchâtel Place Pury Littorail – Boudry Littorail 85.2%
115 trips · avg +1.5 min
Show 17 more
-
48 trips · avg +2.5 min
-
62 trips · avg +1.5 min
-
40 trips · avg +1 min
-
94 trips · avg +1.1 min
-
107 trips · avg +1.1 min
-
59 trips · avg +1.3 min
-
41 trips · avg +1.1 min
-
76 trips · avg +0.8 min
-
87 trips · avg +1.2 min
-
92 trips · avg +1.3 min
-
41 trips · avg +0.3 min
-
55 trips · avg +0.8 min
-
45 trips · avg +0.5 min
-
81 trips · avg +0.8 min
-
86 trips · avg +0.7 min
-
69 trips · avg +0.3 min
-
53 trips · avg +0.7 min
Most punctual busy lines
-
151 trips · avg +0.2 min
-
116 trips · avg +0.3 min
-
96 trips · avg +0.2 min
-
91 trips · avg +0.3 min
-
80 trips · avg +0.3 min
-
80 trips · avg +0.3 min
-
79 trips · avg +0.2 min
-
78 trips · avg +0.4 min
Least punctual busy lines
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 61.8%
322 trips · avg +3 min
-
253 trips · avg +4.1 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 69.7%
290 trips · avg +2.7 min
-
304 trips · avg +2.2 min
-
401 trips · avg +3.6 min
-
294 trips · avg +1.8 min
-
316 trips · avg +2.1 min
-
300 trips · avg +2.3 min
Show 17 more
-
286 trips · avg +2 min
-
440 trips · avg +1.8 min
-
301 trips · avg +1.7 min
-
324 trips · avg +1.8 min
-
308 trips · avg +1.8 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 83%
282 trips · avg +1.5 min
-
380 trips · avg +1.7 min
-
307 trips · avg +1.4 min
-
298 trips · avg +1.8 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 86.9%
290 trips · avg +1.6 min
-
288 trips · avg +1.5 min
-
227 trips · avg +1.6 min
-
282 trips · avg +1.2 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 88.8%
392 trips · avg +1.4 min
-
295 trips · avg +1.2 min
-
104 trips · avg +1.1 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 89.6%
308 trips · avg +1.2 min
Most punctual busy lines
-
184 trips · avg +0.6 min
-
324 trips · avg +0.7 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 96.1%
155 trips · avg +0.9 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 96.1%
154 trips · avg +1 min
-
292 trips · avg +1.1 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 92.3%
284 trips · avg +1.1 min
-
304 trips · avg +1.2 min
-
Tram 5 Zürich Stadelhofen, Bahnhof – Zürich, LaubeggZürich Stadelhofen, Bahnhof – Zürich, Laubegg 91.2%
238 trips · avg +1.2 min
Least punctual busy lines
-
Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'RueMarin-Epagnier, gare – Cormondrèche, Grand'Rue 17.2%
238 trips · avg +7.1 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 35.3%
207 trips · avg +4.8 min
-
149 trips · avg +3.9 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 36.2%
152 trips · avg +7.9 min
-
59 trips · avg +3.8 min
-
74 trips · avg +4.4 min
-
57 trips · avg +6.4 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 42.5%
266 trips · avg +5 min
Show 17 more
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 43.3%
215 trips · avg +3.7 min
-
175 trips · avg +4.4 min
-
Bus 54 Versoix, Centre sportif – Vernier, ParfumerieVersoix, Centre sportif – Vernier, Parfumerie 43.7%
71 trips · avg +5.2 min
-
95 trips · avg +4.1 min
-
Bus 16 Muzzano, Paese – Lugano, Stazione/Via BasileaMuzzano, Paese – Lugano, Stazione/Via Basilea 46.7%
45 trips · avg +4.7 min
-
Bus 361 La Chaux-de-Fonds, gare – Le Locle, TechnicumLa Chaux-de-Fonds, gare – Le Locle, Technicum 48.5%
66 trips · avg +3.9 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 49.1%
218 trips · avg +6.8 min
-
75 trips · avg +3.3 min
-
85 trips · avg +3 min
-
48 trips · avg +3.2 min
-
92 trips · avg +3.6 min
-
202 trips · avg +4.9 min
-
59 trips · avg +3.6 min
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 53.2%
62 trips · avg +3.5 min
-
40 trips · avg +2.7 min
-
98 trips · avg +4.3 min
-
56 trips · avg +3.6 min
Most punctual busy lines
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 98.1%
265 trips · avg +1 min
-
228 trips · avg +0.5 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 96.7%
239 trips · avg +0.7 min
-
246 trips · avg +0.9 min
-
237 trips · avg +0.8 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 95%
398 trips · avg +0.8 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 94.9%
277 trips · avg +0.8 min
-
344 trips · avg +1 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) 31.1%
148 trips · avg +5 min
-
148 trips · avg +3.7 min
-
50 trips · avg +1.6 min
Least punctual operators
-
Mouettes genevoises 51.8%
363 trips · avg +3.9 min
-
TPL 60%
1,613 trips · avg +3.9 min
-
Transports Publics Neuchâtelois 68.5%
2,835 trips · avg +2.7 min
-
Auto AG Rothenburg 71.1%
736 trips · avg +2.3 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 71.3%
108 trips · avg +2.1 min
-
Bus Nyon-Prangins 71.5%
386 trips · avg +3 min
-
VBL 72%
3,463 trips · avg +2.5 min
-
Automobil Rottal 73.2%
421 trips · avg +2.1 min
Show 17 more
-
Autobetrieb Sernftal 74.1%
112 trips · avg +2.1 min
-
TPG 74.3%
9,750 trips · avg +2.3 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 75.4%
305 trips · avg +1.8 min
-
Busbetrieb Solothurn und Umgebung 75.7%
754 trips · avg +2.1 min
-
Stadtbus Frauenfeld 76.7%
553 trips · avg +1.9 min
-
Lugano-Ponte Tresa 77.3%
132 trips · avg +1.5 min
-
BVB 77.9%
4,971 trips · avg +2 min
-
Regiobus Gossau SG 78.5%
679 trips · avg +2.2 min
-
tl 78.6%
6,930 trips · avg +2.1 min
-
Sierre-Montana-Crans 78.8%
283 trips · avg +1.9 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 79.9%
841 trips · avg +1.9 min
-
Busbetrieb Aarau 80.4%
958 trips · avg +1.7 min
-
Transports publics Vevey-Montreux-Chillon-Villeneuve 80.6%
1,204 trips · avg +1.6 min
-
TPF 80.8%
4,160 trips · avg +1.6 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 81.2%
1,398 trips · avg +1.6 min
-
Autolinea Mendrisiense 81.3%
374 trips · avg +1.5 min
-
Autolinee FART 81.6%
727 trips · avg +1.6 min
Most punctual operators
-
THURBO 98.9%
1,112 trips · avg +0.3 min
-
BLS 98.3%
1,575 trips · avg +0.4 min
-
Aare Seeland mobil 99.1%
330 trips · avg +0.4 min
-
Regionalverkehr Bern-Solothurn 98.6%
581 trips · avg +0.3 min
-
Zentralbahn 98.6%
361 trips · avg +0.2 min
-
Schweizerische Südostbahn 97.9%
516 trips · avg +0.4 min
-
Automobildienst SZU 96.4%
1,769 trips · avg +0.6 min
-
Wengernalpbahn 99.2%
119 trips · avg +0.3 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 96.6%
1,726 departures · avg +1 min
-
Bern 98.1%
1,064 departures · avg +0.8 min
-
Zürich Oerlikon 97.5%
919 departures · avg +1 min
-
698 departures · avg +1.2 min
-
Winterthur 97.7%
690 departures · avg +1 min
-
Zürich Hardbrücke 88.3%
676 departures · avg +2 min
-
Olten 91.4%
605 departures · avg +1.3 min
-
St. Gallen 92.9%
532 departures · avg +1.3 min
-
Aarau 95.6%
524 departures · avg +0.9 min
-
Lausanne 92.8%
502 departures · avg +1.3 min
-
Renens VD 92.7%
493 departures · avg +1.2 min
-
Luzern 96.5%
462 departures · avg +0.9 min
-
Genève, gare Cornavin 76.3%
3,190 departures · avg +2.2 min
-
Bern, Bahnhof 94.1%
3,102 departures · avg +1.2 min
-
Genève, Bel-Air 75.3%
3,063 departures · avg +2.5 min
-
Basel, Schifflände 81.9%
2,346 departures · avg +1.9 min
-
Bern, Hirschengraben 90.6%
2,333 departures · avg +1.5 min
-
Zürich, Central 93.1%
2,304 departures · avg +1.1 min
-
Bern, Zytglogge 89.7%
2,258 departures · avg +1.5 min
-
Luzern, Kantonalbank 76.6%
2,185 departures · avg +2.3 min
-
Basel, Bahnhof SBB 86.5%
2,182 departures · avg +1.7 min
-
Zürich, Bellevue 92.6%
2,156 departures · avg +1.2 min
-
Lausanne, Bel-Air 66.3%
2,141 departures · avg +2.9 min
-
St. Gallen, Bahnhof 87.5%
2,120 departures · avg +1.5 min
-
Magliaso Paese 64.4%
132 departures · avg +3 min
-
Magliaso 65.9%
132 departures · avg +2.8 min
-
Agno 65.9%
132 departures · avg +3 min
-
Serocca 68.2%
132 departures · avg +2.7 min
-
Bioggio Molinazzo 68.2%
132 departures · avg +2.5 min
-
Givrins 68.5%
108 departures · avg +2.5 min
-
Zufikon 68.6%
153 departures · avg +2.2 min
-
St. Gallen Marktplatz 68.8%
112 departures · avg +2.6 min
-
Lustmühle 69.1%
110 departures · avg +2.8 min
-
Les Plantaz 69.4%
108 departures · avg +2.5 min
-
L'Asse 69.4%
108 departures · avg +2.8 min
-
St. Gallen Güterbahnhof 70.9%
110 departures · avg +2.4 min
Largest delays
- Bus 3 Lausanne, gare – Le Mont-sur-L., Maillefer Maillefer +115 min
- EC Bregenz – Zürich HB Zürich HBand 1 more trips of this line +93 min
- Tram 12 Lancy-Bachet, gare – Thônex, Moillesulaz Thônex, Moillesulazand 11 more trips of this line +72 min
- Tram 6 Worb Dorf – Bern, Fischermätteli Bern, Bärenplatz +72 min
- Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, Verwaltung Basel, Bahnhof SBB +70 min
- Bus 18 Lausanne, Clochatte – Crissier, Timonet Crissier Timonet +69 min
- A Genève, Rive – Gy, temple Genève, Rive +66 min
- Tram 17 Lancy-Pont-Rouge, gareand 1 more trips of this line +64 min
- Bus 121 Düdingen, Bahnhof – Laupen BE, Bahnhof Bösingen, Cholholz +61 min
- Bus 8 Veyrier, douane – Grand-Saconnex, Palexpo Grand-Saconnex, Palexpo +58 min
- Bus 171 Chur, Postautostationand 1 more trips of this line +58 min
- Tram 14 Basel, Dreirosenbrücke – Pratteln, Schlossstrasse Pratteln, Schlossstrasseand 1 more trips of this line +57 min
- ICE Basel Bad Bfand 1 more trips of this line +56 min
- RE3 Singen (Hohentwiel) +56 min
- Bus 341 Sion, poste/gare – Sion, poste/gare Sion, poste/gare +54 min