S20 7688 Olten – Biel/Bienne

View line S20

Olten 21:35 → Biel/Bienne 22:38 Daily 1 h 03 min · 23 stops SBB CFF FFS

Running now · updated 22:28

Between Pieterlen and Biel/Bienne Bözingenfeld/Champ 0 min

Estimated arrival at Biel/Bienne 22:38 · 71 km/h

  1. Olten21:35
  2. Egerkingen21:46
  3. Niederbipp21:55
  4. Solothurn22:09
  5. Pieterlen22:28
  6. Biel/Bienne Bözingenfeld/Champ22:31
  7. Biel/Bienne22:38

Today it is running no worse than usual: typical arrival delay is +1 min; 82% of the last 22 runs arrived on time.

On-time · 30 days
82%
18/22 runs under 3 min
RT coverage: 21 full · 1 partial · 0 no data
On-time · 90 days
89%
42/47 runs under 3 min
RT coverage: 46 full · 1 partial · 13 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 Biel/Bienne, 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
  • Mon 20 Jul Max en route +8 min · last fix heading to Oberbuchsiten +6 min
  • Tue 13 Oct Max en route +4 min · last fix heading to Biel/Bienne +4 min
  • Thu 8 Oct Max en route +3 min · last fix heading to Biel/Bienne +3 min

Distribution · 90 days

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

  • Early 2% · 1
  • On time 87% · 41
  • 3–10 min 6% · 3
  • 10–30 min 4% · 2
  • 30+ min 0% · 0

On-time by weekday

  • 75% M n=8
  • 86% T n=7
  • 100% W n=7
  • 83% T n=6
  • 86% F n=7
  • 100% S n=6
  • 100% S n=6

Stops and timetable

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

StopSched.Today
21:35Passed
21:37Passed
21:40Passed
21:43Passed
21:46Passed
21:48Passed
21:52Passed
21:55Passed
22:00Passed
22:03Passed
22:05Passed
22:09 / 22:10Passed
22:11Passed
22:13Passed
22:15Passed
22:18Passed
22:20Passed
22:23Passed
22:26Passed
22:28Passed
22:31Next
22:33
22:38

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 15 OctLengnau BE 22:24Partial coverage0 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—
Fri 9 OctBiel/Bienne 22:40+1 min—
Thu 8 OctBiel/Bienne 22:42+3 min+3 min
Wed 7 OctBiel/Bienne 22:400 min—
Tue 6 OctBiel/Bienne 22:38−1 min—
Mon 5 OctBiel/Bienne 22:40+1 min—
Sun 4 OctBiel/Bienne 22:40+1 min—
Sat 3 OctBiel/Bienne 22:380 min—
Fri 2 OctBiel/Bienne 22:37+1 min—
Fri 25 SeptNeuchâtel Serrières Ruau 20:08+14 min+14 min
Thu 24 SeptBiel/Bienne 12:370 min—
Wed 23 SeptBiel/Bienne 12:37+1 min—
Tue 22 SeptBiel/Bienne 12:37+2 min+2 min
Mon 21 SeptLengnau BE 11:37+12 min+12 min
Sun 20 SeptSolothurn 19:44+1 min—
Sat 19 SeptSolothurn 19:44+1 min+1 min
Fri 18 SeptBiel/Bienne 11:370 min—
Sat 12 SeptLommiswil 18:53No data—
Thu 10 SeptBiel/Bienne 09:370 min—
Wed 9 SeptBiel/Bienne 09:38+1 min—
Tue 8 SeptBiel/Bienne 09:37+1 min+1 min
Mon 7 SeptBiel/Bienne 00:49+1 min—
Sun 6 SeptBiel/Bienne 18:37No data—
Sat 5 SeptBiel/Bienne 18:37No data—
Fri 4 SeptBiel/Bienne 18:370 min—