Punctuality of Swiss public transportSunday 22 March 2026
93% of 96,038 trips were on time. The share was lowest at 16:00: 87%. Of the busy lines, Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gare had the lowest share on time: 20.4%.
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.
93%
+2.2 ptsDay before: 90.8% · 96,038 trips with live data
Average delay
+0.8 min
Canceled trips
109
0.1% 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: Saturday 21 March
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 96.9%
12,662 trips · avg +0.5 min
-
Tram 90.1%
7,592 trips · avg +1.2 min
-
Bus 92.7%
75,307 trips · avg +0.8 min
-
Metro 99.5%
221 trips · avg +0.8 min
-
Boat 53.9%
256 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 20.4%
98 trips · avg +4.6 min
-
96 trips · avg +4.7 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 41.7%
96 trips · avg +5 min
-
88 trips · avg +4.3 min
-
Bus 54 Vernier, Parfumerie – Versoix, Centre sportifVernier, Parfumerie – Versoix, Centre sportif 47.5%
40 trips · avg +3.4 min
-
148 trips · avg +3.2 min
-
Bus 50 Versoix, Centre sportif – Genève-Aéroport, TerminalVersoix, Centre sportif – Genève-Aéroport, Terminal 50%
40 trips · avg +3.1 min
-
149 trips · avg +2.7 min
Show 17 more
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 54.4%
114 trips · avg +2.7 min
-
Bus 50 Basel EuroAirport, Verwaltung – Basel, Bahnhof SBBBasel EuroAirport, Verwaltung – Basel, Bahnhof SBB 57.2%
229 trips · avg +3.2 min
-
Bus 55 Chavannes-des-Bois – Genève-Aéroport, TerminalChavannes-des-Bois – Genève-Aéroport, Terminal 57.5%
40 trips · avg +3 min
-
Bus 28 Grand-Saconnex, Tunnel Routier – Petit-Lancy, Les EssertsGrand-Saconnex, Tunnel Routier – Petit-Lancy, Les Esserts 58.2%
79 trips · avg +3.3 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 62.7%
118 trips · avg +2.4 min
-
100 trips · avg +2.5 min
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 65%
197 trips · avg +2.5 min
-
56 trips · avg +2.7 min
-
Bus 22 Carouge GE, Rondeau – Genève, Jardin BotaniqueCarouge GE, Rondeau – Genève, Jardin Botanique 66.7%
81 trips · avg +2.1 min
-
181 trips · avg +2.2 min
-
79 trips · avg +2.5 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 68%
153 trips · avg +2.5 min
-
175 trips · avg +2.3 min
-
167 trips · avg +2.1 min
-
80 trips · avg +2.2 min
-
221 trips · avg +2.2 min
-
216 trips · avg +2.1 min
Most punctual busy lines
-
202 trips · avg +0.3 min
-
221 trips · avg +0.8 min
-
219 trips · avg +0.5 min
-
Tram 15 Zürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, BahnhofZürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, Bahnhof 99.1%
212 trips · avg +0.7 min
-
202 trips · avg +0.7 min
-
202 trips · avg +0.5 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.6%
206 trips · avg +0.9 min
-
217 trips · avg +0.7 min
Least punctual busy lines
-
57 trips · avg +3.5 min
-
77 trips · avg +3.3 min
-
58 trips · avg +2.2 min
-
86 trips · avg +1.3 min
-
41 trips · avg +1 min
-
88 trips · avg +0.9 min
-
107 trips · avg +0.8 min
-
41 trips · avg +0.8 min
Show 17 more
-
76 trips · avg +1.3 min
-
77 trips · avg +0.7 min
-
116 trips · avg +0.9 min
-
68 trips · avg +0.7 min
-
51 trips · avg +0.8 min
-
58 trips · avg +0.8 min
-
40 trips · avg +0.8 min
-
41 trips · avg +0.4 min
-
83 trips · avg +0.7 min
-
45 trips · avg +1 min
-
45 trips · avg +0.5 min
-
114 trips · avg +0.8 min
-
117 trips · avg +0.7 min
-
77 trips · avg +0.5 min
-
52 trips · avg +0.3 min
-
79 trips · avg +0.4 min
-
119 trips · avg +0.6 min
Most punctual busy lines
-
117 trips · avg +0.2 min
-
116 trips · avg +0.1 min
-
114 trips · avg +0.1 min
-
111 trips · avg +0.2 min
-
R15 Boudry Littorail – Neuchâtel Place Pury LittorailBoudry Littorail – Neuchâtel Place Pury Littorail 100%
98 trips · avg +0.6 min
-
93 trips · avg +0.1 min
-
92 trips · avg +0.2 min
-
86 trips · avg +0.3 min
Least punctual busy lines
-
Tram 8 Basel, Neuweilerstrasse – Weil am Rhein, Bahnhof/ZentrumBasel, Neuweilerstrasse – Weil am Rhein, Bahnhof/Zentrum 65%
197 trips · avg +2.5 min
-
216 trips · avg +2.1 min
-
Tram 2 Binningen, Kronenplatz – Basel, Badischer BahnhofBinningen, Kronenplatz – Basel, Badischer Bahnhof 82.2%
197 trips · avg +1.7 min
-
221 trips · avg +1.5 min
-
194 trips · avg +1.6 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 85.9%
199 trips · avg +1.7 min
-
195 trips · avg +1.6 min
-
217 trips · avg +1.2 min
Show 17 more
-
203 trips · avg +1.5 min
-
223 trips · avg +1.2 min
-
227 trips · avg +1.7 min
-
Tram 9 Wabern, Tram-Endstation – Bern Wankdorf, BahnhofWabern, Tram-Endstation – Bern Wankdorf, Bahnhof 87.6%
249 trips · avg +1.5 min
-
Tram 7 Stettbach, Bahnhof – Zürich, WollishoferplatzStettbach, Bahnhof – Zürich, Wollishoferplatz 87.9%
214 trips · avg +1.5 min
-
Tram 8 Bern, Saali – Bern Brünnen Westside, BahnhofBern, Saali – Bern Brünnen Westside, Bahnhof 88.7%
230 trips · avg +1.4 min
-
193 trips · avg +1.3 min
-
149 trips · avg +0.9 min
-
Tram 10 Zürich Flughafen, Fracht – Zürich, Bahnhofplatz/HBZürich Flughafen, Fracht – Zürich, Bahnhofplatz/HB 93.1%
159 trips · avg +1 min
-
222 trips · avg +1.1 min
-
254 trips · avg +0.9 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 93.3%
225 trips · avg +1.1 min
-
Tram 11 Zürich, Central – Zürich Tiefenbrunnen, BahnhofZürich, Central – Zürich Tiefenbrunnen, Bahnhof 93.5%
214 trips · avg +0.9 min
-
218 trips · avg +1.2 min
-
225 trips · avg +1 min
-
159 trips · avg +1.2 min
-
214 trips · avg +1.1 min
Most punctual busy lines
-
122 trips · avg +0 min
-
80 trips · avg +0.1 min
-
Tram 12 Stettbach, Bahnhof – Zürich Flughafen, FrachtStettbach, Bahnhof – Zürich Flughafen, Fracht 99.4%
154 trips · avg +0.9 min
-
Tram 15 Zürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, BahnhofZürich, Bahnhofstrasse/HB – Zürich Tiefenbrunnen, Bahnhof 99.1%
212 trips · avg +0.7 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 98.1%
155 trips · avg +0.7 min
-
217 trips · avg +0.7 min
-
219 trips · avg +0.8 min
-
214 trips · avg +1.1 min
Least punctual busy lines
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 20.4%
98 trips · avg +4.6 min
-
88 trips · avg +4.3 min
-
Bus 54 Vernier, Parfumerie – Versoix, Centre sportifVernier, Parfumerie – Versoix, Centre sportif 47.5%
40 trips · avg +3.4 min
-
148 trips · avg +3.2 min
-
Bus 50 Versoix, Centre sportif – Genève-Aéroport, TerminalVersoix, Centre sportif – Genève-Aéroport, Terminal 50%
40 trips · avg +3.1 min
-
149 trips · avg +2.7 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 54.4%
114 trips · avg +2.7 min
-
Bus 50 Basel EuroAirport, Verwaltung – Basel, Bahnhof SBBBasel EuroAirport, Verwaltung – Basel, Bahnhof SBB 57.2%
229 trips · avg +3.2 min
Show 17 more
-
Bus 55 Chavannes-des-Bois – Genève-Aéroport, TerminalChavannes-des-Bois – Genève-Aéroport, Terminal 57.5%
40 trips · avg +3 min
-
Bus 28 Grand-Saconnex, Tunnel Routier – Petit-Lancy, Les EssertsGrand-Saconnex, Tunnel Routier – Petit-Lancy, Les Esserts 58.2%
79 trips · avg +3.3 min
-
Bus 9 Vernier, Lignon Tours – Thônex, Belle-Terre Pl. AraireVernier, Lignon Tours – Thônex, Belle-Terre Pl. Araire 62.7%
118 trips · avg +2.4 min
-
100 trips · avg +2.5 min
-
56 trips · avg +2.7 min
-
Bus 22 Carouge GE, Rondeau – Genève, Jardin BotaniqueCarouge GE, Rondeau – Genève, Jardin Botanique 66.7%
81 trips · avg +2.1 min
-
181 trips · avg +2.2 min
-
79 trips · avg +2.5 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 68%
153 trips · avg +2.5 min
-
175 trips · avg +2.3 min
-
167 trips · avg +2.1 min
-
80 trips · avg +2.2 min
-
221 trips · avg +2.2 min
-
Bus 43 Plan-les-Ouates, Bellins – Bernex, Loëx HôpitalPlan-les-Ouates, Bellins – Bernex, Loëx Hôpital 71.6%
81 trips · avg +2.4 min
-
Bus 33 Zürich, Triemli – Zürich Tiefenbrunnen, BahnhofZürich, Triemli – Zürich Tiefenbrunnen, Bahnhof 71.6%
222 trips · avg +2 min
-
145 trips · avg +2.2 min
-
78 trips · avg +1.9 min
Most punctual busy lines
-
202 trips · avg +0.3 min
-
156 trips · avg +0.2 min
-
202 trips · avg +0.7 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 98%
151 trips · avg +1 min
-
152 trips · avg +0.5 min
-
202 trips · avg +0.5 min
-
153 trips · avg +0.5 min
-
Bus 1 Winterthur, Oberwinterthur – Winterthur, TössWinterthur, Oberwinterthur – Winterthur, Töss 95.6%
206 trips · avg +0.9 min
Least punctual operators
-
Mouettes genevoises 53.9%
256 trips · avg +3.7 min
-
Berner Oberland-Bahnen 77%
135 trips · avg +2.8 min
-
Transports Publics Neuchâtelois 78.1%
976 trips · avg +1.6 min
-
BVB 80.6%
3,261 trips · avg +1.8 min
-
VBL 82.4%
2,699 trips · avg +1.6 min
-
TPG 83.7%
5,104 trips · avg +1.4 min
-
Stadtbus Frauenfeld 85.6%
194 trips · avg +2.4 min
-
TPL 86.3%
1,186 trips · avg +1.1 min
Show 17 more
-
Regiobus Gossau SG 86.8%
227 trips · avg +1.3 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 87.5%
984 trips · avg +1.3 min
-
Bus und Service 88.8%
917 trips · avg +1.2 min
-
Sierre-Montana-Crans 89.1%
266 trips · avg +1 min
-
Verkehrsbetrieb LIECHTENSTEINmobil 90.1%
515 trips · avg +1.3 min
-
VBZ 90.7%
10,708 trips · avg +1.2 min
-
Bernmobil 91.1%
3,118 trips · avg +1.3 min
-
tl 91.8%
5,342 trips · avg +0.9 min
-
Busbetrieb Solothurn und Umgebung 92.6%
376 trips · avg +1 min
-
Busbetrieb Olten-Gösgen-Gäu 92.7%
587 trips · avg +0.7 min
-
TPF 92.8%
2,471 trips · avg +0.8 min
-
Autobusbetrieb RBS 92.8%
753 trips · avg +0.8 min
-
Autolinea Mendrisiense 93.2%
219 trips · avg +0.5 min
-
Automobil Rottal 93.4%
287 trips · avg +0.8 min
-
Verkehrsbetriebe Biel 93.6%
1,148 trips · avg +0.8 min
-
Busbetrieb Rapperswil-Eschenbach-Rüti ZH 93.6%
141 trips · avg +0.9 min
-
Matterhorn Gotthard Bahn 93.7%
347 trips · avg +0.8 min
Most punctual operators
-
Automobildienst SZU 99.1%
1,327 trips · avg +0.3 min
-
Aare Seeland mobil 100%
237 trips · avg +0.1 min
-
Regionalverkehr Bern-Solothurn 99.5%
424 trips · avg +0.1 min
-
Auto AG Schwyz 99.3%
592 trips · avg +0.2 min
-
Transports Publics de la Région Nyonnaise 100%
185 trips · avg +0.3 min
-
Aargau Verkehr 98.7%
1,037 trips · avg +0.4 min
-
Sihltal-Zürich-Uetliberg-Bahn 99.6%
233 trips · avg +0.3 min
-
PostAuto 97.6%
18,605 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 97.7%
1,624 departures · avg +0.9 min
-
Bern 97.4%
862 departures · avg +0.8 min
-
Zürich Oerlikon 98.4%
859 departures · avg +0.8 min
-
Zürich Stadelhofen 98.9%
717 departures · avg +0.8 min
-
Zürich Hardbrücke 95.8%
690 departures · avg +1.6 min
-
Winterthur 99.2%
660 departures · avg +0.6 min
-
Olten 95.6%
570 departures · avg +1 min
-
Renens VD 94.8%
484 departures · avg +1.1 min
-
Lausanne 94.4%
480 departures · avg +1.1 min
-
Aarau 97.8%
454 departures · avg +0.8 min
-
Luzern 94.9%
447 departures · avg +0.9 min
-
St. Gallen 92.9%
393 departures · avg +1.2 min
-
Bern, Bahnhof 96.7%
2,091 departures · avg +1 min
-
Genève, gare Cornavin 85.6%
1,796 departures · avg +1.4 min
-
Luzern, Kantonalbank 89.4%
1,787 departures · avg +1.4 min
-
Lausanne, Bel-Air 84.9%
1,726 departures · avg +1.4 min
-
Genève, Bel-Air 90.3%
1,698 departures · avg +1.2 min
-
Bern, Hirschengraben 94.7%
1,649 departures · avg +1.3 min
-
Zürich HB 97.7%
1,624 departures · avg +0.9 min
-
Luzern, Bahnhof 95%
1,608 departures · avg +1 min
-
Zürich, Central 95.5%
1,537 departures · avg +0.9 min
-
Bern, Zytglogge 94.3%
1,511 departures · avg +1.4 min
-
Basel, Schifflände 87.1%
1,468 departures · avg +1.6 min
-
1,386 departures · avg +1 min
-
Wilderswil 69.9%
133 departures · avg +3.2 min
-
Matten b. Interlaken 71.4%
133 departures · avg +3.3 min
-
Zweilütschinen 76%
121 departures · avg +3.3 min
-
Zug 81.7%
345 departures · avg +1.9 min
-
Baar 82.8%
163 departures · avg +1.8 min
-
S. Antonino 83.1%
154 departures · avg +2.2 min
-
Muhen Nord 83.6%
110 departures · avg +1.4 min
-
Oberentfelden Engelplatz 83.6%
110 departures · avg +1.3 min
-
Interlaken Ost 83.7%
129 departures · avg +1.5 min
-
Martigny 84.3%
178 departures · avg +1.8 min
-
Rotkreuz 85.8%
169 departures · avg +1.5 min
-
Como S. Giovanni 87.3%
102 departures · avg +1.8 min
Largest delays
- Bus 66 Thoiry, Centre commercial – Genève-Aéroport, Terminal Genève-Aéroport, Terminaland 1 more trips of this line +55 min
- ICE Zürich HBand 3 more trips of this line +53 min
- Bus 322 Bremgarten AG, Obertorplatz – Baden, Postautostation Baden, Postautostation +50 min
- EC Bregenz – Zürich HB Zürich HB +44 min
- Bus 55 Chavannes-des-Bois – Genève-Aéroport, Terminal Genève-Aéroport, Terminal +44 min
- Tram 14 Meyrin, Gravièreand 1 more trips of this line +43 min
- Bus 501 Scheid, Oberscheid – Tumegl/Tomils, Curschiglias Tumegl/Tomils, Curschiglias +42 min
- Bus 134 Acquarossa-Comprovasco – Ponto Valentino, Paese Ponto Valentino, Paeseand 1 more trips of this line +40 min
- NJ Feldkirch – Zürich HB Zürich HBand 1 more trips of this line +38 min
- Bus 119 Laufen, Bahnhof – Grellingen, Bahnhof Laufen, Bahnhof +38 min
- Bus 61 Troistorrents +37 min
- Bus 182 Schmitten FR, Bahnhof – Fribourg/Freiburg, gare rout. Schmitten FR, Bahnhof +36 min
- Bus 69 Flüh, Station – Rodersdorf, Station Metzerlen, Allmendhalleand 1 more trips of this line +36 min
- R61 Grindelwald – Interlaken Ost Interlaken Ost +35 min
- Bus 631 St. Moritz, Bahnhof – Lugano, Stazione Nord Lugano, Stazione Nord +34 min