R31 280 Hakadal stasjon – Oslo S
Alerts for train 280
Alerts are saved per line, not per trip id, so they keep working when the operator changes the timetable. This train runs on line R31.
It has not run yet today
Last recorded run: Friday 30 October +4 min
Next service: today 12:09 from Hakadal stasjon · Mon 2 Nov
Last 30 days
Arrival delay at Oslo S, 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 2 Oct Max en route +17 min · last fix heading to — +15 min
- Wed 28 Oct Max en route +10 min · last fix heading to Oslo S +9 min
- Wed 7 Oct Max en route +9 min · last fix heading to Oslo S +6 min
- Thu 8 Oct Max en route +6 min · last fix heading to Oslo S +5 min
- Wed 21 Oct Max en route +6 min · last fix heading to Oslo S +4 min
Distribution · 90 days
28 runs with a known final delay. On time = under 3 min, the same cut the map uses.
- Early 0% · 0
- On time 68% · 19
- 3–10 min 29% · 8
- 10–30 min 4% · 1
- 30+ min 0% · 0
On-time by weekday
- 80% M n=5
- 100% T n=5
- 33% W n=6
- 60% T n=5
- 71% F n=7
- — S n=0
- — S n=0
Stops and timetable
Timetable of the latest run from the operator’s GTFS (11 stops).
| Stop | Sched. |
|---|---|
| 12:09 | |
| 12:10 / 12:11 | |
| 12:14 / 12:15 | |
| 12:18 / 12:19 | |
| 12:24 / 12:27 | |
| 12:28 / 12:29 | |
| 12:36 / 12:39 | |
| 12:41 / 12:42 | |
| 12:43 / 12:44 | |
| 12:46 / 12:47 | |
| 12:52 |
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 |
|---|---|---|---|
| Fri 30 Oct | Oslo S 13:20 | +4 min | +6 min |
| Wed 28 Oct | Oslo S 13:25 | +9 min | +10 min |
| Tue 27 Oct | Oslo S 13:15 | +1 min | +4 min |
| Mon 26 Oct | Oslo S 13:14 | +1 min | +6 min |
| Fri 23 Oct | Oslo S 13:15 | 0 min | +2 min |
| Thu 22 Oct | Oslo S 13:16 | −1 min | +2 min |
| Wed 21 Oct | Oslo S 13:20 | +4 min | +6 min |
| Tue 20 Oct | Oslo S 13:15 | 0 min | +2 min |
| Mon 19 Oct | Snippen stasjon 12:25Partial coverage | 0 min | — |
| Fri 16 Oct | Oslo S 13:15 | +1 min | +1 min |
| Thu 15 Oct | Oslo S 13:21 | +3 min | +5 min |
| Wed 14 Oct | Oslo S 13:14 | 0 min | +2 min |
| Tue 13 Oct | Oslo S 13:15 | −1 min | +2 min |
| Mon 12 Oct | Oslo S 13:15 | −1 min | +1 min |
| Fri 9 Oct | Oslo S 13:20 | 0 min | +2 min |
| Thu 8 Oct | Oslo S 13:21 | +5 min | +6 min |
| Wed 7 Oct | Oslo S 13:21 | +6 min | +9 min |
| Tue 6 Oct | Oslo S 13:14 | 0 min | +1 min |
| Mon 5 Oct | — 13:20 | +4 min | +6 min |
| Fri 2 Oct | — 13:31 | +15 min | +17 min |
| Wed 30 Sept | — 13:10 | +4 min | +6 min |
| Thu 24 Sept | — 13:15 | +2 min | +4 min |
| Fri 28 Aug | — 12:54 | +1 min | +3 min |
| Wed 26 Aug | — 13:02 | +1 min | +3 min |
| Thu 20 Aug | — 13:15 | +1 min | +3 min |
| Mon 17 Aug | — 13:16 | 0 min | +2 min |
| Fri 14 Aug | — 13:15 | +1 min | +2 min |
| Tue 11 Aug | — 13:15 | +2 min | +3 min |