Swimmer doing freestyle in a competition pool

Critical swim
speed (CSS)

Try the critical swim speed calculator for free. All you need are your 400 m and 200 m freestyle times.

Enter your test times

mm:ss.cc
Category
Pool length

Predicted race times and 100 m pace

Swimming training zones — pace and heart rate

Send-off calculator for sets

Target time per repeat and the send-off rounded up to 5 seconds.

Save the test to your account

See how your threshold moves from one test to the next. The zones flow straight into your workouts.

Create a free account

What critical swim speed (CSS) is

Critical swim speed (CSS) is the pace you can hold for 20–40 minutes without lactate building up progressively. It is calculated from two all-out swims, 400 m and 200 m freestyle, following the Wakayoshi (1992) protocol. CSS gives you your training zones, your pace for sets and your predicted race times.

How to run the CSS test

  • Warm up 800–1200 m.
  • 400 m freestyle, all out.
  • 15–20 min easy recovery.
  • 200 m freestyle, all out.
  • Same pool and same order every time you retest.

How to use CSS in training

  • 10×100 at threshold — holding race pace.
  • 8×200 at threshold — threshold under fatigue.
  • 20×50 at threshold — pool speed.
  • 6×300 below threshold — aerobic volume.

Send-offs are rounded up to 5 seconds.

Swimming training zone calculator

Zones are calculated as a percentage of critical speed, not as fixed offsets in seconds. The result is a pace range per 100 m for each zone:

  • Z1 easy aerobic — 82–88% of CSS. Recovery, technique.
  • Z2 endurance — 88–95% of CSS. Base volume.
  • Z3 threshold — 98–103% of CSS. The main sets.
  • Z4 VO₂ max — 105–112% of CSS. Short, hard sets.
  • Z5 speed — 115–128% of CSS. Sprint, starts.

Swimming heart rate zones (%HRmax)

Each pace zone has a matching heart rate zone, on the standard percentage-of-max model: Z1 50–60%, Z2 60–70%, Z3 70–80%, Z4 80–90%, Z5 above 90%. Maximum heart rate in water is 10–15 beats below the running figure, so a max taken from running sets every zone too high. In a sprint, heart rate is not a useful guide: it reacts too slowly for a 25 or 50 m swim.

Swimming pace calculator

Swimming pace is expressed in seconds per 100 m: total time divided by distance, multiplied by 100. A 400 m in 5:20 means 1:20 per 100 m. The threshold pace from the test is the reference every other pace on this page is measured against — zones, sets and predicted race times.

CSS and the lactate threshold

The lactate threshold is measured in a lab, in steps, with an analyser. CSS estimates it from two stopwatch readings. The values do not coincide: CSS usually sits slightly above the classic lactate threshold. For training, what matters is retesting consistently, not the measurement method.

Why two swimmers with the same CSS sprint differently

CSS describes aerobic capacity. It does not measure explosive speed, the start or the turns. The profile is read from the pace difference between the 200 and the 400: a large difference means a sprinter profile, a small one a distance profile.

Limits of the method

CSS is an estimate, not an exact prediction. The relationships used for the predicted times come from studies on trained swimmers. The 50 and 100 m estimates are the weakest. A CSS measured in a 25 m pool is faster than one from a 50 m pool — only compare tests done under the same conditions. The heart rate percentages refer to maximum heart rate in water, 10–15 beats below the running figure.

Frequently asked questions

How often should CSS be retested?

Every 6–8 weeks, at the end of a training block.

Can I use 800 m and 200 m instead of 400 m and 200 m?

Yes. Any two distances far enough apart work. 400/200 remains the standard.

Why does my predicted 100 m differ from my personal best?

The model starts from critical speed, not from top speed. Sprinters swim faster than the estimate, distance swimmers close to it.

How do I calculate my swimming training zones?

From CSS. Each zone is a percentage of critical speed, converted into seconds per 100 m. The calculator above shows them directly.

What heart rate should I be at in each zone?

Z1 50–60%, Z2 60–70%, Z3 70–80%, Z4 80–90%, Z5 above 90% of maximum heart rate measured in water.

Does CSS apply to strokes other than freestyle?

Yes, but the test has to be redone in that stroke. A freestyle CSS does not give you breaststroke zones.