EC 123 Zürich HB – Chiasso
Alerts for train 123
Alerts are saved per line, not per trip id, so they keep working when the operator changes the timetable. This train runs on line EC.
Running now · updated 16:57
Between Arth-Goldau and Bellinzona −3 min
Estimated arrival at Chiasso 17:55 · 113 km/h
- Zürich HB15:33
- Zug15:59
- Arth-Goldau16:16
- Bellinzona17:12
- Lugano17:28
- Chiasso17:55
Today it is running no worse than usual: typical arrival delay is 0 min; 100% of the last 18 runs arrived on time.
Last 30 days
Arrival delay at Chiasso, in minutes. One bar per run.
- On time (<3 min)
- 3–10 min
- 10–30 min
- 30+ min
- Partial coverage
- No data
Worst days
- Wed 12 Aug Max en route +3 min · last fix heading to Agno +3 min
Distribution · 90 days
39 runs with a known final delay. On time = under 3 min, the same cut the map uses.
- Early 13% · 5
- On time 85% · 33
- 3–10 min 3% · 1
- 10–30 min 0% · 0
- 30+ min 0% · 0
On-time by weekday
- 100% M n=5
- 100% T n=4
- 83% W n=6
- 100% T n=3
- 100% F n=5
- 100% S n=8
- 100% S n=8
Stops and timetable
Timetable of the latest run from the operator’s GTFS (6 stops).
| Stop | Sched. | Today |
|---|---|---|
| 15:33 | Passed | |
| 15:59 / 16:00 | Passed | |
| 16:16 / 16:18 | Passed | |
| 17:12 / 17:14 | ||
| 17:28 / 17:30 | ||
| 17:55 |
Each run is closed into train_runs (country, train number, service day) from the live positions. Final delay = last delay seen. Partial coverage: the feed stopped before the final stop (last value used, hatched in the chart). No data: a run without any valid delay; counts as neither on time nor late. Data collected since 11 July 2026.
Recent runs
| Date | Last stop | Final | Max |
|---|---|---|---|
| Sun 18 Oct | Bellinzona 16:54Partial coverage | −3 min | +1 min |
| Sat 17 Oct | Chiasso 17:52 | −4 min | +2 min |
| Fri 16 Oct | Como S. Giovanni 18:10 | +1 min | +4 min |
| Thu 15 Oct | Morges 11:05 | 0 min | +5 min |
| Wed 14 Oct | Morges 11:05 | 0 min | +2 min |
| Tue 13 Oct | Morges 11:06 | +1 min | +3 min |
| Mon 12 Oct | Morges 11:05 | +1 min | +5 min |
| Sun 11 Oct | Zermatt 22:06 | −2 min | +2 min |
| Sat 10 Oct | Zermatt 22:08 | −1 min | +2 min |
| Fri 9 Oct | Zermatt 22:07 | −1 min | +15 min |
| Thu 8 Oct | Zermatt 22:08 | 0 min | +8 min |
| Wed 7 Oct | Zermatt 22:09 | 0 min | +5 min |
| Tue 6 Oct | Zermatt 22:07 | −1 min | +4 min |
| Mon 5 Oct | Zermatt 22:09 | 0 min | +2 min |
| Sun 4 Oct | Zermatt 22:10 | +2 min | +2 min |
| Sat 3 Oct | Zermatt 22:06 | +1 min | +1 min |
| Fri 25 Sept | Bercher 20:07 | +1 min | +9 min |
| Sat 19 Sept | Ponte Tresa 21:35 | +1 min | +1 min |
| Mon 14 Sept | Zermatt 01:12 | 0 min | +2 min |
| Sun 13 Sept | Zermatt 01:11 | 0 min | +3 min |
| Sat 12 Sept | Zermatt 01:11 | +1 min | +3 min |
| Wed 9 Sept | Ponte Tresa 00:04 | 0 min | +2 min |
| Sun 6 Sept | Bercher 20:06 | 0 min | +7 min |
| Thu 3 Sept | Zermatt 01:11 | +1 min | — |
| Wed 2 Sept | Zermatt 01:11 | +1 min | +5 min |
| Tue 1 Sept | Zermatt 01:11 | 0 min | +5 min |
| Sun 30 Aug | Bercher 22:36 | +1 min | +1 min |
| Sat 29 Aug | Bercher 08:06 | +1 min | +1 min |
| Sat 15 Aug | Agno 01:58 | 0 min | +60 min |
| Wed 12 Aug | Agno 00:24 | +3 min | +3 min |