Punctuality of Swiss public transportMonday 23 February 2026
89.1% of 151,482 trips were on time. The share was lowest at 17:30: 71.8%. Of the busy lines, Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gare had the lowest share on time: 27.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%
−2.5 ptsDay before: 91.6% · 151,482 trips with live data
Average delay
+1.2 min
Canceled trips
331
0.2% 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: Sunday 22 February
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 94.4%
14,410 trips · avg +0.8 min
-
Tram 83.4%
12,425 trips · avg +1.7 min
-
Bus 89.3%
123,911 trips · avg +1.2 min
-
Metro 77.6%
340 trips · avg +1.9 min
-
Boat 54.8%
396 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
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 27.9%
190 trips · avg +4.9 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 35.8%
148 trips · avg +5 min
-
149 trips · avg +3.8 min
-
62 trips · avg +3.6 min
-
56 trips · avg +3.6 min
-
148 trips · avg +4.2 min
-
Bus 72 Biel/Bienne, Bahnhof/Gare – Meinisberg, RüttiBiel/Bienne, Bahnhof/Gare – Meinisberg, Rütti 49.4%
85 trips · avg +4.6 min
-
114 trips · avg +4 min
Show 17 more
-
103 trips · avg +2.9 min
-
74 trips · avg +3.2 min
-
Bus 66 Thoiry, Centre commercial – Genève-Aéroport, TerminalThoiry, Centre commercial – Genève-Aéroport, Terminal 57.1%
42 trips · avg +16.1 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 58.7%
206 trips · avg +2.7 min
-
175 trips · avg +2.8 min
-
168 trips · avg +3.1 min
-
64 trips · avg +3.1 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 61%
141 trips · avg +3.2 min
-
Bus 360 Brugg AG, Bahnhof/Zentrum – Bad Zurzach, BahnhofBrugg AG, Bahnhof/Zentrum – Bad Zurzach, Bahnhof 61.8%
55 trips · avg +2.5 min
-
103 trips · avg +2.7 min
-
145 trips · avg +2.6 min
-
288 trips · avg +2.9 min
-
50 trips · avg +2.6 min
-
67 trips · avg +3.3 min
-
151 trips · avg +2.5 min
-
104 trips · avg +2.9 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 66.9%
154 trips · avg +2.2 min
Most punctual busy lines
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 99.7%
286 trips · avg +0.2 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 97.5%
275 trips · avg +0.6 min
-
306 trips · avg +0.6 min
-
289 trips · avg +0.4 min
-
228 trips · avg +0.5 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 96.5%
284 trips · avg +0.7 min
-
290 trips · avg +1 min
-
216 trips · avg +1 min
Least punctual busy lines
-
64 trips · avg +5.7 min
-
132 trips · avg +1.6 min
-
107 trips · avg +1.7 min
-
63 trips · avg +2 min
-
70 trips · avg +2.1 min
-
75 trips · avg +1.3 min
-
76 trips · avg +1.3 min
-
44 trips · avg +1.1 min
Show 17 more
-
74 trips · avg +1.5 min
-
75 trips · avg +1.1 min
-
41 trips · avg +1.1 min
-
48 trips · avg +0.7 min
-
52 trips · avg +0.9 min
-
118 trips · avg +1 min
-
40 trips · avg +1.4 min
-
82 trips · avg +1.2 min
-
42 trips · avg +0.5 min
-
71 trips · avg +1 min
-
78 trips · avg +0.6 min
-
48 trips · avg +1.4 min
-
50 trips · avg +0.9 min
-
85 trips · avg +0.7 min
-
71 trips · avg +0.7 min
-
79 trips · avg +0.7 min
-
40 trips · avg +0.5 min
Most punctual busy lines
-
160 trips · avg +0.2 min
-
150 trips · avg +0.2 min
-
87 trips · avg +0.1 min
-
80 trips · avg +0.4 min
-
80 trips · avg +0.2 min
-
79 trips · avg +0.2 min
-
78 trips · avg +0.8 min
-
78 trips · avg +0.1 min
Least punctual busy lines
-
288 trips · avg +2.9 min
-
294 trips · avg +1.7 min
-
319 trips · avg +2 min
-
307 trips · avg +1.5 min
-
381 trips · avg +1.6 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 87%
308 trips · avg +1.3 min
-
271 trips · avg +1.4 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 89.7%
350 trips · avg +1.4 min
Show 8 more
-
298 trips · avg +1.6 min
-
290 trips · avg +1.2 min
-
303 trips · avg +1.3 min
-
299 trips · avg +1 min
-
174 trips · avg +0.8 min
-
216 trips · avg +1 min
-
290 trips · avg +1 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.7%
155 trips · avg +0.8 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.7%
155 trips · avg +0.8 min
-
290 trips · avg +1 min
-
216 trips · avg +1 min
-
174 trips · avg +0.8 min
-
299 trips · avg +1 min
-
303 trips · avg +1.3 min
-
290 trips · avg +1.2 min
-
298 trips · avg +1.6 min
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 27.9%
190 trips · avg +4.9 min
-
149 trips · avg +3.8 min
-
62 trips · avg +3.6 min
-
56 trips · avg +3.6 min
-
Bus 72 Biel/Bienne, Bahnhof/Gare – Meinisberg, RüttiBiel/Bienne, Bahnhof/Gare – Meinisberg, Rütti 49.4%
85 trips · avg +4.6 min
-
114 trips · avg +4 min
-
103 trips · avg +2.9 min
-
74 trips · avg +3.2 min
Show 17 more
-
Bus 66 Thoiry, Centre commercial – Genève-Aéroport, TerminalThoiry, Centre commercial – Genève-Aéroport, Terminal 57.1%
42 trips · avg +16.1 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 58.7%
206 trips · avg +2.7 min
-
175 trips · avg +2.8 min
-
168 trips · avg +3.1 min
-
64 trips · avg +3.1 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 61%
141 trips · avg +3.2 min
-
Bus 360 Brugg AG, Bahnhof/Zentrum – Bad Zurzach, BahnhofBrugg AG, Bahnhof/Zentrum – Bad Zurzach, Bahnhof 61.8%
55 trips · avg +2.5 min
-
103 trips · avg +2.7 min
-
145 trips · avg +2.6 min
-
50 trips · avg +2.6 min
-
67 trips · avg +3.3 min
-
151 trips · avg +2.5 min
-
104 trips · avg +2.9 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 66.9%
154 trips · avg +2.2 min
-
174 trips · avg +2.2 min
-
135 trips · avg +2.4 min
-
160 trips · avg +2.9 min
Most punctual busy lines
-
201 trips · avg +0.6 min
-
Bus 3 Winterthur, Oberseen – Winterthur, RosenbergWinterthur, Oberseen – Winterthur, Rosenberg 99.7%
286 trips · avg +0.2 min
-
Bus 6 St. Gallen, Bach St. Georgen – St. Gallen, HeiligkreuzSt. Gallen, Bach St. Georgen – St. Gallen, Heiligkreuz 99%
208 trips · avg +0.4 min
-
202 trips · avg +0.2 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 98.6%
207 trips · avg +0.8 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 97.5%
275 trips · avg +0.6 min
-
289 trips · avg +0.4 min
-
228 trips · avg +0.5 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) 35.8%
148 trips · avg +5 min
-
148 trips · avg +4.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) 100%
50 trips · avg +0.4 min
Least punctual operators
-
Mouettes genevoises 54.8%
396 trips · avg +3.6 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 67.7%
303 trips · avg +2.3 min
-
Automobil Rottal 70.7%
460 trips · avg +2.5 min
-
Verkehrsbetrieb der Landschaft Davos 71%
397 trips · avg +2.3 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 72.2%
108 trips · avg +2 min
-
Autobetrieb Sernftal 73.7%
114 trips · avg +2.5 min
-
Lugano-Ponte Tresa 74.2%
132 trips · avg +1.6 min
-
Automobildienste Aare Seeland mobil 74.6%
658 trips · avg +2.8 min
Show 17 more
-
VBL 76.3%
3,918 trips · avg +2.3 min
-
BVB 76.7%
5,563 trips · avg +2.2 min
-
Matterhorn Gotthard Bahn 77%
339 trips · avg +2 min
-
Auto AG Rothenburg 79.5%
771 trips · avg +1.7 min
-
Verkehrsbetriebe Biel 79.7%
1,404 trips · avg +1.9 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 79.8%
818 trips · avg +1.9 min
-
TPG 80.3%
8,718 trips · avg +1.7 min
-
TPF 80.9%
4,130 trips · avg +2.1 min
-
TPL 81%
1,613 trips · avg +1.5 min
-
Montreux-Vevey-Riviera 82%
139 trips · avg +1.7 min
-
Montreux-Oberland Bernois 82%
139 trips · avg +1.6 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 82%
1,387 trips · avg +1.6 min
-
Sierre-Montana-Crans 82.3%
283 trips · avg +1.6 min
-
Transports Publics Neuchâtelois 82.9%
2,766 trips · avg +1.5 min
-
Bus und Service 83.3%
1,560 trips · avg +1.6 min
-
Bus Nyon-Prangins 84.6%
389 trips · avg +1.5 min
-
Busbetrieb Solothurn und Umgebung 85.4%
749 trips · avg +1.3 min
Most punctual operators
-
Aare Seeland mobil 99.7%
337 trips · avg +0.3 min
-
Regionalverkehr Bern-Solothurn 99.3%
604 trips · avg +0.4 min
-
THURBO 98.9%
1,101 trips · avg +0.3 min
-
Zentralbahn 99.4%
357 trips · avg +0.2 min
-
Appenzeller Bahnen 98.8%
345 trips · avg +0.4 min
-
Stadtbus Winterthur 97.7%
1,939 trips · avg +0.4 min
-
BLS 97.8%
1,541 trips · avg +0.5 min
-
Sihltal-Zürich-Uetliberg-Bahn 98.4%
313 trips · avg +0.8 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 93%
1,732 departures · avg +1.2 min
-
Bern 97.7%
1,066 departures · avg +0.8 min
-
Zürich Oerlikon 95.4%
920 departures · avg +1.1 min
-
Zürich Stadelhofen 89.4%
699 departures · avg +1.5 min
-
Winterthur 98.3%
693 departures · avg +0.8 min
-
676 departures · avg +2.1 min
-
Olten 93.1%
597 departures · avg +1.2 min
-
St. Gallen 96.6%
522 departures · avg +0.8 min
-
Aarau 94.2%
521 departures · avg +1.1 min
-
Lausanne 90%
498 departures · avg +1.4 min
-
Renens VD 90.2%
489 departures · avg +1.3 min
-
Worblaufen 98.1%
478 departures · avg +1 min
-
Bern, Bahnhof 96.7%
2,960 departures · avg +1 min
-
Genève, gare Cornavin 80.4%
2,680 departures · avg +1.7 min
-
Genève, Bel-Air 81.9%
2,645 departures · avg +1.6 min
-
Luzern, Kantonalbank 80.1%
2,458 departures · avg +2.1 min
-
Zürich, Central 94%
2,261 departures · avg +1.1 min
-
Bern, Hirschengraben 94.5%
2,245 departures · avg +1.3 min
-
Bern, Zytglogge 95.6%
2,177 departures · avg +1.2 min
-
Basel, Bahnhof SBB 85.1%
2,164 departures · avg +1.8 min
-
Zürich, Bellevue 94.6%
2,154 departures · avg +1.1 min
-
Luzern, Bahnhof 87.4%
2,127 departures · avg +1.6 min
-
Lausanne, Bel-Air 82.7%
2,109 departures · avg +1.6 min
-
2,076 departures · avg +1.3 min
-
Magliaso Paese 55.3%
132 departures · avg +3.1 min
-
Agno 56.1%
132 departures · avg +3.1 min
-
Magliaso 56.8%
132 departures · avg +2.9 min
-
Bioggio Molinazzo 57.6%
132 departures · avg +2.7 min
-
Serocca 59.8%
132 departures · avg +2.9 min
-
Caslano 68.2%
132 departures · avg +2.5 min
-
Bioggio 68.2%
132 departures · avg +2.3 min
-
St. Gallen Marktplatz 69.1%
110 departures · avg +2.3 min
-
Cappella-Agnuzzo 70.5%
132 departures · avg +1.9 min
-
Oberentfelden Engelplatz 72.5%
153 departures · avg +1.6 min
-
Muhen Nord 73.2%
153 departures · avg +1.6 min
-
Sorengo Laghetto 73.5%
132 departures · avg +2.1 min
Largest delays
- NJ Feldkirch – Zürich HB Zürich HBand 1 more trips of this line +135 min
- Bus 17 Croix-Péageand 1 more trips of this line +72 min
- R43 Andermatt +61 min
- Bus 13 Schaanwald, Zollamtand 1 more trips of this line +59 min
- Bus 51 Vernier, CO Renard – Genève, Nations Genève, Nations +59 min
- ICE Basel Bad Bfand 2 more trips of this line +58 min
- Bus 82 Collonges, marché +57 min
- Bus 411 Ilanz, Bahnhof/Post +55 min
- Bus 6 Lausanne, Maladière – Lausanne, Praz-Séchaud Praz-Séchaud +54 min
- Bus 51 Herzogenbuchsee, Bahnhofand 2 more trips of this line +53 min
- Bus 66 Thoiry, Centre commercial – Genève-Aéroport, Terminal Genève-Aéroport, Terminaland 12 more trips of this line +52 min
- Bus 321 Hohenems, Bahnhofand 1 more trips of this line +51 min
- Bus 5 Villars-sur-Glâne, gareand 1 more trips of this line +50 min
- Bus 501 Scheid, Oberscheid – Tumegl/Tomils, Curschiglias Scheid, Oberscheid +49 min
- Bus 531 Obertschappina – Thusis, Bahnhof Tschappina, Glaspass +48 min