Punctuality of Swiss public transportWednesday 25 February 2026
85.9% of 151,363 trips were on time. The share was lowest at 17:30: 64.4%. Of the busy lines, Bus 91 Zollikerberg, Station – Zürich, Buchholz had the lowest share on time: 19.6%.
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.9%
−0.8 ptsDay before: 86.7% · 151,363 trips with live data
Average delay
+1.4 min
Canceled trips
424
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: Tuesday 24 February
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 93.2%
14,405 trips · avg +0.9 min
-
Tram 84.3%
12,135 trips · avg +1.6 min
-
Bus 85.3%
124,089 trips · avg +1.4 min
-
Metro 94.4%
340 trips · avg +1.1 min
-
Boat 49.2%
394 trips · avg +4.2 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
-
56 trips · avg +4.9 min
-
149 trips · avg +5.3 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 32.4%
148 trips · avg +5.5 min
-
74 trips · avg +4.5 min
-
148 trips · avg +5 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 35%
140 trips · avg +6.6 min
-
57 trips · avg +6.7 min
-
41 trips · avg +5.5 min
Show 17 more
-
59 trips · avg +3.9 min
-
Bus 72 Biel/Bienne, Bahnhof/Gare – Meinisberg, RüttiBiel/Bienne, Bahnhof/Gare – Meinisberg, Rütti 45.9%
85 trips · avg +8.4 min
-
Bus 2 Brügg BE, Bahnhof – Biel/Bienne, OrpundplatzBrügg BE, Bahnhof – Biel/Bienne, Orpundplatz 47.1%
204 trips · avg +5.4 min
-
62 trips · avg +3.7 min
-
102 trips · avg +3.9 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 49.4%
154 trips · avg +4 min
-
120 trips · avg +4.8 min
-
76 trips · avg +4.2 min
-
174 trips · avg +3.5 min
-
68 trips · avg +3.2 min
-
56 trips · avg +3 min
-
160 trips · avg +3 min
-
175 trips · avg +3.6 min
-
Bus 1 Biel/Bienne, Löhre/Mauchamp – Biel/Bienne, Stadien/StadesBiel/Bienne, Löhre/Mauchamp – Biel/Bienne, Stadien/Stades 54.4%
226 trips · avg +4.6 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 54.5%
297 trips · avg +4.3 min
-
Bus 5 Kriens, Busschleife – Emmenbrücke, Bahnhof SüdKriens, Busschleife – Emmenbrücke, Bahnhof Süd 55.4%
177 trips · avg +5.3 min
-
61 trips · avg +2.7 min
Most punctual busy lines
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 97.1%
278 trips · avg +0.6 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 95.5%
265 trips · avg +1 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 95.5%
287 trips · avg +1 min
-
282 trips · avg +0.7 min
-
340 trips · avg +1.1 min
-
287 trips · avg +0.9 min
-
287 trips · avg +0.8 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 93.4%
289 trips · avg +1.1 min
Least punctual busy lines
-
41 trips · avg +5.5 min
-
40 trips · avg +5.2 min
-
132 trips · avg +2.6 min
-
80 trips · avg +5.6 min
-
65 trips · avg +6.6 min
-
40 trips · avg +3 min
-
40 trips · avg +2.6 min
-
41 trips · avg +1.7 min
Show 17 more
-
82 trips · avg +2.2 min
-
76 trips · avg +1.5 min
-
107 trips · avg +1.5 min
-
73 trips · avg +1.3 min
-
107 trips · avg +1.8 min
-
102 trips · avg +1.4 min
-
48 trips · avg +1.7 min
-
93 trips · avg +1.3 min
-
40 trips · avg +0.9 min
-
64 trips · avg +0.7 min
-
304 trips · avg +1.3 min
-
80 trips · avg +1.1 min
-
105 trips · avg +1.1 min
-
70 trips · avg +0.8 min
-
121 trips · avg +0.9 min
-
74 trips · avg +1.3 min
-
76 trips · avg +1.2 min
Most punctual busy lines
-
R15 Neuchâtel Place Pury Littorail – Boudry LittorailNeuchâtel Place Pury Littorail – Boudry Littorail 100%
116 trips · avg +0.6 min
-
115 trips · avg +0.3 min
-
86 trips · avg +0.3 min
-
83 trips · avg +0.5 min
-
82 trips · avg +0.3 min
-
80 trips · avg +0.5 min
-
79 trips · avg +0.1 min
-
77 trips · avg +0.4 min
Least punctual busy lines
-
Tram 8 Bern Brünnen Westside, Bahnhof – Bern, SaaliBern Brünnen Westside, Bahnhof – Bern, Saali 69.1%
311 trips · avg +2.3 min
-
294 trips · avg +1.8 min
-
273 trips · avg +2.4 min
-
403 trips · avg +1.7 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 77.9%
290 trips · avg +1.9 min
-
305 trips · avg +1.9 min
-
222 trips · avg +1.7 min
-
224 trips · avg +1.5 min
Show 17 more
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 82.6%
282 trips · avg +1.7 min
-
306 trips · avg +1.8 min
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 83.7%
344 trips · avg +1.6 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 85.3%
307 trips · avg +1.5 min
-
289 trips · avg +1.4 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 86.9%
350 trips · avg +1.6 min
-
298 trips · avg +1.7 min
-
380 trips · avg +1.5 min
-
303 trips · avg +1.6 min
-
305 trips · avg +1.2 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 90.8%
390 trips · avg +1.2 min
-
302 trips · avg +1.2 min
-
285 trips · avg +1 min
-
Tram 5 Zürich Stadelhofen, Bahnhof – Zürich, LaubeggZürich Stadelhofen, Bahnhof – Zürich, Laubegg 92.8%
237 trips · avg +1.1 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 93.4%
289 trips · avg +1.1 min
-
287 trips · avg +0.9 min
-
179 trips · avg +0.7 min
Most punctual busy lines
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 96.1%
154 trips · avg +1.1 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 95.5%
287 trips · avg +1 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 95.2%
145 trips · avg +1.2 min
-
216 trips · avg +0.9 min
-
179 trips · avg +0.7 min
-
287 trips · avg +0.9 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 93.4%
289 trips · avg +1.1 min
-
Tram 5 Zürich Stadelhofen, Bahnhof – Zürich, LaubeggZürich Stadelhofen, Bahnhof – Zürich, Laubegg 92.8%
237 trips · avg +1.1 min
Least punctual busy lines
-
56 trips · avg +4.9 min
-
149 trips · avg +5.3 min
-
74 trips · avg +4.5 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 35%
140 trips · avg +6.6 min
-
57 trips · avg +6.7 min
-
59 trips · avg +3.9 min
-
Bus 72 Biel/Bienne, Bahnhof/Gare – Meinisberg, RüttiBiel/Bienne, Bahnhof/Gare – Meinisberg, Rütti 45.9%
85 trips · avg +8.4 min
-
Bus 2 Brügg BE, Bahnhof – Biel/Bienne, OrpundplatzBrügg BE, Bahnhof – Biel/Bienne, Orpundplatz 47.1%
204 trips · avg +5.4 min
Show 17 more
-
62 trips · avg +3.7 min
-
102 trips · avg +3.9 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 49.4%
154 trips · avg +4 min
-
120 trips · avg +4.8 min
-
76 trips · avg +4.2 min
-
174 trips · avg +3.5 min
-
68 trips · avg +3.2 min
-
56 trips · avg +3 min
-
160 trips · avg +3 min
-
175 trips · avg +3.6 min
-
Bus 1 Biel/Bienne, Löhre/Mauchamp – Biel/Bienne, Stadien/StadesBiel/Bienne, Löhre/Mauchamp – Biel/Bienne, Stadien/Stades 54.4%
226 trips · avg +4.6 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 54.5%
297 trips · avg +4.3 min
-
Bus 5 Kriens, Busschleife – Emmenbrücke, Bahnhof SüdKriens, Busschleife – Emmenbrücke, Bahnhof Süd 55.4%
177 trips · avg +5.3 min
-
61 trips · avg +2.7 min
-
169 trips · avg +3 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 56.6%
205 trips · avg +2.9 min
-
Bus 42 Emmenbrücke, Schönbühl – Luzern, WaldstrasseEmmenbrücke, Schönbühl – Luzern, Waldstrasse 56.9%
51 trips · avg +3.3 min
Most punctual busy lines
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 97.9%
243 trips · avg +0.9 min
-
227 trips · avg +0.7 min
-
Bus 101 Bern, Hauptbahnhof – Hinterkappelen, SchlossmattBern, Hauptbahnhof – Hinterkappelen, Schlossmatt 97.1%
278 trips · avg +0.6 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 95.5%
265 trips · avg +1 min
-
240 trips · avg +1 min
-
282 trips · avg +0.7 min
-
287 trips · avg +0.8 min
-
378 trips · avg +1.2 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) 32.4%
148 trips · avg +5.5 min
-
148 trips · avg +5 min
-
48 trips · avg +1.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) 98%
50 trips · avg +0.5 min
Least punctual operators
-
Mouettes genevoises 49.2%
394 trips · avg +4.2 min
-
Lugano-Ponte Tresa 60.6%
132 trips · avg +2.6 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 63.7%
303 trips · avg +2.9 min
-
Autobetrieb Sernftal 67.6%
105 trips · avg +3.4 min
-
VBL 68%
3,911 trips · avg +2.8 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 69.4%
902 trips · avg +2.9 min
-
Automobil Rottal 69.6%
461 trips · avg +2.5 min
-
Verkehrsbetriebe Biel 70.9%
1,400 trips · avg +3 min
Show 17 more
-
TPL 74%
1,612 trips · avg +2.4 min
-
Busbetrieb Aarau 74.7%
935 trips · avg +2.7 min
-
Sierre-Montana-Crans 74.9%
279 trips · avg +2 min
-
TPF 77.1%
4,115 trips · avg +1.9 min
-
Bus Nyon-Prangins 77.1%
389 trips · avg +1.9 min
-
Auto AG Rothenburg 77.3%
705 trips · avg +2.2 min
-
TPG 78%
8,796 trips · avg +1.9 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 78.1%
1,387 trips · avg +2.1 min
-
Autolinee Regionali Luganesi 78.2%
225 trips · avg +2.1 min
-
Busbetrieb Solothurn und Umgebung 78.5%
749 trips · avg +1.8 min
-
Automobildienste Aare Seeland mobil 78.7%
658 trips · avg +2.5 min
-
BVB 79.6%
5,717 trips · avg +1.9 min
-
tl 79.7%
6,775 trips · avg +1.8 min
-
Bus und Service 79.9%
1,555 trips · avg +1.8 min
-
Transports Publics Neuchâtelois 81%
2,779 trips · avg +1.7 min
-
Transports Publics du Chablais 81.6%
1,228 trips · avg +2 min
-
Automobiles MBC 82.2%
1,223 trips · avg +1.7 min
Most punctual operators
-
Sihltal-Zürich-Uetliberg-Bahn 99.7%
310 trips · avg +0.7 min
-
BLS 98.3%
1,543 trips · avg +0.5 min
-
Aare Seeland mobil 99.1%
337 trips · avg +0.4 min
-
THURBO 98.1%
1,103 trips · avg +0.3 min
-
Schweizerische Südostbahn 98.1%
515 trips · avg +0.5 min
-
Regionalverkehr Bern-Solothurn 97.7%
604 trips · avg +0.4 min
-
Service d'automobiles TRN 98.5%
206 trips · avg +0.9 min
-
Lausanne-Echallens-Bercher 99.2%
130 trips · avg +0.4 min
Stations
The share of the departures less than 3 minutes late. A train station has departures of trains.
-
Zürich HB 96%
1,729 departures · avg +1 min
-
Bern 96.4%
1,067 departures · avg +0.9 min
-
Zürich Oerlikon 97.7%
919 departures · avg +0.9 min
-
Zürich Stadelhofen 93.7%
699 departures · avg +1.3 min
-
Winterthur 98.8%
693 departures · avg +0.7 min
-
Zürich Hardbrücke 86.5%
676 departures · avg +2 min
-
Olten 93.4%
595 departures · avg +1.3 min
-
St. Gallen 95.4%
522 departures · avg +0.9 min
-
Aarau 96.7%
522 departures · avg +0.9 min
-
Lausanne 68.4%
488 departures · avg +3.9 min
-
Worblaufen 96.7%
478 departures · avg +1 min
-
Renens VD 78.6%
476 departures · avg +3 min
-
Bern, Bahnhof 94.1%
2,972 departures · avg +1.1 min
-
Genève, gare Cornavin 78.6%
2,683 departures · avg +1.8 min
-
Genève, Bel-Air 80.2%
2,641 departures · avg +1.8 min
-
Luzern, Kantonalbank 73.6%
2,459 departures · avg +2.3 min
-
Zürich, Central 92.1%
2,257 departures · avg +1.2 min
-
Bern, Hirschengraben 90.9%
2,254 departures · avg +1.5 min
-
Bern, Zytglogge 90.7%
2,184 departures · avg +1.4 min
-
Basel, Bahnhof SBB 86.9%
2,160 departures · avg +1.5 min
-
Zürich, Bellevue 93.2%
2,131 departures · avg +1.2 min
-
Luzern, Bahnhof 82.6%
2,116 departures · avg +1.7 min
-
Lausanne, Bel-Air 67.2%
2,099 departures · avg +2.6 min
-
St. Gallen, Bahnhof 85.1%
2,065 departures · avg +1.6 min
-
Magliaso Paese 31.1%
132 departures · avg +4.4 min
-
Agno 31.1%
132 departures · avg +4.3 min
-
Magliaso 32.6%
132 departures · avg +4.1 min
-
Serocca 34.1%
132 departures · avg +4.1 min
-
Puidoux 38.7%
119 departures · avg +5.2 min
-
Bioggio Molinazzo 44.7%
132 departures · avg +3.8 min
-
Bioggio 49.2%
132 departures · avg +3.3 min
-
Caslano 50%
132 departures · avg +3.4 min
-
Lustmühle 51.9%
108 departures · avg +3.3 min
-
100 departures · avg +2.6 min
-
Sorengo Laghetto 56.8%
132 departures · avg +3 min
-
St. Gallen Marktplatz 57.3%
110 departures · avg +3.1 min
Largest delays
- Bus 120 Lavey-les-Bains, Et. Thermal – Villeneuve VD, gare Lavey-les-Bains, Et. Thermaland 4 more trips of this line +168 min
- Tram 1 Basel, Bahnhof SBB +126 min
- RE33 St-Maurice – Annemasse Martignyand 1 more trips of this line +105 min
- RJX Zürich HBand 1 more trips of this line +103 min
- Bus 23 Carouge GE, Toursand 1 more trips of this line +100 min
- IR95 Brig – Genève-Aéroport Brigand 1 more trips of this line +72 min
- Bus 2 Genève, Plage – Bernex, Cressy Bernex, Cressyand 1 more trips of this line +62 min
- Bus 68 Saint-Genis, Jean Monnet – Vernier, Blandonnet Saint-Genis, Jean Monnetand 1 more trips of this line +59 min
- Bus 108 Monthey, gare CFF – Troistorrents, gare Troistorrents gare +59 min
- Bus 190 Pfäffikon SZ, Bahnhof – Schindellegi-Feusisberg, Bhf. Schindellegi-Feusisberg, Bhf. +59 min
- Bus 54 Versoix, Centre sportif – Vernier, Parfumerie Versoix, Centre sportif +57 min
- Bus 51 Vernier, CO Renard – Genève, Nations Genève, Nations +57 min
- RE Mendrisio – Giubiasco Bellinzona +57 min
- Bus 110 Monthey, gare CFF – Bex, sous-gare Monthey, gare CFFand 2 more trips of this line +57 min
- Bus 76 Lausen, Furlen – Füllinsdorf, Schnäggeberg Füllinsdorf, Schnäggebergand 1 more trips of this line +56 min