Critical Swim Speed (CSS) Aerobic Threshold Calculator

The formula

CSS = (400 - 200) / (T₄₀₀ - T₂₀₀) | Pace_100m = 100 / CSS

Why Critical Swim Speed is the Golden Metric for Swimmers & Triathletes

Developed by British swimming researchers Ginn and Wakayoshi, Critical Swim Speed (CSS) represents the swimming equivalent of cycling FTP or running lactate threshold. Subtracting a 200m time trial from a 400m time trial cleanly cancels out the initial anaerobic capacity buffer, isolating true mitochondrial oxygen consumption capacity.

Frequently asked questions

How often should I re-test my CSS?
Swimmers should re-test CSS every 6 to 8 weeks. As stroke mechanics improve and aerobic capacity expands, your CSS will drop by 1 to 3 seconds per 100m, requiring updated interval target times.

Source & methodology

Wakayoshi K, et al. "Determination and validity of critical velocity as an index for swimming performance." Eur J Appl Physiol. 1992.

How Critical Swim Speed (CSS) Aerobic Threshold works — and what your result really means

This page was written for one job: turning your own inputs into a defensible figure, with the working shown. There are plenty of pages about Critical Swim Speed (CSS) Aerobic Threshold; almost none of them show the working. This one does: the formula, every input, a fully computed example, and a sensitivity analysis calculated live from this engine’s own defaults.

Individual variation is large here: limb proportions, fibre mix and history all shift how a population-average Critical Swim Speed (CSS) Aerobic Threshold maps to you. Use it as a starting prescription, then let performance feedback over weeks tune it.

A calculation like this one is worth roughly as much as a careful sentence: it forces several vague considerations into one comparable quantity. Once Critical Swim Speed (CSS) Aerobic Threshold is on the table, the argument can stop being about impressions.

Nothing below is stock text pasted around a number: the worked example computes critical Swim Speed (CSS) Pace = 97.50000000000001 from this tool’s own defaults — which is the thread the rest of this guide pulls on.

Every input in Critical Swim Speed (CSS) Aerobic Threshold, and what it does to the answer

One formula, published in full: CSS = (400 - 200) / (T₄₀₀ - T₂₀₀) | Pace_100m = 100 / CSS. Anything you can read, you can reproduce in a spreadsheet, and that reproducibility is the whole point of printing it rather than hiding it behind a button.

400m Time Trial (Minutes) (example value 6) is a quantity rather than a category — precision here is cheap and worth having. Be precise about the boundary (exact date, start of month); time inputs decide the exponent in most formulas.

400m Time Trial (Seconds) (example value 10) is a measured number in the unit named by the label; the formula does not convert for you. Use the value as of today, not as of the last time you looked — time fields drift silently.

200m Time Trial (Minutes) (example value 2) is a numeric input whose unit is fixed by the label; a wrong unit is a wrong answer wearing a plausible disguise. Use the value as of today, not as of the last time you looked — time fields drift silently.

200m Time Trial (Seconds) (example value 55) is a measured number in the unit named by the label; the formula does not convert for you. If the period is partial, decide whether you mean elapsed or planned time and keep that meaning across every field.

The default Critical Swim Speed (CSS) Aerobic Threshold calculation, written out in full

Rather than describe the calculation, here it is end to end — every substitution in order, starting from the inputs above. Starting figures: 400m Time Trial (Minutes), 400m Time Trial (Seconds), 200m Time Trial (Minutes), 200m Time Trial (Seconds). The endpoint of that chain is 97.50000000000001 of critical Swim Speed (CSS) Pace, sitting in the “🟢 CSS Aerobic Threshold: 01:38 per 100m (1.03 m/s). Projected 1,500m finish: 24:23.” band.

  1. 400m Time = 06:10 (370s) | 200m Time = 02:55 (175s)
  2. Delta Time = 370s − 175s = 195 seconds
  3. CSS Speed = (400m − 200m) ÷ 195s = 200 ÷ 195 = 1.026 m/s
  4. Pace per 100m = 100 ÷ 1.026 = 01:38 / 100m
  5. Projected 1,500m Open Water Finish = 15 × 97.5s = 24:23

CSS Pace per 100m — 01:38 / 100m. Read next to the headline, this is the figure that shows the shape of the trade-off.

Swimming Velocity — 1.03 m/s. This is the number experienced users quote when the headline alone would mislead.

Projected 1,500m Olympic Distance — 24:23. Read next to the headline, this is the figure that shows the shape of the trade-off.

Endurance Zone (CSS + 5s) — 01:43 / 100m. Compare it against the main result of 97.50000000000001 before drawing conclusions.

Sprint Zone (CSS - 4s) — 01:34 / 100m. This is the number experienced users quote when the headline alone would mislead.

