CSS pace: the one number that makes your sets make sense
Critical swim speed turns two time trials into a training pace, so you stop guessing how hard a set should feel and start swimming to a number.

Most adult swim sessions are prescribed in feelings. Swim this one hard. Take the next one easy. Hold a strong pace. It works, roughly, and it is why two swimmers doing the same written set can be doing entirely different training.
CSS is the cheapest way out of that. Two time trials, one piece of arithmetic, and every set after that can be written as a number.
What it is
Critical swim speed is an estimate of the fastest pace you could theoretically hold for a long time before fatigue starts accumulating quickly.
It comes from a simple idea: if you swim two different distances all out, the difference in time between them tells you something about your sustainable speed, because the shorter swim benefits more from the anaerobic contribution that cannot be maintained.
In practice, using 400 m and 200 m:
CSS speed = (400 − 200) ÷ (time for 400 − time for 200)
That gives metres per second. Divide 100 by it and you have your pace per 100 m, which is the form you actually want, because that is what the pace clock speaks.
If someone swims 400 m in 6:40 (400 s) and 200 m in 3:05 (185 s), the difference is 215 s for 200 m — a CSS pace of roughly 1:48 per 100 m. The CSS calculator does this without the mental arithmetic.
Why bother
Because "hard" is not a pace, and the sets that build aerobic fitness live in a narrow band that is very easy to miss on feel.
Swim a threshold set too fast and it turns into a sprint set: you fatigue, your stroke falls apart, and you spend the second half practising bad technique while going slower. Swim it too slow and you have done volume rather than training.
With a CSS number, a session stops being an argument with yourself. 8 × 100 at CSS + 2 s is a specific instruction. You either hit it or you do not, and if you cannot hold it by the sixth repeat, that is information rather than a mood.
It also makes sets comparable across months. The same written set at the same offset from an updated CSS is genuinely the same training stimulus, which is what progression requires.
How to run the test properly
The number is only as good as the two swims underneath it, and this is where most people quietly ruin it.
Warm up properly first. A time trial on cold shoulders is a slower time trial, and it drags both numbers in ways that do not cancel out. Fifteen minutes of easy swimming with a few build lengths is enough — the reasoning is in the swim warm-up.
Swim the 400 first, and swim it honestly. Maximal means you could not have gone faster, not that it felt brisk. This is the number people fudge, and fudging it inflates your CSS.
Recover fully between the two. Ten to fifteen minutes of easy swimming. If you go into the 200 tired, its time drifts towards the 400's, the gap shrinks, and your CSS comes out too fast.
Same pool, same course. A 25 m pool has more walls than a 50 m pool and produces quicker times, so a CSS from one is not comparable to a CSS from the other. That gap averaged 4.3% in one large study, which is more than enough to make your sets wrong — see short course vs long course.
Push off, do not dive. Consistency matters more than speed here, and a dive you rarely practise adds a variable you do not need.
Using the number
CSS is a reference point, not a training pace on its own. Sets are written as offsets from it.
Around CSS — from CSS to about 2 seconds faster per 100 — is the classic threshold work: longer repeats with short rest, the kind of set that raises the pace you can hold for a long swim. Something like 6 × 200 at CSS with 20 seconds rest.
Slower than CSS — 5 to 10 seconds per 100 above it — is aerobic volume. Long, steady, sustainable. This is where most of a distance swimmer's yardage should live.
Faster than CSS — 3 to 5 seconds per 100 below it — is where short repeats with generous rest belong. It hurts, and it should be a small fraction of the week.
The rest intervals matter as much as the paces. A threshold set with two minutes of rest between repeats is not a threshold set; it is a series of fast swims. The point of short rest is that it keeps the effort continuous.
If you would rather not write the sets yourself, the workout generator takes your CSS and the time you have and returns a whole session — warm-up, drills, a main set at these offsets with the send-offs already worked out, and a swim-down — sized to your speed instead of to a fixed table.
If you are still building the ability to hold any pace for a long swim, the sequencing in how to build swim endurance comes before this.
The same number answers the question most people are really asking, which is how long a distance is going to take them. How long it takes to swim 1 km works through that projection with the pace calculator, and explains why a real kilometre usually lands a little slower than CSS pace predicts.
Reading the clock without a watch
A pace number is only useful if you can act on it in the water, and most pools give you a pace clock rather than a display.
The trick is to convert your CSS into send-off times rather than trying to read a pace mid-swim. If your CSS is 1:48 per 100 m and you want 100s at CSS with 15 seconds rest, the send-off is 2:03 — you leave every two minutes and three seconds, and how much rest you get is the feedback. Hit the pace and you get your 15 seconds; miss it and you get less, which tells you immediately.
That is why sets are written on intervals. The interval is not an arbitrary constraint, it is the measuring instrument.
For 50s and 200s the same arithmetic applies at the relevant fraction, and the pace calculator will produce the splits if you would rather not do it on the tiles.
One practical note: round send-offs to something you can find on a clock. A set on 2:03 is technically correct and miserable to swim; a set on 2:05 is close enough and you will actually hold it. The interval calculator does that rounding for you, and it prints the rest you are actually left with once the send-off has been rounded — the number most tools quietly swallow.
What CSS is not
Three limits worth stating, because the number gets treated with more reverence than it has earned.
It is a model, not a measurement. It infers a physiological boundary from two performances. A lactate threshold measured in a laboratory is a different thing, and CSS is an approximation of something related to it. Useful, not precise.
It assumes both trials were maximal. The formula has no way of knowing whether you paced the 400 conservatively. Garbage in, confident-looking number out.
It says nothing about technique. Two swimmers with the same CSS can be at completely different points: one with an efficient stroke and modest fitness, one with a poor stroke and a strong engine. The number will not tell you which you are, and the fix is different for each. That is what stroke counts are for, discussed in stroke rate or stroke length.
Retesting, and what to expect
Retest every six to eight weeks, or when the sets that used to be hard stop being hard.
Expect improvement to be uneven. Beginners often drop their CSS pace substantially in the first few months, because both fitness and technique are improving at once. Experienced swimmers move in small increments, and a two-second improvement per 100 over a season is real progress.
Expect the number to go the wrong way sometimes, too. A test taken in a heavy training week, or after a poor night's sleep, will produce a worse CSS that says nothing about your fitness. Test rested, or do not test.
One more habit worth building: note the conditions alongside the number. Which pool, which course, how you slept, how many sessions that week. Six months later those notes are the difference between a data series and a list of numbers you cannot interpret.
And keep the raw times, not just the derived number. If your CSS moves, you want to know whether it was the 400 or the 200 that changed, because those point at different things.
The rest of the sets are in workouts, the standards in times, and the calculators in tools.
This is general training information, not a plan built for you. If you have a cardiac or respiratory history, maximal time trials are a conversation to have with a doctor first. Spotted an error? Tell us and we will correct it and date the change.
Frequently asked questions
How do I calculate CSS?
Swim an all-out 400 m and, after full recovery, an all-out 200 m. Subtract the 200 time from the 400 time, then divide 200 by that difference to get a speed in metres per second — or, more usefully, express the difference as your pace per 100 m. Our calculator does the arithmetic and converts it into a pace you can read off the clock.
Why 400 and 200?
Because the method needs two distances far enough apart that the difference between them is dominated by sustainable speed rather than by the sprint start. Some coaches use 400 and 100. What matters far more than the exact pair is that both efforts are genuinely maximal and separated by enough recovery that the second is not compromised by the first.
Is CSS the same as threshold?
It is an estimate of something similar, arrived at from performance rather than from physiology. A lactate threshold is measured in blood; CSS is inferred from two swims. They are correlated but they are not the same thing, and CSS should be treated as a practical training anchor rather than as a physiological measurement.
My CSS pace feels too easy. Did I do it wrong?
Almost certainly, and the usual cause is a 400 that was not truly maximal. If you paced the 400 conservatively, the gap between your two trials shrinks, and a smaller gap produces a faster CSS than you can actually hold. Repeat the test with a 400 you genuinely could not have swum faster.
How often should I retest?
Every six to eight weeks is a reasonable rhythm for most adult swimmers training a few times a week. More often than that and you are testing noise; less often and you spend months training to a pace that has stopped being appropriate. Retest when the sets start feeling easy rather than waiting for the calendar.
Sources
Read next

Lane etiquette: how to share a crowded lane without being the problem
Which way to circle in the US, Britain and Australia, picking a lane by seconds per length, the 5-second gap, passing and resting — and where the published rules disagree.

Swim paddles and fins: what they train and when they cost you
Paddles lower your training load at steady speed and a four-week block changed nothing; fins raise energy cost. What the measurements say and how to use both.

Wetsuit for open water swimming: when you actually need one
The water temperatures at which World Aquatics, U.S. Masters Swimming and USA Triathlon require or ban wetsuits, what a suit does to your body, and how to measure it.
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.