Punctuality of Swiss public transportWednesday 29 July 2026
91.1% of 150,131 trips were on time. The share was lowest at 17:30: 82.1%. Of the busy lines, M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) had the lowest share on time: 32.5%.
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.
91.1%
±0 ptsDay before: 91.1% · 150,131 trips with live data
Average delay
+1 min
Canceled trips
925
0.6% 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 28 July
- Lowest points
The disruptions of this day were not recorded, so the chart cannot show its incidents.
By mode
-
Train 93.5%
14,135 trips · avg +0.9 min
-
Tram 85.8%
13,526 trips · avg +1.6 min
-
Bus 91.6%
121,730 trips · avg +1 min
-
Metro 98%
296 trips · avg +1 min
-
Boat 53.4%
444 trips · avg +3.8 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
-
M2 Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac)Genève-Pâquis (lac) – Genève-Quai Gustave Ador (lac) 32.5%
166 trips · avg +5.2 min
-
67 trips · avg +13.5 min
-
62 trips · avg +4.1 min
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 42.2%
192 trips · avg +3.8 min
-
166 trips · avg +4.5 min
-
123 trips · avg +4.3 min
-
79 trips · avg +4 min
-
Bus 122 Grindelwald, Gletscherschlucht – Grindelwald, KlusiGrindelwald, Gletscherschlucht – Grindelwald, Klusi 48.9%
45 trips · avg +4.5 min
Show 17 more
-
227 trips · avg +2.8 min
-
221 trips · avg +3.1 min
-
58 trips · avg +3.3 min
-
54 trips · avg +2.5 min
-
130 trips · avg +2.8 min
-
142 trips · avg +3 min
-
277 trips · avg +2.3 min
-
61 trips · avg +3 min
-
175 trips · avg +2.6 min
-
219 trips · avg +3 min
-
Bus 501 Estavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, plageEstavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, plage 66.1%
56 trips · avg +3.3 min
-
68 trips · avg +2.4 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 66.2%
139 trips · avg +3.2 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 66.5%
206 trips · avg +2.3 min
-
204 trips · avg +2.6 min
-
159 trips · avg +2.7 min
-
96 trips · avg +2.5 min
Most punctual busy lines
-
240 trips · avg +0.6 min
-
208 trips · avg +0.2 min
-
216 trips · avg +0.5 min
-
208 trips · avg +0.4 min
-
Bus 781 Zürich Oerlikon, Bahnhof – Glattbrugg, GiebeleichstrasseZürich Oerlikon, Bahnhof – Glattbrugg, Giebeleichstrasse 97.9%
243 trips · avg +0.5 min
-
Bus 17 Lausanne, Vigie – Villars-Ste-Croix, Croix-PéageLausanne, Vigie – Villars-Ste-Croix, Croix-Péage 97.7%
218 trips · avg +0.4 min
-
Bus 701 Lausanne, Bourdonnette – Tolochenaz, La PlantazLausanne, Bourdonnette – Tolochenaz, La Plantaz 97.7%
214 trips · avg +0.4 min
-
290 trips · avg +0.7 min
Least punctual busy lines
-
67 trips · avg +13.5 min
-
79 trips · avg +4 min
-
58 trips · avg +3.3 min
-
72 trips · avg +1.7 min
-
77 trips · avg +2.4 min
-
48 trips · avg +2 min
-
53 trips · avg +3.5 min
-
91 trips · avg +2.4 min
Show 17 more
-
79 trips · avg +1.5 min
-
40 trips · avg +2.1 min
-
40 trips · avg +1.3 min
-
107 trips · avg +0.8 min
-
82 trips · avg +1.1 min
-
47 trips · avg +0.8 min
-
84 trips · avg +0.9 min
-
48 trips · avg +0.5 min
-
62 trips · avg +1 min
-
40 trips · avg +0.5 min
-
40 trips · avg +0.6 min
-
41 trips · avg +1.2 min
-
41 trips · avg +0.7 min
-
125 trips · avg +0.9 min
-
57 trips · avg +0.7 min
-
77 trips · avg +0.9 min
-
77 trips · avg +1 min
Most punctual busy lines
-
207 trips · avg +0.1 min
-
160 trips · avg +0.2 min
-
79 trips · avg +0.2 min
-
77 trips · avg +0.1 min
-
72 trips · avg +0.3 min
-
58 trips · avg +0 min
-
54 trips · avg +0 min
-
50 trips · avg +0.3 min
Least punctual busy lines
-
277 trips · avg +2.3 min
-
236 trips · avg +2.3 min
-
274 trips · avg +2 min
-
277 trips · avg +2.1 min
-
511 trips · avg +1.3 min
-
294 trips · avg +1.7 min
-
177 trips · avg +1.8 min
-
290 trips · avg +1.4 min
Show 9 more
-
307 trips · avg +1.3 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 91.1%
303 trips · avg +1.3 min
-
284 trips · avg +0.9 min
-
348 trips · avg +1.3 min
-
291 trips · avg +0.7 min
-
265 trips · avg +0.9 min
-
291 trips · avg +1.3 min
-
290 trips · avg +0.7 min
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 99.4%
155 trips · avg +0.7 min
Most punctual busy lines
-
Tram 20 Killwangen, Bahnhof – Zürich Altstetten, BahnhofKillwangen, Bahnhof – Zürich Altstetten, Bahnhof 99.4%
155 trips · avg +0.7 min
-
290 trips · avg +0.7 min
-
291 trips · avg +1.3 min
-
265 trips · avg +0.9 min
-
291 trips · avg +0.7 min
-
348 trips · avg +1.3 min
-
284 trips · avg +0.9 min
-
Tram 51 Zürich Altstetten, Bahnhof N – Zürich, SeebachZürich Altstetten, Bahnhof N – Zürich, Seebach 91.1%
303 trips · avg +1.3 min
Least punctual busy lines
-
62 trips · avg +4.1 min
-
Bus 101 Cormondrèche, Grand'Rue – Marin-Epagnier, gareCormondrèche, Grand'Rue – Marin-Epagnier, gare 42.2%
192 trips · avg +3.8 min
-
123 trips · avg +4.3 min
-
Bus 122 Grindelwald, Gletscherschlucht – Grindelwald, KlusiGrindelwald, Gletscherschlucht – Grindelwald, Klusi 48.9%
45 trips · avg +4.5 min
-
227 trips · avg +2.8 min
-
221 trips · avg +3.1 min
-
54 trips · avg +2.5 min
-
130 trips · avg +2.8 min
Show 17 more
-
142 trips · avg +3 min
-
61 trips · avg +3 min
-
175 trips · avg +2.6 min
-
219 trips · avg +3 min
-
Bus 501 Estavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, plageEstavayer-le-Lac,Champ-de-Lune – Estavayer-le-Lac, plage 66.1%
56 trips · avg +3.3 min
-
68 trips · avg +2.4 min
-
Bus 68 Thoiry, Centre commercial – Vernier, BlandonnetThoiry, Centre commercial – Vernier, Blandonnet 66.2%
139 trips · avg +3.2 min
-
Bus 109 Neuchâtel, Place Pury – Neuchâtel, Trois-ChênesNeuchâtel, Place Pury – Neuchâtel, Trois-Chênes 66.5%
206 trips · avg +2.3 min
-
204 trips · avg +2.6 min
-
159 trips · avg +2.7 min
-
96 trips · avg +2.5 min
-
48 trips · avg +2.7 min
-
180 trips · avg +2.2 min
-
146 trips · avg +2.5 min
-
75 trips · avg +2.3 min
-
49 trips · avg +2 min
-
Bus 602 Pontresina, Bahnhof – Silvaplana, Rundella CurtinsPontresina, Bahnhof – Silvaplana, Rundella Curtins 70.9%
55 trips · avg +2.2 min
Most punctual busy lines
-
198 trips · avg +0.3 min
-
Bus 301 La Chaux-de-Fonds, Recorne – La Chaux-de-Fonds, ArêtesLa Chaux-de-Fonds, Recorne – La Chaux-de-Fonds, Arêtes 100%
194 trips · avg +0.2 min
-
240 trips · avg +0.6 min
-
199 trips · avg +0.7 min
-
208 trips · avg +0.2 min
-
216 trips · avg +0.5 min
-
208 trips · avg +0.4 min
-
200 trips · avg +0.6 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.5%
166 trips · avg +5.2 min
-
166 trips · avg +4.5 min
-
56 trips · avg +0.8 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%
56 trips · avg +0.7 min
Least punctual operators
-
Berner Oberland-Bahnen 50.4%
137 trips · avg +3.7 min
-
Mouettes genevoises 53.4%
444 trips · avg +3.8 min
-
TPG 76.3%
9,605 trips · avg +2.2 min
-
Autobetrieb Sernftal 76.8%
112 trips · avg +2.7 min
-
Bus Sierrois 77.9%
217 trips · avg +1.8 min
-
VBL 78.3%
3,786 trips · avg +1.9 min
-
TPL 79.9%
1,596 trips · avg +1.6 min
-
Matterhorn Gotthard Bahn 81.1%
302 trips · avg +2.1 min
Show 17 more
-
Verkehrsbetrieb LIECHTENSTEINmobil 82.1%
876 trips · avg +1.7 min
-
BVB 82.5%
5,087 trips · avg +1.6 min
-
RhB 82.8%
575 trips · avg +1.8 min
-
Verkehrsbetrieb der Landschaft Davos 83.2%
380 trips · avg +1.4 min
-
Bus und Service 83.2%
1,575 trips · avg +1.6 min
-
Autolinee FART 84.8%
716 trips · avg +1.2 min
-
Forchbahn 85.3%
177 trips · avg +1.8 min
-
Wengernalpbahn 85.8%
155 trips · avg +1.2 min
-
Regionale Verkehrsbetriebe Baden-Wettingen 86.7%
1,384 trips · avg +1.4 min
-
Auto AG Rothenburg 86.8%
713 trips · avg +1.5 min
-
Compagnie du chemin de fer Nyon - St-Cergue - Morez 87%
108 trips · avg +1.7 min
-
Transports Publics Neuchâtelois 87.1%
2,911 trips · avg +1.3 min
-
Automobil Rottal 87.3%
448 trips · avg +1.4 min
-
Regionalps 87.3%
189 trips · avg +1.9 min
-
tl 88.4%
6,418 trips · avg +1.2 min
-
AFA Bus 88.5%
235 trips · avg +1.3 min
-
Sierre-Montana-Crans 88.6%
308 trips · avg +1.3 min
Most punctual operators
-
Automobildienst SZU 98.5%
1,663 trips · avg +0.4 min
-
Sihltal-Zürich-Uetliberg-Bahn 99.6%
245 trips · avg +0.4 min
-
Regionalverkehr Bern-Solothurn 98.8%
604 trips · avg +0.2 min
-
THURBO 98.4%
1,109 trips · avg +0.3 min
-
Schweizerische Südostbahn 98.5%
517 trips · avg +0.4 min
-
Stadtbus Winterthur 97.5%
1,874 trips · avg +0.5 min
-
Appenzeller Bahnen 98.5%
342 trips · avg +0.3 min
-
Verkehrsbetriebe Glattal 97.1%
4,484 trips · avg +0.7 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,551 departures · avg +1.1 min
-
Bern 97.1%
1,056 departures · avg +0.9 min
-
Zürich Oerlikon 97.9%
911 departures · avg +0.9 min
-
Zürich Stadelhofen 94.9%
691 departures · avg +1.1 min
-
Winterthur 94.7%
679 departures · avg +1.4 min
-
Zürich Hardbrücke 91.6%
670 departures · avg +1.9 min
-
Olten 94.5%
600 departures · avg +1.3 min
-
St. Gallen 94.6%
538 departures · avg +1.4 min
-
Lausanne 90.3%
526 departures · avg +1.4 min
-
Aarau 95%
518 departures · avg +0.9 min
-
Worblaufen 97.7%
479 departures · avg +0.8 min
-
Renens VD 93.1%
464 departures · avg +1.2 min
-
Genève, gare Cornavin 75.7%
2,638 departures · avg +2.3 min
-
Genève, Bel-Air 72.8%
2,556 departures · avg +2.9 min
-
Basel, Bahnhof SBB 86.2%
2,289 departures · avg +1.6 min
-
Zürich, Central 96.6%
2,222 departures · avg +0.8 min
-
Luzern, Kantonalbank 82.7%
2,163 departures · avg +1.8 min
-
Bern, Bahnhof 89.5%
2,143 departures · avg +1.5 min
-
Zürich, Bellevue 95%
2,087 departures · avg +1.1 min
-
Luzern, Bahnhof 89.4%
1,924 departures · avg +1.4 min
-
Bern, Zytglogge 94.5%
1,894 departures · avg +1.2 min
-
1,881 departures · avg +1.9 min
-
St. Gallen, Bahnhof 94.6%
1,859 departures · avg +1.1 min
-
1,824 departures · avg +0.9 min
-
Wilderswil 53.3%
135 departures · avg +3.8 min
-
Matten b. Interlaken 53.3%
135 departures · avg +3.8 min
-
Zweilütschinen 55.4%
121 departures · avg +3.6 min
-
Magliaso Paese 60.8%
125 departures · avg +2.4 min
-
Agno 67.2%
125 departures · avg +2.3 min
-
Payerne 67.3%
107 departures · avg +2.7 min
-
Serocca 68%
125 departures · avg +2 min
-
Magliaso 71.2%
125 departures · avg +2.1 min
-
Chiasso 72.1%
172 departures · avg +3.5 min
-
Como S. Giovanni 73.7%
118 departures · avg +3.6 min
-
Mulhouse 75.4%
118 departures · avg +3.2 min
-
125 departures · avg +1.9 min
Largest delays
- Bus 493 Luzern, Bahnhof – Altdorf UR, Bahnhof West Luzern, Bahnhofand 3 more trips of this line +168 min
- Bus 220 Schiers, Bahnhof – Furna, Hinterberg Furna, Boden +112 min
- Bus 683 Vaulion, poste +101 min
- Bus 791 Urnäsch, Bahnhof – Schwägalp, Säntis-Schwebebahn Urnäsch, Bahnhof +99 min
- RJX Zürich HB +95 min
- Bus 69 Flüh, Station +92 min
- ICE Basel Bad Bfand 4 more trips of this line +81 min
- Bus 636 Uznach, Bahnhof – Kaltbrunn, Steinenbrücke Kaltbrunn, Steinenbrücke +78 min
- Bus 4 Prilly, Coudraie – Lausanne, Faverges Faverges +77 min
- Bus 19 Onex, cité – Vernier, village Vernier, village +66 min
- EC Bregenz – Zürich HB Zürich HB +66 min
- Bus 40 Chancy, douane +63 min
- Bus 133 Le Landeron, gare +62 min