For Everyone
Training & analysis
CdA calculator (aerodynamic drag coefficient)
Compute CdA from a controlled field test or a FIT file. Inputs, FIT-flow tuning, environmental auto-prefill, and outputs.
What it does
The CdA calculator returns your drag coefficient × frontal
area (CdA, in m²) — the single most important variable for
flat-course bike speed at race pace. Two paths:
- Field-test mode — you enter the measured numbers from a
controlled flat-course ride.
- FIT-file mode — you upload a FIT file from a known course
and the calculator extracts power, speed, and elevation per
second to back-solve CdA over the ride.
URL: /calculators/ then open CdA. Direct path:
/static/calculators/cda_calculator.html.
Environment
- Unit (metric / imperial).
- Altitude (m) — affects air density.
- Temperature (°C) — affects air density.
- Relative Humidity (%) — small density correction.
- Air Pressure Override (optional, hPa) — bypass the
altitude/temp-based density estimate if you have a barometer
reading.
Rider and bike
- Power meter location (crank-based, hub-based, etc.) — used
for drivetrain-loss correction.
- Rider Weight (kg).
- Clothes & Gear (kg) — added to rider weight.
- Bike Weight (kg).
Test data (field-test mode)
- Distance (m or km depending on unit toggle).
- Total Climb (m) — net elevation change over the test
segment.
- Wind (+head / −tail) — headwind positive, tailwind
negative. Magnitude in m/s or km/h.
- Power (Watts) — average over the test ride.
- Crr (Rolling Resistance coefficient) — typical road
defaults around 0.004; faster tubeless / TT setups around
0.0028. See Crr calculator for
per-tire numbers.
- Drivetrain Efficiency (%) — default ~97-98%.
- Time (HH:MM:SS) — time over the test segment. Average
speed is computed from distance / time, not entered directly.
Activity picker (when opened with ?athlete_pid=)
If the calculator is opened from a coach/athlete page, a dropdown
of the athlete's recent bike activities appears at the top. Pick
one and click Use this ride — the FIT file loads automatically
AND the temperature + altitude form fields are pre-filled from
that activity's recorded values:
- Temperature = the average of the recorded ambient temperature
samples (after filtering to plausible -20 to +60°C).
- Altitude = the median of recorded altitudes (median rather
than mean to suppress noisy-GPS spikes).
This means the FIT-mode density calculation always uses the
conditions you actually rode in, not a textbook default. The status
line confirms what was pre-filled, e.g. "Pre-filled from FIT:
26°C, 4m."
If the FIT doesn't have temperature data (some indoor / older
files), the temp field is left at whatever default you'd set —
nothing breaks.
FIT-flow tuning (when you upload a FIT)
When you upload a FIT file the calculator exposes a set of
tuning knobs that control which seconds of the ride are used
for the fit:
- Analysis mode — single-pass average vs sliding-window vs
per-lap split.
- Smoothing window (s) — averages power and speed over N
seconds before solving. Reduces sensor noise.
- Min/Max Speed — bound the fit to a speed band so coasting
and stops don't pollute the solution.
- Min/Max Power — bound the fit to a power band so
out-of-the-saddle accelerations don't dominate.
- Min/Max Grade — exclude segments where elevation change
per metre exceeds a threshold (steep climbs and descents
invalidate the flat-course CdA model).
- Min/Max CdA — sanity bound on the solver output; values
outside this range are flagged as suspect.
Outputs
- CdA (m²) — your fitted drag coefficient × frontal area.
- For FIT-flow uploads: per-segment CdA values, a histogram
of solutions across the ride, and flags for segments that
fell outside the trusted range.
- When saved from the race planning wizard, the
CalculatorResult row's cda output drives the bike split
projection in step 2.
How to run a field test
The CdA Field Test assessment
documents the canonical protocol:
- Choose a flat, wind-sheltered, out-and-back 3-5 km course.
- Pick race-day power and hold position constant.
- Ride 3-5 laps at steady power.
- Record distance, total climb (should be ~0 net), time, and
conditions.
Out-and-backs eliminate wind bias when averaged across the
direction.
See also
Common gotchas
- Course not flat enough. Total climb over the segment
should be at most a few metres. If the road has even subtle
rises, the climbing power masks the aero solution.
- Position not constant. CdA changes with position. If you
move on the bars mid-test (sit up, scratch your nose, drop
to aerobars), you get an averaged-position CdA that doesn't
represent any single posture.
- Wind not captured. Even a 2 m/s wind shifts CdA estimates
noticeably. Use the wind input or test on a calm day.
- FIT-flow filters too tight. If the min/max bounds exclude
most of the ride, the fit runs on too few points. Loosen
the filters before assuming the data is bad.