S21 2165 Trogen – Appenzell

View line S21

Trogen 16:25 → Appenzell 17:33 Daily 1 h 08 min · 28 stops SBB CFF FFS

Running now · updated 17:36

Between Hirschberg and Appenzell +2 min

Estimated arrival at Appenzell 17:35 17:33 · 8 km/h

  1. Trogen16:25
  2. Vögelinsegg16:33
  3. St. Gallen Schülerhaus16:43
  4. St. Gallen Riethüsli16:59
  5. Teufen AR Stofel17:06
  6. Hirschberg17:29
  7. Appenzell17:33

Today it is running worse than usual: typical arrival delay is 0 min; 89% of the last 19 runs arrived on time.

On-time · 30 days
89%
17/19 runs under 3 min
RT coverage: 19 full · 0 partial · 0 no data
On-time · 90 days
94%
30/32 runs under 3 min
RT coverage: 32 full · 0 partial · 0 no data
Typical delay
0min
Median at arrival, 90 days
30 days: 0 min
P90
+2min
9 in 10 runs arrive with less than this
30 days: +2 min

Last 30 days

Arrival delay at Appenzell, in minutes. One bar per run.

  • On time (<3 min)
  • 3–10 min
  • 10–30 min
  • 30+ min
  • Partial coverage
  • No data

Worst days

  • Sun 4 Oct Max en route +40 min · last fix heading to St. Moritz +40 min
  • Tue 6 Oct Max en route +3 min · last fix heading to Appenzell +3 min

Distribution · 90 days

32 runs with a known final delay. On time = under 3 min, the same cut the map uses.

  • Early 9% · 3
  • On time 84% · 27
  • 3–10 min 3% · 1
  • 10–30 min 0% · 0
  • 30+ min 3% · 1

On-time by weekday

  • 100% M n=4
  • 80% T n=5
  • 100% W n=4
  • 100% T n=5
  • 100% F n=4
  • 100% S n=5
  • 80% S n=5

Stops and timetable

Timetable of the latest run from the operator’s GTFS (28 stops).

StopSched.Today
16:25Passed
16:26Passed
16:27Passed
16:30Passed
16:31Passed
16:33Passed
16:37Passed
16:39Passed
16:41Passed
16:43Passed
16:45Passed
16:46Passed
16:52 / 16:56Passed
16:57Passed
16:59Passed
17:01Passed
17:04Passed
17:05Passed
17:06Passed
17:10Passed
17:13Passed
17:16Passed
17:18Passed
17:20Passed
17:23Passed
17:26Passed
17:29Passed
17:33Next

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

DateLast stopFinalMax
Thu 22 OctAppenzell 17:34+2 min+2 min
Wed 21 OctAppenzell 17:330 min+3 min
Tue 20 OctAppenzell 17:350 min+1 min
Mon 19 OctAppenzell 17:34+1 min—
Sun 18 OctAppenzell 17:340 min—
Sat 17 OctAppenzell 17:340 min—
Fri 16 OctAppenzell 17:35−2 min—
Thu 15 OctAppenzell 17:340 min—
Wed 14 OctAppenzell 17:340 min—
Tue 13 OctAppenzell 17:34−1 min—
Mon 12 OctAppenzell 17:33−1 min—
Sun 11 OctSt. Moritz 20:560 min+6 min
Sat 10 OctSt. Moritz 20:58+1 min+2 min
Fri 9 OctAppenzell 17:36+2 min+2 min
Thu 8 OctAppenzell 17:35+1 min+1 min
Wed 7 OctAppenzell 17:350 min—
Tue 6 OctAppenzell 17:34+3 min+3 min
Mon 5 OctAppenzell 17:340 min—
Sun 4 OctSt. Moritz 21:36+40 min+40 min
Tue 22 SeptAppenzell 22:320 min+2 min
Sun 20 SeptZürich HB 21:530 min+1 min
Sat 19 SeptAppenzell 23:03−1 min+7 min
Fri 18 SeptAppenzell 23:02+1 min+3 min
Sun 6 SeptZürich HB 21:530 min+1 min
Sat 29 AugAppenzell 21:32−1 min+3 min
Fri 28 AugAppenzell 21:320 min+5 min
Thu 27 AugOlten 23:550 min—
Wed 26 AugOlten 23:550 min+2 min
Tue 25 AugOlten 23:550 min+1 min
Sat 22 AugBrugg AG 00:29−1 min+1 min