S20 7688 Olten – Oberdorf SO

View line S20

Olten 12:11 → Oberdorf SO 12:58 Daily 0 h 47 min · 15 stops SBB CFF FFS

It has not run yet today

Last recorded run: Sunday 8 November +1 min

Next service: tomorrow 12:11 from Olten · Tue 10 Nov

Next departure 12:11 tomorrow · Olten
On-time · 30 days
86%
25/29 runs under 3 min
RT coverage: 25 full · 4 partial · 0 no data
On-time · 90 days
89%
58/65 runs under 3 min
RT coverage: 61 full · 4 partial · 3 no data
Typical delay
+1min
Median at arrival, 90 days
30 days: +1 min
P90
+3min
9 in 10 runs arrive with less than this
30 days: +3 min

Last 30 days

Arrival delay at Oberdorf SO, in minutes. One bar per run.

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

Worst days

  • Fri 25 Sept Max en route +14 min · last fix heading to Neuchâtel Serrières Ruau +14 min
  • Mon 21 Sept Max en route +12 min · last fix heading to Lengnau BE +12 min
  • Sun 25 Oct Max en route +9 min · last fix heading to Biel/Bienne +9 min
  • Sat 17 Oct Max en route +6 min · last fix heading to Oensingen +6 min
  • Tue 13 Oct Max en route +4 min · last fix heading to Biel/Bienne +4 min

Distribution · 90 days

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

  • Early 2% · 1
  • On time 88% · 57
  • 3–10 min 8% · 5
  • 10–30 min 3% · 2
  • 30+ min 0% · 0

On-time by weekday

  • 89% M n=9
  • 89% T n=9
  • 100% W n=9
  • 89% T n=9
  • 91% F n=11
  • 78% S n=9
  • 89% S n=9

Stops and timetable

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

Last 90 days, 65 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
12:11on time +1 min
12:13≈ on time ≈ +1 min
12:16≈ on time ≈ +1 min
12:17 / 12:18≈ on time ≈ +1 min
12:21 / 12:22≈ on time ≈ +1 min
12:24≈ on time ≈ +1 min
12:28≈ on time ≈ +1 min
12:30≈ on time ≈ +1 min
12:35 / 12:36≈ on time ≈ +2 min
12:38≈ on time ≈ +2 min
12:41≈ on time ≈ +2 min
12:46≈ on time ≈ +2 min
12:47 / 12:48≈ on time ≈ +2 min
12:51≈ +1 min ≈ +2 min
12:58+1 min +3 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
Sun 8 NovGrenchen Süd 22:24Partial coverage+1 min+1 min
Sat 7 NovGrenchen Süd 22:27Partial coverage+3 min+3 min
Fri 6 NovGrenchen Süd 22:25Partial coverage+2 min+2 min
Thu 5 NovGrenchen Süd 22:23Partial coverage+1 min+1 min
Wed 4 NovGrenchen Süd 22:27+3 min+3 min
Tue 3 NovGrenchen Süd 22:24+1 min+1 min
Mon 2 NovBiel/Bienne 22:39+2 min+2 min
Sun 1 NovBiel/Bienne 22:390 min—
Sat 31 OctBiel/Bienne 22:39+1 min—
Fri 30 OctBiel/Bienne 22:41+2 min+2 min
Thu 29 OctBiel/Bienne 22:390 min—
Wed 28 OctBiel/Bienne 22:40+1 min—
Tue 27 OctBiel/Bienne 22:38−1 min—
Mon 26 OctBiel/Bienne 22:390 min—
Sun 25 OctBiel/Bienne 22:48+9 min+9 min
Sat 24 OctBiel/Bienne 22:390 min—
Fri 23 OctBiel/Bienne 22:390 min—
Thu 22 OctBiel/Bienne 22:40+1 min+1 min
Wed 21 OctBiel/Bienne 22:41+3 min+3 min
Tue 20 OctBiel/Bienne 22:390 min—
Mon 19 OctBiel/Bienne 22:42+3 min+3 min
Sun 18 OctOensingen 21:540 min—
Sat 17 OctOensingen 21:59+6 min+6 min
Fri 16 OctOensingen 21:540 min—
Thu 15 OctBiel/Bienne 22:38−1 min—
Wed 14 OctBiel/Bienne 22:41+2 min+2 min
Tue 13 OctBiel/Bienne 22:43+4 min+4 min
Mon 12 OctBiel/Bienne 22:38−1 min—
Sun 11 OctBiel/Bienne 22:38−1 min—
Sat 10 OctBiel/Bienne 22:390 min—