S9 21939 Lenzburg – Luzern

View line S9

Lenzburg 10:04 → Luzern 11:28 Daily 1 h 24 min · 21 stops SBB CFF FFS

It has not run yet today

Last recorded run: Saturday 7 November −2 min

Next service: today 10:04 from Lenzburg · Sun 8 Nov

Next departure 10:04 today · Lenzburg
On-time · 30 days
96%
27/28 runs under 3 min
RT coverage: 28 full · 0 partial · 1 no data
On-time · 90 days
98%
39/40 runs under 3 min
RT coverage: 40 full · 0 partial · 2 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 Luzern, in minutes. One bar per run.

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

Worst days

  • Tue 27 Oct Max en route +18 min · last fix heading to Luzern +18 min

Distribution · 90 days

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

  • Early 3% · 1
  • On time 95% · 38
  • 3–10 min 0% · 0
  • 10–30 min 3% · 1
  • 30+ min 0% · 0

On-time by weekday

  • 100% M n=5
  • 83% T n=6
  • 100% W n=8
  • 100% T n=4
  • 100% F n=5
  • 100% S n=7
  • 100% S n=5

Stops and timetable

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

Last 90 days, 41 runs. At intermediate stops it is an estimate from the delay at origin and destination. Delays over 2 h count as “> 2 h”: our data does not measure them exactly.

StopSched.Usually 9 days in 10
10:04on time on time
10:09≈ on time ≈ on time
10:11≈ on time ≈ on time
10:15≈ on time ≈ on time
10:18≈ on time ≈ on time
10:23≈ on time ≈ on time
10:27 / 10:28≈ on time ≈ on time
10:31≈ on time ≈ on time
10:35≈ on time ≈ +1 min
10:39 / 10:43≈ on time ≈ +1 min
10:45≈ on time ≈ +1 min
10:50≈ on time ≈ +1 min
10:52≈ on time ≈ +1 min
10:56 / 10:59≈ on time ≈ +1 min
11:00≈ on time ≈ +1 min
11:03≈ on time ≈ +1 min
11:07≈ on time ≈ +1 min
11:12 / 11:13≈ on time ≈ +1 min
11:18≈ on time ≈ +1 min
11:20≈ on time ≈ +1 min
11:28on time +2 min

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.

Will I make my connection?

Pick where you get off and how many minutes you have until your next train. We work it out from what this train did over the last 90 days.

Include the time to change platforms. It is an estimate from past data, not a guarantee. Days more than 2 h late count as a missed connection.

Recent runs

DateLast stopFinalMax
Sat 7 NovLuzern 11:27−2 min—
Fri 6 NovLuzern 11:290 min—
Thu 5 NovLuzern 11:290 min—
Wed 4 NovLuzern 11:28−1 min—
Tue 3 NovLuzern 11:29+1 min+1 min
Mon 2 NovLuzern 11:290 min—
Sun 1 NovLuzern 11:290 min—
Sat 31 OctLuzern 11:30+1 min—
Fri 30 OctLuzern 11:290 min—
Thu 29 OctLuzern 11:29No data—
Wed 28 OctLuzern 11:31+2 min+2 min
Tue 27 OctLuzern 11:29+18 min+18 min
Mon 26 OctLuzern 11:300 min—
Sun 25 OctLuzern 11:31+2 min+2 min
Sat 24 OctLuzern 11:290 min—
Fri 23 OctLuzern 11:290 min—
Thu 22 OctLuzern 11:290 min—
Wed 21 OctLuzern 11:290 min—
Tue 20 OctLuzern 11:300 min—
Mon 19 OctLuzern 11:290 min—
Sun 18 OctLuzern 11:300 min—
Sat 17 OctLuzern 11:31+1 min+1 min
Fri 16 OctLuzern 11:31+2 min+2 min
Thu 15 OctLuzern 11:290 min—
Wed 14 OctLuzern 11:30+1 min+1 min
Tue 13 OctLuzern 11:32+2 min+2 min
Mon 12 OctLuzern 11:290 min—
Sun 11 OctLuzern 11:290 min—
Sat 10 OctLuzern 11:300 min—
Sun 4 OctLuzern 11:290 min—