Read the full writeup →
Hitting the Wall Boston 2014 · 31,655 finishers · 5 km splits · now 2013 to 2024

The wall is at 30 km

Pace across a whole marathon field, segment by segment. The median runner holds about 5:03 per km through 10 km and is past 6:00 per km by 35 km. Most of that change comes after 25 km.

5:00 /km 5:30 6:00 THE WALL 0510 152025 303540 42.2 km 5:10 5:42 6:01
Median pace in each timed segment (0 to 5, 5 to 10, 10 to 20, 20 to 25, 25 to 30, 30 to 35, 35 to 40 km, 40 km to finish), drawn along the course. Higher means slower. Values from tables/segment_pace.csv.

Where the field slows

Every finisher of the 2014 Boston Marathon crossed timing mats at 5, 10, 20, 25, 30, 35 and 40 km. Dividing each segment's time by its length gives a pace, and the median across 31,655 runners gives the shape above. It is nearly flat to 20 km, drifts through 25 km, then climbs sharply into 30 km and stays high. By 35 to 40 km the median is about a minute per kilometer slower than at the start.

Slower runners slow far more

Grouped by finish time and measured against each group's own early pace, runners under 3:00 end 8 to 9% slower than their early pace. Runners finishing after 4:30 are 33 to 35% slower between 30 and 40 km. The write-up turns any finish time into the splits that Boston runners at that time actually ran.

 

Hover the chart, or focus it and use the arrow keys, to read a segment.

Slowdown against each group's own 5 to 10 km pace. The strip shades each segment of the course by that slowdown and labels its median pace. From tables/web_pacing.json.

Runner by runner

The individual late-slowdown figure has a median of 15% and a long right tail, which is where the 27% who lost more than a quarter of their pace sit.

Hover the chart, or focus it and use the arrow keys, to read a bar.

35 to 40 km pace against 10 to 20 km pace, one count per runner. Rust bars are the 27% more than 25% slower.

Was 2014 typical?

No: it had the hardest fade of the eight Boston years with public 5 km splits (2014 to 2017, 2021 to 2024). The corner sits between 25 and 35 km every year, but in 2014 the median runner's late slowdown was 15.1% and 27.4% slowed by more than 25%; the other years ran from 5.7% and 7.5% (2023) to 13.2% and 22.7% (2024). The 2013 race, stopped at about 4:09 on the race clock, is shown in gray and left out of the comparison. The 2014 figures above are unchanged.

Each panel: one year's median pace by segment against its own 5 to 10 km pace, −5% to +25%. Dashed gray is 2014. From tables/years_decay.json (multiyear.py).

Live split tool

Type the race clock at each mat as you pass it. The tool predicts your finish with 80% and 95% ranges, the chance you hit the wall (35 to 40 km pace more than 25% slower than 10 to 20 km), and the pacing type your splits look like so far; each split adds a column, so you can watch the range close in. It runs in your browser on model/pace_model.json, a linear model per mat fitted on 176,059 Boston finishers from 2014 to 2023. Boston only: a flatter course will fade less than it predicts.

Tested on 2024

The 2024 race was held out of fitting and every modeling choice. On its 25,377 finishers the typical miss at the half was 7.9 minutes, against 18.1 for even pace and 9.9 for scaling the 2014 curve; at 5 km the 2014 curve was slightly better. The ranges come from split conformal prediction on errors in left-out training years. They held close to target early and ran a little narrow late in the race, because 2024 faded harder than most training years. The write-up has the full table, the wall-risk calibration and the four pacing types.

Hover the chart, or focus it and use the arrow keys, to read a mat.

Share of 2024 finishers inside the 80% (blue) and 95% (rust) ranges predicted at each mat; dashed lines are the targets. From tables/model_eval.json (train_model.py).

What this doesn't show

Split times locate the slowdown; they can't say whether glycogen, muscle damage, heat or a fast start caused it. Boston's Newton hills run from about 26 to 34 km, right on the corner, and the net-downhill opening makes early pace look quicker than it would on a flat course. The main figures are one race on one day, and the multi-year panels show it was a hard one; the model knows nothing about weather. The companion study, The Negative-Split Myth, uses the same field.

Method

Data
Official 2014 Boston Marathon results via the public llimllib/bostonmarathon mirror
Sample
31,655 finishers with every split present and strictly increasing
Pace
Segment time divided by segment distance, in min/km; field value is the median
Late slowdown
Each runner's 35 to 40 km pace against their own 10 to 20 km pace
More years
2015 to 2017 from a Kaggle mirror, 2021 to 2024 from williamsorg4/BostonMarathonTimeModel; wheelchair and handcycle entrants removed; counts in tables/years.csv
Model
Linear model on pace ratios at each mat, conformal intervals, logistic wall risk, k-means pacing types; pace_model.py runs it with NumPy alone
Run it
python fetch_data.py then python analyze.py; for the upgrade, fetch_multiyear.py, build_dataset.py, multiyear.py, train_model.py