Punctuality of Swiss public transportTuesday 31 March 2026
87.1% of 143,810 trips were on time. The share was lowest at 17:30: 66.1%. Of the busy lines, Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'Rue had the lowest share on time: 21.8%.
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.
87.1%
−2.3 ptsDay before: 89.4% · 143,810 trips with live data
Average delay
+1.4 min
Canceled trips
596
0.4% of the trips
The day in numbers
From the timetable of the day, and its trips with live data.
Against a week before
+1 pts
Most punctual line
100%
Least punctual line
21.8%
Largest train delay
+179 min
Through the day
The share of the trips on their way that are less than 3 minutes late, every 10 minutes.
- ≥ 95%
- Dashed: Monday 30 March
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 95.7%
14,373 trips · avg +0.7 min
-
Tram 85.6%
9,832 trips · avg +1.5 min
-
Bus 86.3%
119,003 trips · avg +1.4 min
-
Metro 81.3%
336 trips · avg +1.9 min
-
Boat 66.2%
266 trips · avg +2.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 21.8%
238 trips · avg +5.7 min
-
57 trips · avg +10 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 39%
154 trips · avg +5.6 min
-
56 trips · avg +3.7 min
-
149 trips · avg +4 min
-
49 trips · avg +3.8 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 44%
268 trips · avg +3.6 min
-
102 trips · avg +4.6 min
Show 17 more
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 45.7%
70 trips · avg +3.6 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 45.8%
214 trips · avg +3.4 min
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 46.3%
82 trips · avg +4.1 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 47.5%
202 trips · avg +3.4 min
-
134 trips · avg +8.4 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 47.9%
215 trips · avg +3.6 min
-
175 trips · avg +6.6 min
-
202 trips · avg +6 min
-
71 trips · avg +3.6 min
-
75 trips · avg +3.4 min
-
180 trips · avg +4.1 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 54.1%
218 trips · avg +6.8 min
-
Bus 6 Lausanne, Praz-Séchaud – Lausanne, MaladièreLausanne, Praz-Séchaud – Lausanne, Maladière 54.6%
218 trips · avg +5.5 min
-
161 trips · avg +2.9 min
-
Bus 312 La Chaux-de-Fonds, gare – La Chaux-de-F, La Joux-PerretLa Chaux-de-Fonds, gare – La Chaux-de-F, La Joux-Perret 55.1%
78 trips · avg +3.6 min
-
58 trips · avg +3.2 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 56.1%
296 trips · avg +5.7 min
Most punctual busy lines
-
306 trips · avg +0.8 min
-
312 trips · avg +0.7 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 96.2%
265 trips · avg +1.2 min
-
379 trips · avg +1 min
-
294 trips · avg +0.8 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 95.6%
270 trips · avg +1 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 94.4%
269 trips · avg +1 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 94.3%
386 trips · avg +0.8 min
Least punctual busy lines
-
67 trips · avg +6.1 min
-
108 trips · avg +2.4 min
-
96 trips · avg +1.6 min
-
R15 Neuchâtel Place Pury Littorail – Boudry LittorailNeuchâtel Place Pury Littorail – Boudry Littorail 86.1%
101 trips · avg +1.6 min
-
76 trips · avg +1.2 min
-
59 trips · avg +0.8 min
-
40 trips · avg +1 min
-
40 trips · avg +1.4 min
Show 17 more
-
107 trips · avg +1.3 min
-
86 trips · avg +0.8 min
-
62 trips · avg +0.8 min
-
50 trips · avg +0.8 min
-
80 trips · avg +0.9 min
-
40 trips · avg +0.8 min
-
41 trips · avg +1.3 min
-
45 trips · avg +0.8 min
-
77 trips · avg +0.7 min
-
48 trips · avg +1 min
-
82 trips · avg +0.7 min
-
132 trips · avg +0.9 min
-
69 trips · avg +0.7 min
-
53 trips · avg +1.1 min
-
77 trips · avg +0.4 min
-
116 trips · avg +0.9 min
-
80 trips · avg +0.8 min
Most punctual busy lines
-
126 trips · avg +0.2 min
-
119 trips · avg +0.3 min
-
96 trips · avg +0.5 min
-
90 trips · avg +0.4 min
-
87 trips · avg +0.2 min
-
84 trips · avg +0.4 min
-
81 trips · avg +0.3 min
-
80 trips · avg +0.3 min
Least punctual busy lines
-
Tram 8 Weil am Rhein, Bahnhof/Zentrum – Basel, NeuweilerstrasseWeil am Rhein, Bahnhof/Zentrum – Basel, Neuweilerstrasse 65.6%
305 trips · avg +2.4 min
-
Tram 8 Bern Brünnen Westside, Bahnhof – Bern, SaaliBern Brünnen Westside, Bahnhof – Bern, Saali 66.7%
309 trips · avg +2.4 min
-
290 trips · avg +1.7 min
-
293 trips · avg +2.3 min
-
288 trips · avg +2.2 min
-
224 trips · avg +1.7 min
-
291 trips · avg +2 min
-
Tram 14 Basel, Dreirosenbrücke – Pratteln, SchlossstrasseBasel, Dreirosenbrücke – Pratteln, Schlossstrasse 80.6%
284 trips · avg +2 min
Show 17 more
-
Tram 5 Zürich Stadelhofen, Bahnhof – Zürich, LaubeggZürich Stadelhofen, Bahnhof – Zürich, Laubegg 80.7%
238 trips · avg +1.8 min
-
Tram 10 Zürich, Bahnhofstrasse/HB – Zürich Flughafen, FrachtZürich, Bahnhofstrasse/HB – Zürich Flughafen, Fracht 80.8%
281 trips · avg +1.7 min
-
Tram 7 Zürich, Wollishoferplatz – Stettbach, BahnhofZürich, Wollishoferplatz – Stettbach, Bahnhof 82.3%
288 trips · avg +1.9 min
-
275 trips · avg +1.9 min
-
295 trips · avg +1.5 min
-
309 trips · avg +1.5 min
-
303 trips · avg +1.6 min
-
306 trips · avg +1.5 min
-
303 trips · avg +1.3 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 87.9%
307 trips · avg +1.4 min
-
368 trips · avg +1.6 min
-
Tram 13 Zürich, Bahnhofstrasse/HB – Zürich, AlbisgütliZürich, Bahnhofstrasse/HB – Zürich, Albisgütli 88.9%
379 trips · avg +1.3 min
-
275 trips · avg +1.5 min
-
291 trips · avg +1.2 min
-
104 trips · avg +0.8 min
-
295 trips · avg +0.9 min
-
Tram 11 Zürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HBZürich Tiefenbrunnen, Bahnhof – Zürich, Bahnhofstrasse/HB 94.4%
269 trips · avg +1 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 100%
119 trips · avg +0.6 min
-
52 trips · avg +0.4 min
-
312 trips · avg +0.7 min
-
Tram 12 Zürich Flughafen, Fracht – Stettbach, BahnhofZürich Flughafen, Fracht – Stettbach, Bahnhof 96.1%
154 trips · avg +1.1 min
-
76 trips · avg +0.5 min
-
294 trips · avg +0.8 min
-
Tram 15 Zürich Tiefenbrunnen, Bahnhof – Zürich, CentralZürich Tiefenbrunnen, Bahnhof – Zürich, Central 95.6%
270 trips · avg +1 min
-
179 trips · avg +0.6 min
Least punctual busy lines
-
Bus 101 Marin-Epagnier, gare – Cormondrèche, Grand'RueMarin-Epagnier, gare – Cormondrèche, Grand'Rue 21.8%
238 trips · avg +5.7 min
-
57 trips · avg +10 min
-
Bus 33 Prilly, Mont-Goulin – St-Sulpice VD, Venoge nordPrilly, Mont-Goulin – St-Sulpice VD, Venoge nord 39%
154 trips · avg +5.6 min
-
56 trips · avg +3.7 min
-
149 trips · avg +4 min
-
49 trips · avg +3.8 min
-
Bus 50 Basel, Bahnhof SBB – Basel EuroAirport, VerwaltungBasel, Bahnhof SBB – Basel EuroAirport, Verwaltung 44%
268 trips · avg +3.6 min
-
102 trips · avg +4.6 min
Show 17 more
-
Bus 106 Neuchâtel, Place Pury – Neuchâtel,Vallon de l'ErmitageNeuchâtel, Place Pury – Neuchâtel,Vallon de l'Ermitage 45.7%
70 trips · avg +3.6 min
-
Bus 107 Marin-Epagnier, gare – Neuchâtel, Place PuryMarin-Epagnier, gare – Neuchâtel, Place Pury 45.8%
214 trips · avg +3.4 min
-
Bus 1 Schaffhausen, Waldfriedhof – Neuhausen, HerbstäckerSchaffhausen, Waldfriedhof – Neuhausen, Herbstäcker 47.5%
202 trips · avg +3.4 min
-
134 trips · avg +8.4 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 47.9%
215 trips · avg +3.6 min
-
175 trips · avg +6.6 min
-
202 trips · avg +6 min
-
71 trips · avg +3.6 min
-
75 trips · avg +3.4 min
-
180 trips · avg +4.1 min
-
Bus 3 Canobbio, Mercato Resega – Breganzona, PostaCanobbio, Mercato Resega – Breganzona, Posta 54.1%
218 trips · avg +6.8 min
-
Bus 6 Lausanne, Praz-Séchaud – Lausanne, MaladièreLausanne, Praz-Séchaud – Lausanne, Maladière 54.6%
218 trips · avg +5.5 min
-
161 trips · avg +2.9 min
-
Bus 312 La Chaux-de-Fonds, gare – La Chaux-de-F, La Joux-PerretLa Chaux-de-Fonds, gare – La Chaux-de-F, La Joux-Perret 55.1%
78 trips · avg +3.6 min
-
58 trips · avg +3.2 min
-
Bus 1 Lausanne, Blécherette – Ecublens VD, EPFL/ColladonLausanne, Blécherette – Ecublens VD, EPFL/Colladon 56.1%
296 trips · avg +5.7 min
-
180 trips · avg +3.6 min
Most punctual busy lines
-
224 trips · avg +0.5 min
-
225 trips · avg +0.7 min
-
240 trips · avg +0.9 min
-
Bus 752 Stettbach, Bahnhof – Dübendorf, KunsteisbahnStettbach, Bahnhof – Dübendorf, Kunsteisbahn 96.2%
265 trips · avg +1.2 min
-
379 trips · avg +1 min
-
Bus 701 Tolochenaz, La Plantaz – Lausanne, BourdonnetteTolochenaz, La Plantaz – Lausanne, Bourdonnette 95.8%
236 trips · avg +0.6 min
-
244 trips · avg +0.9 min
-
Bus 30 Basel, Badischer Bahnhof – Basel, Bahnhof SBBBasel, Badischer Bahnhof – Basel, Bahnhof SBB 94.3%
386 trips · avg +0.8 min
Least punctual operators
-
TPL 61.7%
1,613 trips · avg +4.6 min
-
Mouettes genevoises 66.2%
266 trips · avg +2.9 min
-
VBL 67.3%
3,924 trips · avg +3 min
-
Bus Nyon-Prangins 70.1%
385 trips · avg +2.2 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 71.3%
108 trips · avg +2.4 min
-
Transports Publics Neuchâtelois 72.7%
2,844 trips · avg +2.2 min
-
Automobil Rottal 74.6%
456 trips · avg +2 min
-
Auto AG Rothenburg 75%
771 trips · avg +2 min
Show 17 more
-
Verkehrsbetrieb LIECHTENSTEINmobil 75.1%
840 trips · avg +2.1 min
-
Autobetrieb Sernftal 75.4%
114 trips · avg +2.5 min
-
BVB 77.7%
4,830 trips · avg +2.2 min
-
Busbetrieb Aarau 77.7%
934 trips · avg +2.7 min
-
Autolinee Regionali Luganesi 78.6%
229 trips · avg +2.3 min
-
Regiobus Gossau SG 79%
672 trips · avg +1.8 min
-
Bus und Service 79.5%
1,514 trips · avg +1.8 min
-
Sierre-Montana-Crans 79.9%
278 trips · avg +2 min
-
Verkehrsbetriebe Schaffhausen 80.4%
1,975 trips · avg +1.7 min
-
Busbetrieb Solothurn und Umgebung 80.9%
739 trips · avg +1.6 min
-
tl 81.3%
6,872 trips · avg +2 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 81.8%
1,387 trips · avg +1.7 min
-
VBZ 83%
16,657 trips · avg +1.7 min
-
Verkehrsbetriebe der Stadt St.Gallen 83.2%
1,712 trips · avg +1.5 min
-
TPF 83.7%
4,128 trips · avg +1.4 min
-
Stadtbus Frauenfeld 83.8%
573 trips · avg +1.6 min
-
Transports Vallée de Joux-Yverdon-Ste-Croix 84.1%
1,185 trips · avg +1.4 min
Most punctual operators
-
BLS 99%
1,569 trips · avg +0.4 min
-
Regionalverkehr Bern-Solothurn 98.7%
607 trips · avg +0.3 min
-
THURBO 98.1%
1,115 trips · avg +0.3 min
-
Schweizerische Südostbahn 98.4%
515 trips · avg +0.4 min
-
Zentralbahn 98.6%
359 trips · avg +0.3 min
-
Automobildienst SZU 97.5%
1,780 trips · avg +0.6 min
-
Aare Seeland mobil 98.2%
338 trips · avg +0.5 min
-
Busbetrieb Grenchen und Umgebung 97.7%
384 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 96.1%
1,740 departures · avg +1 min
-
Bern 97.8%
1,071 departures · avg +0.8 min
-
Zürich Oerlikon 97.1%
919 departures · avg +1 min
-
Zürich Stadelhofen 92.7%
699 departures · avg +1.3 min
-
Winterthur 97.5%
692 departures · avg +0.9 min
-
676 departures · avg +2.1 min
-
Olten 94.8%
599 departures · avg +1.1 min
-
St. Gallen 94.9%
532 departures · avg +1 min
-
Aarau 94.5%
523 departures · avg +0.9 min
-
Lausanne 94.8%
497 departures · avg +1.2 min
-
Renens VD 94.3%
489 departures · avg +1.1 min
-
Worblaufen 97.5%
481 departures · avg +1 min
-
Bern, Bahnhof 94.6%
2,967 departures · avg +1.1 min
-
2,463 departures · avg +2.6 min
-
2,270 departures · avg +1.8 min
-
Bern, Hirschengraben 90.1%
2,249 departures · avg +1.5 min
-
Zürich, Central 93.1%
2,220 departures · avg +1.1 min
-
Bern, Zytglogge 91%
2,178 departures · avg +1.4 min
-
Luzern, Bahnhof 80.5%
2,138 departures · avg +2.1 min
-
Basel, Bahnhof SBB 87.6%
2,126 departures · avg +1.6 min
-
St. Gallen, Bahnhof 85.2%
2,105 departures · avg +1.6 min
-
Lausanne, Bel-Air 71.2%
2,089 departures · avg +2.6 min
-
Zürich, Bellevue 92.3%
2,077 departures · avg +1.3 min
-
1,928 departures · avg +1.3 min
-
Lustmühle 59.3%
108 departures · avg +3 min
-
Givrins 59.3%
108 departures · avg +2.7 min
-
108 departures · avg +2.5 min
-
108 departures · avg +2.5 min
-
St. Gallen Marktplatz 63.6%
110 departures · avg +2.7 min
-
Les Plantaz 63.9%
108 departures · avg +2.5 min
-
La Vuarpillière 65.7%
108 departures · avg +2.7 min
-
L'Asse 68.5%
108 departures · avg +2.7 min
-
Magliaso Paese 69.7%
132 departures · avg +2.7 min
-
Schwarzer Bären 70.9%
110 departures · avg +2.3 min
-
St. Gallen Birnbäumen 70.9%
110 departures · avg +2.3 min
-
Basel Bad Bf 71.3%
101 departures · avg +5.4 min
Largest delays
- NJ Zürich HBand 2 more trips of this line +179 min
- Bus 20 Lausanne, gare – Lausanne, Blécherette Lausanne-Gare +90 min
- Bus 193 St-Maurice VS, gare – St-Maurice, L'Acquis-Chapelle St-Maurice VS, gare +70 min
- Bus 31 Riehen, Otto Wenk-Platz – Basel, Claraplatz Basel, Claraplatzand 2 more trips of this line +68 min
- Bus 521 Thusis, Bahnhof – Obermutten, Dorf Obermutten, Dorf +64 min
- Bus 180 Les Diablerets, gare – Saanen, Bahnhof Gsteig b. Gstaad, Post +63 min
- EC Bregenz – Zürich HB Zürich HBand 1 more trips of this line +62 min
- Bus 118 Flims Dorf, Post +59 min
- Bus 182 Lenzerheide/Lai, Postand 1 more trips of this line +57 min
- Bus 722 Etoy, collège Les Communaux – St-Livres, grande salle Etoy, collège Les Communauxand 2 more trips of this line +54 min
- ICE Basel SBBand 1 more trips of this line +54 min
- Bus 171 Chur, Postautostationand 1 more trips of this line +53 min
- Bus 321 Hohenems, Bahnhofand 4 more trips of this line +51 min
- Bus 360 Lausanne, Sallaz – Epalinges, Croisettes Epalinges, Croisettes +49 min
- Bus 3 Canobbio, Mercato Resega – Breganzona, Posta Canobbio, Mercato Resegaand 2 more trips of this line +47 min