A training score you can argue with.
Most running apps hand you one number and no reasoning. Traction reads your Strava history and tells you what your goal race demands, how much of it you have, and exactly where it is guessing.
Marathon · 9 weeks to go
Example — not real data
LT2 / Threshold Strength
trending up · needs VDOT 48.2
Aerobic Volume
slipping slightly · needs 54 km/week
Durability
no qualifying training in this window · needs long run 32 km
Measured against your goal, not a generic target
Required weekly volume, long run, training load and pace come from the race you entered and the time you want. A faster goal raises the bar instead of leaving you stuck at 100.
A weak link is not averaged away
The longer the race, the harder a hole counts. A marathon is gated by its limiter, so a big engine no longer papers over an endurance gap.
It tells you what it does not know
Missing data is excluded and labelled. Missing training is counted against you. Confounders like heat are corrected for, and the page says when it had to.