Overwrite any input above and every line of this example updates with it — the substitution is live, not a screenshot of somebody else’s numbers.

What a Critical Swim Speed (CSS) Aerobic Threshold of 97.50000000000001 means in practice

The value above only becomes useful the moment you know what it is being measured against. On the example inputs the band reads “🟢 CSS Aerobic Threshold: 01:38 per 100m (1.03 m/s). Projected 1,500m finish: 24:23.”; your own figures place you on a different rung of the same ladder. The practical reading rules: compare against your own history before comparing against other people; treat band boundaries as zones, not walls — one point on the wrong side of a threshold rarely changes a real outcome; and when a companion output contradicts the headline, believe the pair.

Where Critical Swim Speed (CSS) Aerobic Threshold sits next to similar measures: this tool answers “how much is the Critical Swim Speed (CSS) Aerobic Threshold”, while the related calculators answer “what do I do about it”. Reading the result alone tends to over-weight a single snapshot; pairing it with the companion tools above turns the number into a decision.

The errors that quietly break a Critical Swim Speed (CSS) Aerobic Threshold figure

Reusing a Critical Swim Speed (CSS) Aerobic Threshold from last season. In Fitness & Sports the inputs are the thing that drifts; the formula does not.

Reusing a Critical Swim Speed (CSS) Aerobic Threshold from last season. In Fitness & Sports the inputs are the thing that drifts; the formula does not.

The subtlest error is answering the wrong question precisely. Confirm that critical Swim Speed (CSS) Pace is actually the quantity your decision needs — the arithmetic is flawless either way, which is what makes the mistake invisible.

Critical Swim Speed (CSS) Aerobic Threshold verification checklist

  • State, in one sentence, which convention each rate, unit or period in the form is using.
  • Compare the result with one independent method or published benchmark.
  • Confirm the inputs are dated — a Critical Swim Speed (CSS) Aerobic Threshold figure should carry the date it was computed.
  • Recompute once with the dominant input deliberately set low, and see whether the decision changes.
  • Check that every field the formula needs actually arrived from a document, not from recollection.
  • Repeat the ±10 % test on the inputs that matter and see whether the decision — not just the number — still holds.

A routine for decision-grade Critical Swim Speed (CSS) Aerobic Threshold

The tool does the arithmetic; the routine below is what makes the arithmetic trustworthy. Five steps, a minute total — and afterwards you will know not just what the number is, but which assumption produced it.

Step 1 — gather before you type. Critical Swim Speed (CSS) Aerobic Threshold depends on 400m time trial (minutes), 400m time trial (seconds), 200m time trial (minutes), 200m time trial (seconds). Collect them from a source document — a statement, a report, an invoice, a log — rather than from memory, because recalled inputs are the single largest cause of wrong results. One decimal place more than your data supports is one decimal place of fiction.

Step 2 — baseline before exploration. Get one defensible Critical Swim Speed (CSS) Pace on screen before you start nudging numbers. Without a baseline, every variation looks interesting and none of them means anything. Repeating a calculation with the same numbers proves only that the arithmetic is reliable — which is worth knowing.

Step 3 — change one input at a time. Nudge a single field by ten percent, watch the headline and its companions move, then undo it. Two or three fields will dominate — the sensitivity table above already ranks them for this engine. A calculation you cannot explain to somebody else is a calculation you cannot defend.

Step 4 — compute a corridor, not a point. Three runs — worst, likely, best — turn Critical Swim Speed (CSS) Aerobic Threshold from a snapshot into a range. Plan against the pessimistic end and treat the optimistic end as the upside story. Comparisons are cheap: run the identical calculation for the alternative and look at the gap.

Step 5 — write the one-line memo. “Critical Swim Speed (CSS) Pace = 97.50000000000001 on this date, from these inputs.” That line is the entire deliverable; everything else on this page is how you earned the right to write it. A figure nobody can reproduce is a figure nobody will act on twice.

Who actually uses Critical Swim Speed (CSS) Aerobic Threshold — and when

Fitness & Sports arguments end at arithmetic or they do not end. Critical Swim Speed (CSS) Aerobic Threshold is the arithmetic: 97.50000000000001 on the example inputs, reproducible by anyone who types the same numbers. A calculation you cannot explain to somebody else is a calculation you cannot defend.

The audience for this page is people who need one trustworthy number before their next decision. In professional Swimming practice the pattern is always the same — screen with Critical Swim Speed (CSS) Aerobic Threshold, then invest slow analysis only in whatever survives the screen. Estimates improve most when the worst case is written down in ink.

There is a personal-administration use people overlook: periodic self-checking. Critical Swim Speed (CSS) Aerobic Threshold quietly drifts as life changes — rates move, bodies change, costs compound — and re-running it a few times a year catches drift while correction is still cheap. Compare the calculation to the rough guess you arrived with, and ask why they differ.

