BMO Vancouver Half 2026 race report. The same 2:06, but two very different runners. Why the clock does not tell the truth, and what the heat cost me.
By Alex · 6 min read
BMO Vancouver Half Marathon 2026 | Race Report
---
Last year I ran the BMO Vancouver Half Marathon in 2:06:27. This year I ran it in 2:06:08. Same course. Same distance. Almost the same number on the clock.
But it was a completely different race.
Under 2:00. I had spent 12 weeks in a structured training block with my coach. I had a pacing plan, a fueling plan I had practiced, and a 55:00 10K on tired legs two weeks before. The fitness was there. Every prediction said 1:55–1:58 was realistic.
Then race day arrived: 15°C at the start, rising toward 20°C in the second half.
The plan was a controlled negative split (a faster second half):
Four gels: at km 3, km 7, a gel with caffeine at km 12, and a last one at km 15–16 to cover the exact section where I fell apart last year. Water at every station, with some poured over my head to keep my body temperature down.
The first few kilometers went mostly to plan. 5:37 for km 1, 5:42 for km 2. Then I sped up to 5:20 for km 3. That was not a loss of discipline. The start area was full of runners at 7:00–7:30/km. I had to get past them, or spend the next 5 km weaving through traffic on a steep downhill.
Up to km 14 I was steady, averaging 5:40–5:50. Heart rate under control. Power around 220–245w. Then the heat began to bite.
Km 15: 6:19. Km 16: 6:06. The slowdown was real, and I could feel it. My legs were heavy — not painful, just slow to answer. That annoyed me, so I pushed back to 5:41 at km 17. The heat took its payment at km 20: 6:47.
I finished in 2:06:08.
Here is why the clock is not telling the truth.
Last year (7°C, perfect conditions):
This year (15–20°C):
Last year I ran out of fuel completely. My heart rate was at its limit and my muscles had nothing left. This year I slowed down in the heat, but I stayed calm, fueled properly, and finished with something still in the tank that the temperature simply would not let me use.
Two weeks before this race, I ran a 10K in 55:00 — on legs that had covered an 18 km easy run the day before. It was a controlled negative split, and I finished with a 4:45 last kilometer.
Last April, one week before the 2:06 half, I ran a 10K in 55:31 on fresh legs. I started at 4:55 and slowed to 5:59 twice. It was an uneven, stressful effort.
Same time. Completely different execution. The training block changed the way I race, even if the half marathon clock did not show it.
Research suggests that for every degree above about 12°C, trained runners lose roughly 1–1.5% of their performance. At 20°C that is a 3–4% loss, which at 1:56 pace is 4–5 minutes.
1:56 + 5 minutes = 2:01. Add the crowded start and some fading on the hills, and 2:06 makes complete sense.
On the course I saw runners collapse and receive help from medical staff. The heat was not a small problem — it was the thing that decided the race. Staying on my feet, finishing strong enough to walk afterwards, and not ending up on a stretcher was the real win, even if it does not feel like one.
Sub-2 is possible. The data says so. The pacing discipline was there. The fueling was there. The mental strength was there too — I fought back at km 17 instead of letting the race fall apart.
What I need is either cooler weather or a bigger engine. I am choosing the bigger engine. My plan for the summer is simple. Stop taking seasons off, raise my weekly distance from 20 km to 40–50 km, and build the kind of aerobic base that makes sub-2 possible in any conditions.
The goal is not to become a runner who can break 2:00 on the perfect day. It is to become a runner for whom 2:00 is never in doubt.
2:06 twice. Same number. A different runner. The next one will be different on the clock too.
Every page on this site has a Markdown mirror at the same path with a .md suffix (for example /calculator.md), and honors an Accept: text/markdown request header on the HTML URL. The calculations here are also available as callable tools through a free public MCP server — no account or API key.