For Everyone Training & analysis

CSS calculator (Critical Swim Speed)

How to run a CSS test in the swim, the three valid protocols, and how the calculator produces your swim threshold.

What it does

CSS (Critical Swim Speed) is your sustainable threshold pace in the water, used as the anchor for every swim training zone and swim pacing prescription. The CSS calculator takes the results of a structured swim test and outputs your CSS pace in seconds per 100 m plus your SDI (Speed Drop-off Index, a percentage showing how much your pace drops between the two test distances).

URL: /calculators/ then open CSS. Or open it directly at /static/calculators/css_calculator.html.

It is also wired into step 1 of the race planning wizard.

Inputs the form asks for

The CSS calculator supports three test formats. You fill in the one you ran.

Two-distance time trial (most common)

CSS pace per 100 m equals (distance2 minus distance1) divided by (time2 minus time1), scaled to a per 100 m figure. Order does not matter as long as distance2 is greater than distance1 (the longer swim is the second distance), so the 400+200 protocol below maps to distance1 = 200 and distance2 = 400.

3-rep set (optional)

For each of three repeats:

Outputs an averaged CSS plus the SDI economy score.

1000 m time trial

If you only have a single time trial result, enter the total time and the calculator estimates CSS from it.

Outputs

When you run the calculator from inside the race planning wizard, the output is saved as a CalculatorResult linked to the race; the wizard dashboard shows CSS and SDI as the step 1 key values.

How to run the test

Pick one protocol per session. The 400+200 is the most common.

Log both times. Plug them in. The calculator does the rest.

How often to retest

See also: Grepiac swim zones, Glossary: FTP, CSS, threshold pace.

Last updated Jul 26, 2026

Still stuck? Ask us a question and we'll write up an answer.

Ask a question