Train NS 3949 Enkhuizen – Heerlen

Enkhuizen 12:39 → Heerlen 16:11 Mon, Tue, Wed, Thu, Sat, Sun 3 h 32 min · 16 stops NS (Nederlandse Spoorwegen)

✓ Today’s run finished

Today, last fix heading to Sittard at 16:14 +2 min

  1. Enkhuizen12:39
  2. Hoogkarspel12:51
  3. Hoorn13:03
  4. Amsterdam Amstel13:52
  5. 's-Hertogenbosch14:42
  6. Sittard15:55
  7. Heerlen16:11

Next service: tomorrow 12:39 from Enkhuizen · Thu 5 Nov

Next departure 12:39 tomorrow · Enkhuizen
On-time · 30 days
100%
17/17 runs under 3 min
RT coverage: 15 full · 2 partial · 3 no data
On-time · 90 days
100%
18/18 runs under 3 min
RT coverage: 16 full · 2 partial · 34 no data
Typical delay
0min
Median at arrival, 90 days
30 days: 0 min
P90
+1min
9 in 10 runs arrive with less than this
30 days: 0 min

Last 30 days

Arrival delay at Heerlen, in minutes. One bar per run.

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

Distribution · 90 days

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

  • Early 0% · 0
  • On time 100% · 18
  • 3–10 min 0% · 0
  • 10–30 min 0% · 0
  • 30+ min 0% · 0

On-time by weekday

  • 100% M n=4
  • 100% T n=4
  • 100% W n=4
  • 100% T n=4
  • 100% F n=1
  • 100% S n=1
  • — S n=0

Stops and timetable

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

StopSched.
12:39
12:43
12:46 / 12:47
12:51 / 12:52
12:59
13:03 / 13:09
13:35
13:41 / 13:44
13:52
14:11 / 14:14
14:42 / 14:45
15:05 / 15:08
15:25
15:38 / 15:40
15:55 / 15:56
16:11

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
Wed 4 NovSittard 16:14Partial coverage+2 min+2 min
Tue 3 NovSittard 16:090 min—
Mon 2 NovSittard 16:12No data—
Thu 29 OctSittard 16:130 min—
Wed 28 OctSittard 16:12Partial coverage0 min—
Tue 27 OctSittard 16:130 min—
Mon 26 OctSittard 16:100 min—
Sat 24 OctSittard 16:120 min—
Fri 23 OctSittard 16:120 min—
Thu 22 OctSittard 16:100 min—
Wed 21 OctSittard 16:14No data—
Tue 20 OctSittard 16:130 min—
Mon 19 OctSittard 16:150 min—
Thu 15 OctSittard 16:170 min—
Wed 14 OctSittard 16:130 min—
Tue 13 OctSittard 16:15No data—
Mon 12 OctSittard 16:130 min—
Thu 8 OctSittard 16:16+1 min+3 min
Wed 7 OctSittard 16:120 min+1 min
Tue 6 OctSittard 16:130 min—
Mon 5 OctSittard 16:13+1 min+1 min
Thu 1 OctSittard 16:10No data—
Wed 30 SeptSittard 16:11No data—
Tue 29 SeptSittard 16:10No data—
Mon 28 SeptSittard 16:17No data—
Thu 24 SeptSittard 16:10No data—
Wed 23 SeptSittard 16:15No data—
Tue 22 SeptSittard 16:10No data—
Mon 21 SeptSittard 16:24No data—
Thu 17 SeptSittard 16:12No data—