People also ask about Critical Swim Speed (CSS) Aerobic Threshold

What is a typical Critical Swim Speed (CSS) Aerobic Threshold?

On the worked example above Critical Swim Speed (CSS) Aerobic Threshold comes out at 97.50000000000001. Treat that as one point on a distribution rather than a norm: the bands, the companion outputs and the sensitivity ranking tell you how wide the plausible range really is.

How do I calculate Critical Swim Speed (CSS) Aerobic Threshold by hand?

Use the stated model — CSS = (400 - 200) / (T₄₀₀ - T₂₀₀) | Pace_100m = 100 / CSS — and substitute in the order the tool prints (it starts from 400m Time = 06:10 (370s) | 200m Time = 02:55 (175s)). On the example inputs the hand route lands on 97.50000000000001, exactly what the calculator shows. A spreadsheet reproduces it in two or three cells; doing it once by hand is what makes the automated answer trustworthy.

Is the Critical Swim Speed (CSS) Aerobic Threshold result of 97.50000000000001 good or bad?

The tool answers “what”, not “whether”: 97.50000000000001 carries the verdict “🟢 CSS Aerobic Threshold: 01:38 per 100m (1.03 m/s). Projected 1,500m finish: 24:23.” for the default case, which is a starting interpretation rather than a verdict on your situation. Re-run with your own figures and compare the bands.

Is Critical Swim Speed (CSS) Aerobic Threshold accurate?

The arithmetic is exact: CSS = (400 - 200) / (T₄₀₀ - T₂₀₀) | Pace_100m = 100 / CSS is evaluated with full floating-point precision and every substitution is printed in the worked example. What limits accuracy is input quality and the model’s assumptions, so treat the 97.50000000000001 result as the correct answer to the question you typed — and check the assumptions section before acting on it.

Is Critical Swim Speed (CSS) Aerobic Threshold individualized?

Partly — the tool is mechanical on the inputs you provide (400m Time Trial (Minutes), 400m Time Trial (Seconds)); what varies person-to-person is the response. Start at the computed 97.50000000000001, adjust by results within a few sessions.

How often should I re-test my CSS?

Swimmers should re-test CSS every 6 to 8 weeks. As stroke mechanics improve and aerobic capacity expands, your CSS will drop by 1 to 3 seconds per 100m, requiring updated interval target times.

Can this tool see the numbers I type?

It cannot. There is no submission step: the calculation happens in your browser and the result disappears when you close the page. Treat the fields above as a scratchpad rather than a form.

Key terms on this page

CSS Pace per 100m
01:38 / 100m on the example inputs — a companion figure printed beside the headline of Critical Swim Speed (CSS) Aerobic Threshold so that no result is read in isolation.
Swimming Velocity
1.03 m/s on the example inputs — a companion figure printed beside the headline of Critical Swim Speed (CSS) Aerobic Threshold so that no result is read in isolation.
Projected 1,500m Olympic Distance
24:23 on the example inputs — a companion figure printed beside the headline of Critical Swim Speed (CSS) Aerobic Threshold so that no result is read in isolation.
Critical Swim Speed (CSS) Pace
The primary output of this tool: 97.50000000000001 for the default inputs, computed exactly from CSS = (400 - 200) / (T₄₀₀ - T₂₀₀) | Pace_100m = 100 / CSS.
Worked example
Every substitution in order, from the example inputs to 97.50000000000001 — the audit trail for the headline figure.
Verdict band
The interpretation attached to a result (“🟢 CSS Aerobic Threshold: 01:38 per 100m (1.03 m/s). Projected 1,500m finish: 24:23.” on these inputs), which turns a bare number into a position on a scale.

Method, sources and what this tool cannot tell you

There is no black box on this page — the engine evaluates CSS = (400 - 200) / (T₄₀₀ - T₂₀₀) | Pace_100m = 100 / CSS. Source of record: Wakayoshi K, et al. "Determination and validity of critical velocity as an index for swimming performance." Eur J Appl Physiol. 1992. Any other implementation of this model should return the same figure for the same inputs. If one does not, the difference is in its assumptions — which this page prints and that one probably does not.

Nothing here replaces a qualified professional, and nothing here is approximate either — the arithmetic is exact, and the honesty is in the inputs you supply. Nothing is smoothed, weighted or adjusted behind the scenes; where judgement enters, this page says so and names the input responsible.

What to do with your Critical Swim Speed (CSS) Aerobic Threshold next

Save the number together with its inputs and today’s date; a Critical Swim Speed (CSS) Aerobic Threshold figure without context is unusable the moment an input changes.

Whoever you are (people who need one trustworthy number before their next decision), the next step is the same: replace the example inputs with your own, note the date, and re-run whenever a figure moves. In Fitness & Sports, a dated figure is a trend, and an undated one is a rumour.