Train NS 6020 Utrecht Centraal – Den Haag Centraal

Utrecht Centraal 07:44 → Den Haag Centraal 08:45 Mon, Fri, Sat, Sun 1 h 01 min · 13 stops NS (Nederlandse Spoorwegen)

✓ Today’s run finished

Today, last fix heading to Voorburg at 08:55 0 min

  1. Utrecht Centraal07:44
  2. Utrecht Terwijde07:50
  3. Woerden08:00
  4. Gouda08:15
  5. Zoetermeer Oost08:30
  6. Voorburg08:40
  7. Den Haag Centraal08:45

Next service: Friday 07:44 from Utrecht Centraal · Fri 16 Oct

Next departure 07:44 Friday · Utrecht Centraal
On-time · 30 days
88%
15/17 runs under 3 min
RT coverage: 16 full · 1 partial · 0 no data
On-time · 90 days
91%
30/33 runs under 3 min
RT coverage: 32 full · 1 partial · 11 no data
Typical delay
0min
Median at arrival, 90 days
30 days: −1 min
P90
+1min
9 in 10 runs arrive with less than this
30 days: +2 min

Last 30 days

Arrival delay at Den Haag Centraal, 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 27 Sept Max en route +10 min · last fix heading to Den Haag Ypenburg +10 min
  • Fri 2 Oct Max en route +24 min · last fix heading to Den Haag Ypenburg +4 min
  • Sun 26 Jul Max en route +4 min · last fix heading to Utrecht Centraal +3 min

Distribution · 90 days

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

  • Early 42% · 14
  • On time 48% · 16
  • 3–10 min 9% · 3
  • 10–30 min 0% · 0
  • 30+ min 0% · 0

On-time by weekday

  • 100% M n=3
  • 100% T n=1
  • — W n=0
  • — T n=0
  • 90% F n=10
  • 100% S n=9
  • 80% S n=10

Stops and timetable

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

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
Sun 11 OctVoorburg 08:55Partial coverage0 min—
Sat 10 OctVoorburg 08:55+1 min—
Fri 9 OctVoorburg 08:580 min—
Mon 5 OctDen Haag Ypenburg 12:080 min+3 min
Sun 4 OctDen Haag Ypenburg 22:13−1 min+4 min
Sat 3 OctDen Haag Ypenburg 00:42+1 min+4 min
Fri 2 OctDen Haag Ypenburg 18:36+4 min+24 min
Sun 27 SeptDen Haag Ypenburg 19:33+10 min+10 min
Sat 26 SeptDen Haag Ypenburg 22:21−2 min+3 min
Fri 25 SeptDen Haag Ypenburg 18:14−2 min+3 min
Mon 21 SeptDen Haag Ypenburg 21:25+1 min+34 min
Sun 20 SeptVoorburg 21:43−1 min+4 min
Sat 19 SeptDen Haag Ypenburg 00:11−3 min+2 min
Fri 18 SeptDen Haag Ypenburg 18:31−1 min+2 min
Mon 14 SeptDen Haag Ypenburg 19:19−5 min—
Sun 13 SeptDen Haag Ypenburg 00:12−1 min—
Sat 12 SeptDen Haag Ypenburg 00:22−1 min+3 min
Fri 11 SeptDen Haag Ypenburg 23:110 min+6 min
Tue 8 SeptVoorburg 18:460 min—
Sun 6 SeptDen Haag Ypenburg 00:13−2 min+5 min
Sat 5 SeptDen Haag Ypenburg 22:22−2 min+13 min
Fri 4 SeptVoorburg 00:30−2 min+9 min
Sun 30 AugVoorburg 08:54No data—
Sat 29 AugVoorburg 08:55No data—
Fri 28 AugVoorburg 08:58No data—
Sun 23 AugUtrecht Vaartsche Rijn 07:53No data—
Sat 22 AugUtrecht Vaartsche Rijn 07:52No data—
Fri 21 AugUtrecht Vaartsche Rijn 07:53No data—
Sun 16 AugVoorburg 08:55No data—
Sat 15 AugVoorburg 08:55No data—