Today’s workout was short by my recent standards, but it had a very specific purpose. Rather than completing another 2,500-meter endurance workout, I used today’s session to perform a Critical Swim Speed test and establish a more objective freestyle training benchmark for the next phase of my Huntsman Senior Games preparation.
I did not swim yesterday, August 27. Between a doctor’s appointment and an extremely busy workday, I stayed out of the pool. Coming after the recent right shoulder and upper-arm discomfort, the additional day without swimming wasn’t necessarily a bad thing.
Today I returned for 1,600 meters in 26:56 of swimming time. TrainingPeaks calculated an average pace of 1:41/100 m, 39 sTSS and an Intensity Factor of 0.95. But those overall numbers don’t tell the most important part of today’s story.
August 28 Workout Summary
| Metric | Result |
|---|---|
| Distance | 1,600 m |
| Swimming Time | 26:56 |
| Average Pace | 1:41/100 m |
| Normalized Pace | 1:41/100 m |
| Average Speed | 59.4 m/min |
| Average Heart Rate | 131 bpm |
| Maximum Heart Rate | 151 bpm |
| sTSS | 39 |
| Intensity Factor | 0.95 |
| Calories | 461 kcal |
| TrainingPeaks Fitness | 59 |
| TrainingPeaks Fatigue | 64 |
| TrainingPeaks Form | -9 |
The Critical Swim Speed Test
Critical Swim Speed, commonly abbreviated CSS, uses a timed 400-meter freestyle and a timed 200-meter freestyle to estimate a sustainable threshold swimming pace. That makes it particularly useful for structuring training for my two primary freestyle events: the 800-meter and 1500-meter freestyle.
Today’s two test swims produced the following results:
| CSS Test | Time | Average Pace |
|---|---|---|
| 400 m Freestyle | 6:25.34 | 1:36.34/100 m |
| 200 m Freestyle | 3:06.25 | 1:33.13/100 m |
Calculating My CSS
The calculation uses the difference between the 400-meter and 200-meter performances:
CSS = (400 time − 200 time) ÷ 2
Using today’s results:
(6:25.34 − 3:06.25) ÷ 2 = approximately 1:39.5/100 m
That establishes my current measured Critical Swim Speed at approximately 1:39.5 per 100 meters. For practical workout programming in FORM and TrainingPeaks, I can round that to approximately 1:40/100 m.
400-Meter Test – 6:25.34
The 400-meter freestyle was completed in 6:25.34, averaging approximately 1:36.34/100 m.
The detailed Garmin data shows that I started the 400 aggressively. Individual 25-meter lengths early in the effort included 21.63, 23.56 and 21.13 seconds before I settled into a more sustainable rhythm.
The later lengths were generally in the 23–25 second range, with the final 25 taking 26.74 seconds. That slowdown is useful information. The overall 400 time was strong, but the pacing wasn’t perfectly even. There is probably performance available simply by improving how I distribute the effort rather than trying to gain all of the improvement through additional fitness.
200-Meter Test – 3:06.25
The 200-meter test produced the faster average pace expected from the shorter distance: 3:06.25, or approximately 1:33.13/100 m.
The first three 25-meter lengths were particularly quick at 21.81, 21.88 and 21.25 seconds. The final two lengths slowed to 25.81 and 25.56 seconds.
Again, that suggests pacing remains something I can improve. My speed is clearly there. The challenge is distributing it more efficiently across the entire distance.
What the CSS Result Means for Training
The value of today’s test is that I now have another objective number around which to organize freestyle training. Based on today’s test and my recent endurance performances, I can use approximately the following pacing framework:
| Training Purpose | Current Working Pace |
|---|---|
| Easy / Recovery Freestyle | Approximately 1:50–2:00+/100 m |
| Aerobic Endurance | Approximately 1:42–1:46/100 m |
| CSS / Threshold | Approximately 1:39–1:40/100 m |
| 800 / 1500 Race-Oriented Training | Approximately 1:35–1:38/100 m |
| Short Controlled Speed | Faster than 1:35/100 m |
I don’t intend to treat 1:39.5 as an absolute limit on what I can sustain. My recent 1500-meter freestyle training performance already demonstrates why.
CSS vs. My 1500-Meter Training Best
On August 23 I completed a 1500-meter freestyle training best of 24:04.84. That works out to approximately 1:36.3/100 m.
| Benchmark | Pace / 100 m |
|---|---|
| August 28 CSS | 1:39.5 |
| August 23 – 1500 FR Training Best | 1:36.3 |
| Difference | 1500 pace approximately 3.2 sec/100 faster |
That discrepancy is important. It means today’s CSS result should be treated as a training benchmark rather than a prediction of my race capability. A single CSS test can be affected by pacing, test execution, fatigue and the relationship between the two test distances.
My actual long-distance swimming remains the more important evidence when evaluating Huntsman performance potential.
Current Huntsman Benchmarks
Today’s CSS test doesn’t replace my existing race-distance training performances. Instead, it gives me another tool for determining how to structure the workouts that should improve them.
| Event | Training Best | 2025 Silver | 2025 Bronze | 2025 4th | Most Attainable Target | Difference |
|---|---|---|---|---|---|---|
| 1500 FR | 24:04.84 | 23:39.43 | 25:04.75 | 25:06.88 | Silver | +25.41 sec |
| 800 FR | 12:40.25 | 12:16.56 | 12:32.85 | 12:56.76 | Bronze | +7.40 sec |
| 200 BR | 3:27.54 | 3:38.74 | 3:39.92 | 4:00.27 | Silver | -11.20 sec |
| 100 BR | ~1:42 | 1:28.57 | 1:32.97 | 1:37.95 | 4th | ~+4.05 sec |
The overall picture remains unchanged. My primary Huntsman events are now the 1500 freestyle, 800 freestyle and 200 breaststroke. I will probably still swim the 100 breaststroke, but I’m no longer designing workouts specifically around that event.
Recent Training and Recovery
The last week has also required some adjustments to the training schedule.
| Date | Activity | Distance | sTSS | Notes |
|---|---|---|---|---|
| Aug. 22 | Swim | 3,000 m | 72 | Breaststroke benchmarks + 800 FR |
| Aug. 23 | Swim | 3,100 m | 78 | 1500 FR training best |
| Aug. 24 | Swim | 2,500 m | 63 | New right shoulder/upper-arm discomfort |
| Aug. 25 | Dryland | 3.79 mi / 6.10 km | — | Shoulder recovery day |
| Aug. 26 | Swim | 2,500 m | 55 | Controlled return to swimming |
| Aug. 27 | No Swim | — | — | Doctor’s appointment and work commitments |
| Aug. 28 | Swim | 1,600 m | 39 | Critical Swim Speed test |
Today’s session therefore added quality without adding another large-volume day. At 1,600 meters and 39 sTSS, it was substantially shorter than most of my recent swimming sessions while still providing useful performance data.
August Training Ledger
Today’s 1,600 meters brings my August swimming total to 59,200 meters, approximately 64,742 yards.
| Date | Training | Swim Distance | August Swim Total |
|---|---|---|---|
| August 2 | Swim | 5,000 m | 5,000 m |
| August 3 | Swim | 2,500 m | 7,500 m |
| August 4 | Swim | 2,500 m | 10,000 m |
| August 5 | Swim | 2,500 m | 12,500 m |
| August 6 | Swim | 3,000 m | 15,500 m |
| August 7 | No Swim | — | 15,500 m |
| August 8 | No Swim | — | 15,500 m |
| August 9 | Swim | 6,000 m | 21,500 m |
| August 10 | Swim | 2,500 m | 24,000 m |
| August 11 | Swim | 2,500 m | 26,500 m |
| August 12 | Swim | 2,500 m | 29,000 m |
| August 13 | Swim | 2,500 m | 31,500 m |
| August 14 | Run / Dryland | — | 31,500 m |
| August 15 | Swim | 2,500 m | 34,000 m |
| August 16 | Swim | 2,500 m | 36,500 m |
| August 17 | Swim | 2,500 m | 39,000 m |
| August 18 | Swim | 2,500 m | 41,500 m |
| August 19 | Swim | 2,500 m | 44,000 m |
| August 20 | Swim | 2,500 m | 46,500 m |
| August 21 | Rest | — | 46,500 m |
| August 22 | Swim | 3,000 m | 49,500 m |
| August 23 | Swim | 3,100 m | 52,600 m |
| August 24 | Swim | 2,500 m | 55,100 m |
| August 25 | Run / Shoulder Recovery | — | 55,100 m |
| August 26 | Swim | 2,500 m | 57,600 m |
| August 27 | No Swim | — | 57,600 m |
| August 28 | Swim – CSS Test | 1,600 m | 59,200 m |
Where the 75,000-Yard Goal Stands
My original August goal was 75,000 yards. With 59,200 meters completed, I am now at approximately 64,742 yards.
That leaves approximately 10,258 yards, or roughly 9,380 meters, to reach the original goal by the end of August.
With only three days remaining after today, reaching that number would require more than 3,100 meters per day. Given the recent shoulder issue and the much more important objective of preparing for Huntsman, I am not going to force that volume simply to reach a monthly mileage number.
The August goal did what it was supposed to do: it encouraged consistency. It doesn’t need to dictate the final three days of the month.
Today’s Takeaway
Today’s 1,600-meter workout produced something more useful than another large number in the monthly distance column.
I now have a measured Critical Swim Speed of approximately 1:39.5/100 m. The 400-meter test was 6:25.34, the 200-meter test was 3:06.25, and both provide additional information about my current freestyle speed and pacing.
The test also exposed something that has appeared in several recent workouts: I have enough speed to open very quickly, but I can probably improve my overall performances by controlling that opening speed and distributing the effort more evenly.
Most importantly, today’s CSS number gives me another objective benchmark for designing the next block of 800- and 1500-meter freestyle training.
The next time I repeat this test, I won’t just be looking for a faster 400 or 200. I will be looking for a faster CSS, better pacing within both test swims, and evidence that those improvements are carrying over to the distances that actually matter at Huntsman.
August 28 benchmark: CSS approximately 1:39.5/100 m.
Leave a Reply
You must be logged in to post a comment.