VIA Rail 52 Toronto – Ottawa

View line VIA Rail

Toronto 08:32 → Ottawa 13:32 Daily 5 h 00 min · 10 stops VIA Rail

Running now · updated 10:40

Between Cobourg and Belleville +26 min

Estimated arrival at Ottawa 13:58 13:32 · 124 km/h

  1. Toronto08:32
  2. Oshawa09:09
  3. Cobourg09:44
  4. Belleville10:20
  5. Kingston11:00
  6. Brockville11:57
  7. Ottawa13:32

Today it is running worse than usual: typical arrival delay is +23 min; 20% of the last 15 runs arrived on time.

On-time · 30 days
20%
3/15 runs under 3 min
RT coverage: 14 full · 1 partial · 15 no data
On-time · 90 days
20%
3/15 runs under 3 min
RT coverage: 14 full · 1 partial · 75 no data
Typical delay
+23min
Median at arrival, 90 days
30 days: +23 min
P90
+52min
9 in 10 runs arrive with less than this
30 days: +52 min

Last 30 days

Arrival delay at Ottawa, 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 11 Oct Max en route +73 min · last fix heading to Ottawa +54 min
  • Mon 5 Oct Max en route +72 min · last fix heading to Ottawa +53 min
  • Thu 8 Oct Max en route +57 min · last fix heading to Ottawa +50 min
  • Fri 16 Oct Max en route +56 min · last fix heading to Ottawa +42 min
  • Tue 6 Oct Max en route +50 min · last fix heading to Ottawa +32 min

Distribution · 90 days

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

  • Early 0% · 0
  • On time 20% · 3
  • 3–10 min 13% · 2
  • 10–30 min 33% · 5
  • 30+ min 33% · 5

On-time by weekday

  • 0% M n=3
  • 50% T n=2
  • 50% W n=2
  • 0% T n=2
  • 0% F n=2
  • 50% S n=2
  • 0% S n=2

Stops and timetable

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

StopSched.Today
08:32Passed
08:50 / 08:52Passed
09:09 / 09:13Passed
09:44 / 09:47Passed
10:20 / 10:23Next
11:00 / 11:05
11:57 / 12:00
12:35 / 12:37
13:11 / 13:15
13:32

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 10 July 2026.

Recent runs

DateLast stopFinalMax
Mon 19 OctBelleville 10:39Partial coverage+27 min+28 min
Sun 18 OctOttawa 13:56+23 min+37 min
Sat 17 OctOttawa 13:330 min+8 min
Fri 16 OctOttawa 14:13+42 min+56 min
Thu 15 OctOttawa 13:35+3 min+15 min
Wed 14 OctOttawa 13:330 min+6 min
Tue 13 OctOttawa 13:330 min+14 min
Mon 12 OctOttawa 13:43+10 min+24 min
Sun 11 OctOttawa 14:26+54 min+73 min
Sat 10 OctOttawa 13:59+27 min+34 min
Fri 9 OctOttawa 13:49+17 min+32 min
Thu 8 OctOttawa 14:22+50 min+57 min
Wed 7 OctOttawa 13:40+8 min+26 min
Tue 6 OctOttawa 14:04+32 min+50 min
Mon 5 OctOttawa 14:25+53 min+72 min
Sun 4 OctOttawa 13:33No data—
Sat 3 OctOttawa 13:31No data—
Fri 2 OctOttawa 13:31No data—
Thu 1 OctOttawa 13:31No data—
Wed 30 SeptOttawa 13:31No data—
Tue 29 SeptOttawa 13:31No data—
Mon 28 SeptOttawa 13:31No data—
Sun 27 SeptOttawa 13:31No data—
Sat 26 SeptOttawa 13:31No data—
Fri 25 SeptOttawa 13:31No data—
Thu 24 SeptOttawa 13:31No data—
Wed 23 SeptOttawa 13:31No data—
Tue 22 SeptOttawa 13:31No data—
Mon 21 SeptOttawa 13:31No data—
Sun 20 SeptOttawa 13:31No data—