Pace · Critical Swim Speed

Critical Swim Speed (CSS) Calculator

Critical Swim Speed is your swimming threshold pace, found from two time trials: CSS = 200 ÷ (t400 − t200) in metres per second, and pace per 100 m = 100 ÷ CSS. A 400 m in 6:00 and 200 m in 2:50 give a CSS of about 1.05 m/s, or roughly 1:35 per 100 m, your sustainable threshold pace.

Your numbers

Everything computes instantly in your browser. Nothing is stored or sent anywhere.

Critical Swim Speed

1:35/100m

CSS speed

1.05m/s

ZoneRangeWhat it trains
Z1

Recovery

1:43–1:47 /100m

Z2

Endurance

1:37–1:43 /100m

Z3

Threshold (CSS)

1:33–1:37 /100m

Z4

VO₂max

1:29–1:33 /100m

Z5

Sprint

1:21–1:29 /100m

Z1 · Recovery. Easy technique and recovery swimming. RPE 2–3, smooth.

Z2 · Endurance. Aerobic base; long steady sets. RPE 4–5, comfortable.

Z3 · Threshold (CSS). Critical swim speed, your sustainable threshold pace. RPE 6–7, comfortably hard.

Z4 · VO₂max. Maximal aerobic; race-pace intervals. RPE 8–9, hard.

Z5 · Sprint. Speed and anaerobic power; short fast reps. RPE 9–10, very fast.

  • Critical Swim Speed is your threshold pace, about 1:35 per 100 m here. It is the slope of the 200 m and 400 m efforts, so both must be genuinely maximal and well-paced.
  • Swim CSS as a 400 m and a 200 m time trial on the same session, fully rested between. If the 200 m is not much faster than 400-m pace, you likely didn't pace the 400 m hard enough.
  • Heart rate is unreliable in the water, so CSS pace is the most practical anchor for swim training.

A PDF with your personalized results, plus a QR code to reopen them anytime.

What Critical Swim Speed is

Critical Swim Speed (CSS) is the swimmer's functional threshold pace, the fastest speed you can hold for a prolonged effort without rapidly fatiguing. It is the practical pool equivalent of a runner's threshold or a cyclist's FTP, and it anchors every swim training zone.

CSS is calculated as the slope between two maximal time trials: CSS = 200 ÷ (t400 − t200) metres per second, where the difference is the time to cover the extra 200 m at threshold effort. Pace per 100 m is then 100 ÷ CSS. Because the method, developed from the work of Wakayoshi et al. (1992) and Ginn (1993), reads pace directly, it sidesteps the unreliability of heart rate in water.

Why both trials must be maximal

CSS is only as good as the two efforts it is built from. Both the 400 m and the 200 m must be genuinely maximal and well-paced. If you sandbag the 400 m, its time falls too close to the 200 m, the gap (t400 − t200) shrinks, and the formula reports an unrealistically fast CSS.

A useful check: a well-executed 200 m should be only moderately faster than your 400 m pace. If the 200 m is dramatically quicker, you likely did not push the 400 m hard enough. Rest fully between the two trials so the second effort is not compromised by fatigue from the first.

Pace, not heart rate, is the anchor

In the water, heart rate is unreliable: it reads lower than on land because of the horizontal body position, water pressure and the dive reflex, and a wet wrist or chest strap is hard to monitor mid-stroke. CSS solves this by using pace, seconds per 100 m, as the training anchor instead.

From CSS the calculator derives a full set of bands as offsets from your threshold pace: easy and endurance work several seconds per 100 m slower than CSS, threshold sets at CSS itself, and VO₂max and sprint work faster than CSS. This turns one pair of time trials into a complete, pace-based swim zone scheme.

How to run the CSS swim test

The CSS test is two maximal time trials in one session, with full recovery between. Swim them in the pool you normally train in, from a push start.

  1. 1

    Warm up

    Swim 400–600 m of easy mixed swimming with a few build-up efforts to get race-ready.

  2. 2

    Swim a maximal 400 m

    Time trial 400 m all-out, paced as evenly as you can. Record the time in seconds.

  3. 3

    Rest fully

    Take easy recovery swimming and rest, several minutes, until you feel ready to repeat a hard effort.

  4. 4

    Swim a maximal 200 m

    Time trial 200 m all-out and record the time. Both efforts must be genuinely maximal.

  5. 5

    Enter both times

    Plug the 400 m and 200 m times in; the calculator returns your CSS and pace zones.

Worked example

A swimmer times 400 m in 6:00 (360 s) and 200 m in 2:50 (170 s):

t400 − t200360 − 170 = 190 s
CSS speed200 ÷ 190 ≈ 1.05 m/s
CSS pace per 100 m100 ÷ 1.05 ≈ 1:35 /100 m
Easy band≈ 1:43–1:47 /100 m
VO₂max band≈ 1:29–1:33 /100 m

Threshold sets are swum at the CSS pace of about 1:35 /100 m; easy and fast bands offset from it.

Frequently asked questions

What is a good CSS pace?

CSS depends on swimming background. A developing triathlete often sits around 2:00–2:20 per 100 m, a competent club swimmer near 1:30–1:45, and competitive pool swimmers comfortably under 1:20. The example here, about 1:35 per 100 m, or 1.05 m/s, is a solid mid-pack triathlon threshold. Track your own CSS trend rather than comparing.

How often should I retest my CSS?

Retest every 4–6 weeks during focused swim training, or whenever your sessions start feeling consistently easy at your current threshold pace. CSS improves as your aerobic swim fitness and technique develop, so updating it keeps your threshold, easy and race bands aligned with current fitness rather than stale numbers.

Why use a 400 m and 200 m test?

The two distances bracket the threshold effort and let you solve for the slope between them: CSS = 200 ÷ (t400 − t200) metres per second. The 200 m difference in distance over the time gap gives your sustainable speed directly. Both trials must be maximal and well-paced for the result to be valid.

Why not just use heart rate for swim zones?

Heart rate is unreliable in the water. The horizontal body position, water pressure and the mammalian dive reflex all suppress it by roughly 10–15 bpm versus land, and reading a monitor mid-stroke is impractical. Critical Swim Speed uses pace, seconds per 100 m, which is precise, easy to measure and the standard swim anchor.

Can I use CSS for triathlon swim pacing?

Yes. CSS is your threshold swim pace, so open-water race effort for a sprint or Olympic triathlon typically sits at or just below CSS, while Ironman-distance swims run a touch easier. Train threshold sets at CSS and use it to plan race pace, adjusting for wetsuit buoyancy and open-water conditions.

Sources

  • Ginn (1993). “Critical speed and training intensities for swimming.” Australian Sports Commission, origin of the 400 m / 200 m CSS field test.
  • Wakayoshi et al. (1992). “Determination and validity of critical velocity as an index of swimming performance in the competitive swimmer.” Eur J Appl Physiol 64:153–157.