Punctuality of Swiss public transportThursday 26 February 2026
85.7% of 150,040 trips were on time. The share was lowest at 17:30: 63%. Of the busy lines, Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gare had the lowest share on time: 17%.
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.7%
−0.2 ptsDay before: 85.9% · 150,040 trips with live data
Average delay
+1.4 min
Canceled trips
381
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: Wednesday 25 February
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 93.7%
14,482 trips · avg +0.9 min
-
Tram 82.8%
11,565 trips · avg +1.6 min
-
Bus 85.1%
123,313 trips · avg +1.5 min
-
Metro 90.3%
340 trips · avg +1.3 min
-
Boat 52.9%
340 trips · avg +3.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 17%
194 trips · avg +5.2 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.2%
148 trips · avg +6.2 min
-
56 trips · avg +4.5 min
-
149 trips · avg +4.8 min
-
62 trips · avg +4.1 min
-
74 trips · avg +4.4 min
-
Bus 3 Biel/Bienne, Mösliacker/Pt-Mar – Biel/Bienne, Vorhölzli/Bois-DvBiel/Bienne, Mösliacker/Pt-Mar – Biel/Bienne, Vorhölzli/Bois-Dv 44%
141 trips · avg +4 min
-
123 trips · avg +6.4 min
Show 17 more
-
132 trips · avg +4 min
-
175 trips · avg +3 min
-
169 trips · avg +4.4 min
-
Bus 72 Biel/Bienne, Bahnhof/Gare – Meinisberg, RüttiBiel/Bienne, Bahnhof/Gare – Meinisberg, Rütti 54.1%
85 trips · avg +3.7 min
-
213 trips · avg +3.7 min
-
76 trips · avg +3.7 min
-
136 trips · avg +2.9 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 57.1%
205 trips · avg +2.9 min
-
Bus 66 Thoiry, Centre commercial – Genève-Aéroport, TerminalThoiry, Centre commercial – Genève-Aéroport, Terminal 57.1%
84 trips · avg +9.2 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 57.3%
110 trips · avg +2.9 min
-
160 trips · avg +2.8 min
-
Bus 16 Lausanne, Grand Vennes – Lausanne, Provence nordLausanne, Grand Vennes – Lausanne, Provence nord 58.6%
152 trips · avg +3.5 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 58.9%
151 trips · avg +3.3 min
-
151 trips · avg +3 min
-
92 trips · avg +3.2 min
-
157 trips · avg +7.3 min
-
Bus 163 Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr.Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr. 60.5%
76 trips · avg +2.3 min
Most punctual busy lines
-
216 trips · avg +0.6 min
-
306 trips · avg +0.7 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 96.6%
386 trips · avg +0.6 min
-
218 trips · avg +0.6 min
-
240 trips · avg +1 min
-
293 trips · avg +0.9 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 93.8%
240 trips · avg +1 min
-
Bus 768 Zürich Oerlikon, Bahnhof – Zürich Flughafen, BahnhofZürich Oerlikon, Bahnhof – Zürich Flughafen, Bahnhof 93.4%
244 trips · avg +1.3 min
Least punctual busy lines
-
65 trips · avg +5.3 min
-
66 trips · avg +2.5 min
-
107 trips · avg +2.2 min
-
77 trips · avg +2.2 min
-
77 trips · avg +1.7 min
-
40 trips · avg +1.5 min
-
41 trips · avg +1.7 min
-
58 trips · avg +1.6 min
Show 17 more
-
79 trips · avg +1.5 min
-
82 trips · avg +1.4 min
-
74 trips · avg +1.4 min
-
76 trips · avg +1.5 min
-
77 trips · avg +1.1 min
-
121 trips · avg +1.4 min
-
70 trips · avg +1.8 min
-
71 trips · avg +2 min
-
85 trips · avg +1 min
-
48 trips · avg +1.4 min
-
40 trips · avg +1.1 min
-
53 trips · avg +1 min
-
75 trips · avg +1.1 min
-
80 trips · avg +1.1 min
-
48 trips · avg +1 min
-
76 trips · avg +1.1 min
-
55 trips · avg +0.8 min
Most punctual busy lines
-
208 trips · avg +0.2 min
-
144 trips · avg +0.2 min
-
132 trips · avg +0.3 min
-
126 trips · avg +0.2 min
-
118 trips · avg +0.1 min
-
80 trips · avg +0.3 min
-
79 trips · avg +0.1 min
-
78 trips · avg +0.1 min
Least punctual busy lines
-
288 trips · avg +2.7 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 66.2%
284 trips · avg +2.7 min
-
294 trips · avg +1.9 min
-
275 trips · avg +2 min
-
297 trips · avg +1.8 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 82.3%
350 trips · avg +1.9 min
-
297 trips · avg +1.8 min
-
384 trips · avg +1.7 min
Show 10 more
-
307 trips · avg +1.7 min
-
303 trips · avg +1.8 min
-
304 trips · avg +1.5 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 87.1%
303 trips · avg +1.4 min
-
276 trips · avg +1.4 min
-
296 trips · avg +1 min
-
176 trips · avg +0.8 min
-
293 trips · avg +0.9 min
-
216 trips · avg +0.6 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.7%
155 trips · avg +0.9 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.7%
155 trips · avg +0.9 min
-
216 trips · avg +0.6 min
-
293 trips · avg +0.9 min
-
176 trips · avg +0.8 min
-
296 trips · avg +1 min
-
276 trips · avg +1.4 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 87.1%
303 trips · avg +1.4 min
-
304 trips · avg +1.5 min
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 17%
194 trips · avg +5.2 min
-
56 trips · avg +4.5 min
-
149 trips · avg +4.8 min
-
62 trips · avg +4.1 min
-
74 trips · avg +4.4 min
-
Bus 3 Biel/Bienne, Mösliacker/Pt-Mar – Biel/Bienne, Vorhölzli/Bois-DvBiel/Bienne, Mösliacker/Pt-Mar – Biel/Bienne, Vorhölzli/Bois-Dv 44%
141 trips · avg +4 min
-
123 trips · avg +6.4 min
-
132 trips · avg +4 min
Show 17 more
-
175 trips · avg +3 min
-
169 trips · avg +4.4 min
-
Bus 72 Biel/Bienne, Bahnhof/Gare – Meinisberg, RüttiBiel/Bienne, Bahnhof/Gare – Meinisberg, Rütti 54.1%
85 trips · avg +3.7 min
-
213 trips · avg +3.7 min
-
76 trips · avg +3.7 min
-
136 trips · avg +2.9 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 57.1%
205 trips · avg +2.9 min
-
Bus 66 Thoiry, Centre commercial – Genève-Aéroport, TerminalThoiry, Centre commercial – Genève-Aéroport, Terminal 57.1%
84 trips · avg +9.2 min
-
Bus 165 Rüschlikon, Park im Grüene – Zürich, BürkliplatzRüschlikon, Park im Grüene – Zürich, Bürkliplatz 57.3%
110 trips · avg +2.9 min
-
160 trips · avg +2.8 min
-
Bus 16 Lausanne, Grand Vennes – Lausanne, Provence nordLausanne, Grand Vennes – Lausanne, Provence nord 58.6%
152 trips · avg +3.5 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 58.9%
151 trips · avg +3.3 min
-
151 trips · avg +3 min
-
157 trips · avg +7.3 min
-
Bus 163 Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr.Kilchberg ZH, Bahnhof – Kilchberg ZH, Schlimbergstr. 60.5%
76 trips · avg +2.3 min
-
104 trips · avg +2.6 min
-
Bus 898 Büren an der Aare, Bahnhof – Münchenbuchsee, BahnhofBüren an der Aare, Bahnhof – Münchenbuchsee, Bahnhof 60.8%
51 trips · avg +2.5 min
Most punctual busy lines
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 99.5%
207 trips · avg +0.7 min
-
201 trips · avg +0.8 min
-
198 trips · avg +0.4 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 96.6%
386 trips · avg +0.6 min
-
218 trips · avg +0.6 min
-
240 trips · avg +1 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 93.8%
240 trips · avg +1 min
-
Bus 768 Zürich Oerlikon, Bahnhof – Zürich Flughafen, BahnhofZürich Oerlikon, Bahnhof – Zürich Flughafen, Bahnhof 93.4%
244 trips · avg +1.3 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.2%
148 trips · avg +6.2 min
-
92 trips · avg +3.2 min
-
50 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) 98%
50 trips · avg +0.4 min
Least punctual operators
-
Mouettes genevoises 52.9%
340 trips · avg +3.7 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 67%
303 trips · avg +2.5 min
-
Automobil Rottal 68.6%
455 trips · avg +2.5 min
-
VBL 68.9%
3,899 trips · avg +2.8 min
-
TPL 71.4%
1,612 trips · avg +2.3 min
-
Verkehrsbetriebe Biel 71.4%
1,404 trips · avg +2.5 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 71.5%
876 trips · avg +2.5 min
-
Autobetrieb Sernftal 71.7%
113 trips · avg +2.2 min
Show 17 more
-
Busbetrieb Aarau 72.8%
933 trips · avg +3 min
-
Auto AG Rothenburg 74.3%
760 trips · avg +2.1 min
-
Bus Nyon-Prangins 74.5%
385 trips · avg +1.9 min
-
Sierre-Montana-Crans 74.6%
283 trips · avg +2.2 min
-
TPG 74.7%
8,772 trips · avg +2.1 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 76.6%
1,387 trips · avg +2.7 min
-
Automobildienste Aare Seeland mobil 77.2%
658 trips · avg +2 min
-
BVB 77.9%
4,783 trips · avg +1.9 min
-
Bus und Service 78.1%
1,519 trips · avg +2 min
-
tl 78.5%
6,757 trips · avg +2 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 78.7%
108 trips · avg +2 min
-
Busbetrieb Solothurn und Umgebung 79%
749 trips · avg +1.7 min
-
Transports Publics Neuchâtelois 80.3%
2,781 trips · avg +1.7 min
-
TPF 81%
4,130 trips · avg +1.5 min
-
Berner Oberland-Bahnen 81.5%
135 trips · avg +1.9 min
-
Automobiles MBC 81.9%
1,217 trips · avg +2.7 min
-
VBZ 82.1%
16,844 trips · avg +1.7 min
Most punctual operators
-
Regionalverkehr Bern-Solothurn 100%
596 trips · avg +0.2 min
-
Zentralbahn 100%
357 trips · avg +0.2 min
-
Aare Seeland mobil 99.4%
337 trips · avg +0.3 min
-
THURBO 98.3%
1,103 trips · avg +0.4 min
-
Lugano-Ponte Tresa 100%
132 trips · avg +0.3 min
-
Sihltal-Zürich-Uetliberg-Bahn 98.7%
313 trips · avg +0.6 min
-
Busbetrieb Grenchen und Umgebung 98.4%
365 trips · avg +0.6 min
-
Transports de la région Morges-Bière-Cossonay 100%
101 trips · avg +0 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 94.4%
1,723 departures · avg +1.1 min
-
Bern 95.4%
1,049 departures · avg +1 min
-
Zürich Oerlikon 94.1%
915 departures · avg +1.2 min
-
Zürich Stadelhofen 87.2%
697 departures · avg +1.6 min
-
Winterthur 97.3%
692 departures · avg +0.9 min
-
Zürich Hardbrücke 76.4%
675 departures · avg +2.3 min
-
Olten 91.8%
599 departures · avg +1.3 min
-
St. Gallen 97.3%
523 departures · avg +0.8 min
-
Aarau 91.1%
514 departures · avg +1.2 min
-
Lausanne 88.1%
497 departures · avg +1.6 min
-
Renens VD 92.2%
488 departures · avg +1.2 min
-
Worblaufen 98.7%
478 departures · avg +0.8 min
-
Bern, Bahnhof 93.7%
2,970 departures · avg +1.2 min
-
Genève, gare Cornavin 76.7%
2,667 departures · avg +2 min
-
Genève, Bel-Air 78.2%
2,639 departures · avg +2 min
-
Luzern, Kantonalbank 75.8%
2,435 departures · avg +2.4 min
-
Zürich, Central 89.1%
2,272 departures · avg +1.4 min
-
Bern, Hirschengraben 89.2%
2,251 departures · avg +1.6 min
-
Basel, Schifflände 83.4%
2,185 departures · avg +1.8 min
-
Bern, Zytglogge 90.4%
2,182 departures · avg +1.5 min
-
Zürich, Bellevue 91.1%
2,153 departures · avg +1.3 min
-
Basel, Bahnhof SBB 88.7%
2,131 departures · avg +1.5 min
-
Luzern, Bahnhof 85.7%
2,111 departures · avg +1.8 min
-
Lausanne, Bel-Air 60.7%
2,098 departures · avg +3.3 min
-
St. Gallen Marktplatz 67.3%
110 departures · avg +2.5 min
-
Täsch 68.4%
117 departures · avg +2.8 min
-
Matten b. Interlaken 70.7%
133 departures · avg +2.5 min
-
Wilderswil 72.9%
133 departures · avg +2.3 min
-
Muhen Nord 73.2%
153 departures · avg +1.6 min
-
Oberentfelden Engelplatz 73.2%
153 departures · avg +1.5 min
-
S. Antonino 73.3%
146 departures · avg +2.7 min
-
Cham Alpenblick 74%
146 departures · avg +2.4 min
-
Zug Chollermüli 74%
146 departures · avg +2.4 min
-
Lustmühle 75%
108 departures · avg +2.6 min
-
Zweilütschinen 75%
120 departures · avg +2.2 min
-
Zürich Hardbrücke 76.4%
675 departures · avg +2.3 min
Largest delays
- Bus 1 Ebikon, Fildern – Obernau, Dorf Obernau, Dorfand 1 more trips of this line +169 min
- NJ Feldkirch – Zürich HB Zürich HBand 1 more trips of this line +106 min
- Bus 182 Lenzerheide/Lai, Postand 1 more trips of this line +93 min
- Bus 21 Interlaken Ost, Bahnhof +89 min
- Bus 508 Olten, Bahnhofand 1 more trips of this line +85 min
- Bus 19 Onex, cité – Vernier, village Vernier, village +82 min
- Bus 9 Schaffhausen, Ebnat – Schaffhausen, Kinepolis Schaffhausen, Ebnatand 2 more trips of this line +69 min
- Bus 60 Lausanne, Riponne-M. Béjart – Froideville, Laiterie Froideville +60 min
- Bus 423 Ilanz, Bahnhof/Post – Pigniu, vitg Pigniu, vitg +60 min
- Bus 51 Vernier, CO Renard – Genève, Nations Genève, Nations +60 min
- EC Bregenz – Zürich HB Genève +58 min
- Tram 17 Annemasse, Parc Montessuit +55 min
- Bus 66 Thoiry, Centre commercial – Genève-Aéroport, Terminal Genève-Aéroport, Terminaland 1 more trips of this line +55 min