Critical Swim Speed calculator
CSS is the one number that turns “swim hard” into an actual pace. Two time trials, one subtraction, and every set you write afterwards has a target on the clock instead of a feeling.
Critical Swim Speed calculator
Two time trials, one subtraction. The result is your aerobic threshold pace and the five training zones built from it.
The common protocol. Both trials are long enough to be paced, so the result is stable week to week. Rest 5–10 minutes between them.
1.000 m/s — the pace you could theoretically hold indefinitely. In practice it lands close to your best 1500 m pace.
| Zone | % of CSS | Pace / 100 m | What it is for |
|---|---|---|---|
| Recovery | 70 % | 2:22.86 | Flushing between hard sets and on easy days. Should feel almost lazy. |
| Endurance 1 | 80 % | 2:05.00 | Aerobic base. The pace you can hold while still thinking about technique. |
| Endurance 2 | 88 % | 1:54.29 | Aerobic capacity. Steady work, breathing hard but controlled. |
| Threshold | 95 % | 1:45.26 | The zone that actually moves CSS. Sustainable but uncomfortable. |
| VO₂max | 105 % | 1:35.24 | Maximum aerobic power. Short, hard, expensive — use sparingly. |
Percentages apply to speed, not to the clock. Recovery at 70 % of CSS is a slower pace than threshold, which is why the seconds go up as the percentage goes down.

What CSS actually is
Critical Swim Speed is the fastest pace you could theoretically hold indefinitely without accumulating fatigue. It sits at your aerobic threshold — the boundary above which lactate starts building faster than you can clear it — and in practice it lands very close to your best 1500 m pace.
It comes from work by Wakayoshi and colleagues in 1992, who showed that a swimmer's time over two different distances falls on a straight line, and that the slope of that line is a meaningful physiological threshold. Ginn simplified it into the pool test swimmers actually use. The maths is deliberately simple:
CSS = (longer distance − shorter distance) ÷ (longer time − shorter time)
The shorter swim carries a large anaerobic contribution. Subtracting it from the longer swim leaves behind the part you can actually sustain. That is the whole idea, and it is why the two trials both have to be genuinely maximal — a soft 200 makes the gap too large and drags your CSS down; a soft 400 makes it too small and inflates it.
The two protocols
| Protocol | Formula | When to use it |
|---|---|---|
| 400 m + 200 m | 200 ÷ (T400 − T200) | The common protocol. Both trials are long enough to be paced, so the result is stable week to week. Rest 5–10 minutes between them. |
| 400 m + 50 m | 350 ÷ (T400 − T50) | The original Ginn simplification. The 50 is a flat sprint, so it needs a long recovery — 30 minutes or more — or the 400 is compromised and CSS comes out too fast. |
How to run the test without wasting it
- Warm up for 400 to 800 m, mixed swimming and drills, finishing with a few fast 25s so the first trial is not also your warm-up.
- Swim the 400 first, evenly. The classic mistake is going out at 200 pace and dying — that inflates the gap between the trials and hands you a CSS you cannot hold.
- Recover for five to ten minutes with easy swimming. Standing at the wall gets you a worse second trial than swimming easy does.
- Swim the 200 maximal. Push start both times, or dive start both times — do not mix, because a dive is worth close to a second.
- Retest in six to eight weeks, same pool, same time of day.
Turning CSS into training
The zones below are percentages of speed. This matters more than it sounds: a zone at 70 % of CSS is a slower pace, so the seconds per 100 go up, not down. Plenty of calculators multiply the pace instead of dividing it, which quietly turns every recovery swim into a threshold set.
| Zone | % of CSS | Purpose | Typical set |
|---|---|---|---|
| Recovery | 70 % | Flushing between hard sets and on easy days. Should feel almost lazy. | 200–400 m continuous, or the swim-down after a threshold set |
| Endurance 1 | 80 % | Aerobic base. The pace you can hold while still thinking about technique. | 8 × 200 m on a generous send-off |
| Endurance 2 | 88 % | Aerobic capacity. Steady work, breathing hard but controlled. | 5 × 400 m with 30 s rest |
| Threshold | 95 % | The zone that actually moves CSS. Sustainable but uncomfortable. | 10 × 100 m at CSS + 2 s, 15 s rest |
| VO₂max | 105 % | Maximum aerobic power. Short, hard, expensive — use sparingly. | 8 × 50 m at CSS − 3 s, 30 s rest |
Most of the gain comes from the threshold zone, and most of the damage comes from spending every session there. A workable split for someone swimming three times a week is one threshold session, one aerobic session and one technique session — the workouts guide has the sets written out.
What CSS will not tell you
It is a pace, not a diagnosis. If your CSS is slow because your body position is poor, training harder at that pace will not fix the body position — it will just make you fitter at swimming badly. Run the SWOLF and stroke-count check alongside it, and if the stroke count is high, the time is better spent in the technique section than in another threshold set.
CSS is also pool-specific. A test done in a 25 m pool gives a faster number than the same swimmer in a 50 m pool, because there are more push-offs. Compare like with like, or run the result through the course converter first.
Frequently asked questions
What is a good CSS pace?
There is no universal good. A recreational adult swimmer who trains a couple of times a week typically lands somewhere between 2:00 and 2:30 per 100 m; a competitive masters swimmer is usually between 1:20 and 1:40; national-level distance swimmers go under 1:10. The number that matters is your own three months ago — CSS is a tracking metric, not a grade.
How often should I retest my CSS?
Every six to eight weeks. More often than that and you are mostly measuring how tired you were on the day; less often and you spend months training to a pace you have already outgrown. Retest in the same pool, at a similar time of day, with a similar warm-up.
Should I use the 400/200 test or the 400/50 test?
The 400/200 in almost every case. Both trials are long enough to be paced properly, so the result is stable week to week. The 400/50 version is the original simplification and it works, but the 50 is a flat sprint that needs a very long recovery before the 400 — get that wrong and the 400 is compromised, which makes the gap between the trials too small and CSS comes out unrealistically fast.
Why is my CSS pace slower than my 400 pace?
It should be. Your 400 is a race effort with a real anaerobic contribution; CSS is the pace you could theoretically hold indefinitely. CSS typically sits a few seconds per 100 slower than 400 pace and lands close to your best 1500 pace. If CSS comes out faster than your 400 pace, one of the two trials was not a maximal effort.
Can I do the CSS test in a 25-yard pool?
Yes, but swim 400 and 200 yards and read the result as a per-100-yard pace, not per 100 metres. Mixing the two is the most common way people end up training 6 to 7 seconds per 100 too hard. If you need to compare against a metric pace, run the result through the course converter.
Sources
- Wakayoshi K. et al. — Determination and validity of critical velocity as an index of swimming performance in the competitive swimmer — European Journal of Applied Physiology (1992)
- Ginn E. — The application of the critical power test to swimming — Australian Sports Commission (1993), protocol summary
SwimFast is an independent publication. We are not a swim school, a coaching service or a governing body, and nothing here is medical advice. Training paces and test protocols are cited from the published research or federation documents linked on each page. Never swim alone, never attempt breath-hold work without supervision, and check with a doctor before starting a new training programme.