Critical Swim Speed (CSS) is the single most useful number for endurance swim training — the threshold pace you can hold for a long, steady effort. This tool computes it from the classic 400 m and 200 m time-trial test, then converts it into a pace per 100 m and a set of training paces so every swim has a target.
How it works
CSS is the slope of the line through your two time-trial points. Because the distances differ by exactly 200 m:
CSS (m/s) = (400 − 200) ÷ (T400 − T200) = 200 ÷ (T400 − T200)
The tool converts that speed into a pace per 100 m (100 ÷ CSS), then builds threshold-relative paces: easy aerobic a few seconds slower, endurance slightly slower, and VO2/speed work a touch faster. It validates that your 400 m time is slower than your 200 m time before computing.
How to run the test
The accuracy of your CSS depends entirely on doing two genuinely maximal efforts:
- Warm up thoroughly (at least 400–800 m of easy swimming and a few pickups).
- Swim 400 m all-out from a push start, as evenly paced as possible. Record the time in minutes and seconds.
- Rest fully — at least 10 minutes of easy swimming or passive rest.
- Swim 200 m all-out, again evenly paced. Record the time.
- Enter both times above.
A soft trial on either distance shifts your CSS. If your 200 m feels easy, you held back too much on the 400 m — which happens often when swimmers fear blowing up at 300 m. Aim for even splits across the 400 m.
Worked example
A 400 m of 6:00 (360 s) and a 200 m of 2:50 (170 s):
CSS = 200 ÷ (360 − 170) = 200 ÷ 190 ≈ 1.053 m/s
Pace per 100 m = 100 ÷ 1.053 ≈ 94.97 s ≈ 1:35 per 100 m
From this CSS of 1:35 / 100 m, the training zone table might look like:
| Zone | Pace per 100 m | Use |
|---|---|---|
| Easy aerobic | 1:45–1:55 | Recovery, warm-up |
| Endurance | 1:38–1:43 | Long sets, base building |
| CSS threshold | 1:33–1:37 | Threshold intervals |
| VO2 / speed | 1:25–1:32 | Short high-intensity sets |
Using CSS in training
The most effective use of CSS is threshold intervals: repeated swims of 100 m or 200 m with 5–15 seconds rest, targeting CSS pace. Sessions like 10 × 100 on CSS + 10 s rest, or 5 × 200 on CSS + 15 s rest, build aerobic capacity efficiently. Unlike open-ended distance sets, CSS intervals give you a precise pace target that is directly linked to your physiology — not an arbitrary number.
Re-test every 4 to 6 weeks. As fitness improves your CSS improves; without re-testing you will train at a pace that is too easy and miss the adaptation stimulus.
Everything runs locally in your browser — nothing is uploaded.