A swimmer who goes 50.32 in the 100 free at a Yards-pool meet doesn't go 50.32 at a Long-Course-Meters meet. They go roughly 55.85 — about 5.5 seconds slower. That gap is real, predictable, and depends on stroke, distance, and which conversion model you trust. This guide explains the three competition courses, why each one produces different times, the four conversion models in active use, and the cases where any conversion is straight-up unsupported.
The Three Competition Courses
Competitive swimming is run in three distinct pool lengths:
| Course | Pool length | Acronym | Where it's used |
|---|---|---|---|
| Short Course Yards | 25 yards | SCY | NCAA, US high school, US club winter season |
| Short Course Meters | 25 meters | SCM | International short-course (FINA), winter European meets |
| Long Course Meters | 50 meters | LCM | Olympics, World Championships, US summer long-course season |
Same swimmer, same fitness, three different times for what looks like the same race. The difference is walls. A 100-yard race in a 25-yard pool has 4 lengths and 3 walls. A 100-meter race in a 25-meter pool has 4 lengths and 3 walls — but each length is 9.4% longer. A 100-meter race in a 50-meter pool has 2 lengths and 1 wall. Walls are fast (push-offs and underwater dolphin kicks are faster than swimming), so removing walls slows times. This is why LCM is always slower than SCM, and SCM is always slower than SCY for the metric-equivalent distance.
Why Conversions Aren't Just a Distance Ratio
The naïve conversion is to scale by distance: 100 yards is 91.44 meters, so a 50-second 100-yard swim "should" project to 50 × (100/91.44) = 54.7 seconds for a 100-meter swim. This is wrong — by enough to matter at every level above novice.
Three things break the naïve scaling:
- Walls. A 100-yard swim has 4 lengths × 3 walls. A 100-meter SCM has the same wall count but longer lengths. A 100-meter LCM has 2 lengths × 1 wall. Adding back the missing walls (or removing extra ones) requires a stroke-specific factor — wall efficiency varies hugely between butterfly (huge benefit) and freestyle (modest benefit).
- Stroke biomechanics. Breaststroke gets a larger wall-and-pullout benefit than freestyle because the underwater pullout is genuinely faster than surface swimming. Backstroke and butterfly fall in between. Each stroke needs its own conversion factor.
- Distance fatigue. A 50-meter swim is sprint-dominated; a 1500-meter swim is endurance-dominated. The wall effect matters more (in absolute seconds) at sprint distances than at distance, but matters more (in percent) at distance. The factor for the 50 free is not the factor for the 1500 free.
This is why the conversion factor for the 100 free SCY → LCM is roughly 1.110 (Classical model). Multiply 50.32 × 1.110 = 55.85. The factor for breaststroke is different. The factor for the 200 IM is different. The factor for the 1500 free is different.
The Swim Time Converter ships every conversion with a factor-transparency disclosure — it shows you the exact factor used and the formula applied (e.g., 50.32 × 1.110 = 55.85), with the source cited inline so you can verify against the original specification.
The Four Conversion Models
There is no single "correct" conversion. Four models are in active use, each calibrated against a different dataset for a different purpose.
1. Classical / Colorado Timing
Calibration: Empirical regression against a large historical dataset of swims that occurred in both courses within the same season. Maintained by Colorado Timing Systems, the manufacturer of most US club timing equipment.
Coverage: Full coverage — SCY ↔ SCM, SCY ↔ LCM, SCM ↔ LCM, all four strokes, all standard distances.
Best for: General-purpose conversions when you don't have a specific federation requirement. The default of most coaching tools.
2. USA Swimming
Calibration: Calibrated against USA Swimming's national-meet conversion tables, used for cross-course time-standard qualification. More conservative than Classical for sprint distances, more aggressive for distance.
Coverage: Full coverage between SCY, SCM, and LCM for USA Swimming sanctioned distances.
Best for: Time-standard qualification when an athlete is trying to convert a SCM or LCM time into a SCY time for a USA Swimming time cut (BB / A / AA / AAA / AAAA), or vice versa.
3. NCAA Administrative
Calibration: Calibrated by the NCAA for cross-course recruiting comparisons. Effectively a USA Swimming variant tuned for college-age swimmers.
Coverage: SCY ↔ SCM and SCY ↔ LCM are both supported. NCAA SCM ↔ LCM is explicitly unsupported — the NCAA does not publish an SCM↔LCM conversion because NCAA championship racing is exclusively SCY. The Swim Time Converter surfaces this gap with a "Coverage gap — pick a different model" warning rather than silently substituting another model's factor.
Best for: US college recruiting. International recruits and US high schoolers comparing SCM/LCM personal bests against NCAA cuts.
4. Performance (regression)
Calibration: A regression model fit to recent elite-tier performances, refreshed periodically. Better at the very top end of the distribution; worse for age-group times.
Coverage: SCY-source conversions only. The Performance model does not support non-SCY-source conversions (no SCM → LCM, no LCM → SCM, no SCM → SCY). The converter blocks these with an explicit coverage warning.
Best for: Elite NCAA-level athletes projecting SCY-pool times into SCM or LCM expectations. Not appropriate for age-group or recreational conversions.
The "Compare models" mode in the Swim Time Converter renders all four side-by-side for the same input swim, with greyed-out cells where a model has no coverage. That's the fastest way to see how much agreement (or disagreement) exists for your specific event and stroke.
Distance Equivalences That Aren't 1-to-1
Long-course free has a quirk that trips up everyone the first time. The standard distance ladder is different in yards versus meters:
| SCY distance | SCM / LCM equivalent |
|---|---|
| 500 free | 400 free |
| 1000 free | 800 free |
| 1650 free | 1500 free |
A 500-yard race is not converted to a 500-meter race — it's converted to a 400-meter race, because that's the standard metric distance in the same competitive bucket. 500-yard races and 500-meter races don't both exist in international competition; the metric ladder skipped 500.
The 400 IM has a similar nuance. SCY 400 IM and LCM 400 IM are both "400 IM" in name, but the wall counts differ (16 walls in SCY vs 7 walls in LCM), so the conversion factor is non-trivial.
The Swim Time Converter handles all of these distance remappings automatically — pick "500 free SCY" as your input event and it knows to compare against 400 free SCM/LCM, not the nonexistent 500 SCM/LCM.
How the Time Parser Handles Real-World Input
Coaches rarely paste perfectly formatted times. The parser accepts:
50→ 50.00 seconds50.32→ 50.32 seconds50.32s→ 50.32 seconds1:48.50→ 1 minute 48.50 seconds01:48.50→ 1 minute 48.50 seconds15:23.45→ 15 minutes 23.45 seconds (1500m / 1650y range)
Whitespace is tolerated. What's rejected:
- Negative times. No
-50.32. - Times ≥ 60 minutes. Anything
60:00.00or longer is a typo, not a swim time. - Non-numeric input. No alphabetic characters except the trailing
s.
The parser is hand-written with no eval — relevant if you're security-minded about pasting from spreadsheets that came from anywhere on the internet.
Time-Standard Lookup
Beyond conversion, the Swim Time Converter ships a Time-Standards mode that takes a swimmer's time and an event and returns the cut they hit:
- USA Swimming Motivational Time Standards. B / BB / A / AA / AAA / AAAA cuts for the major age groups. The v1 reference subset covers 13–14, 15–16, and 17–18 (M/F, SCY + LCM) with 10U, 11–12, and Open age groups planned for v1.1.
- NCAA Division I Open SCY A and B cuts for 13 events per gender. Useful for high-school swimmers projecting to college.
- Olympic Trials Open LCM cuts for 14 events per gender.
The output shows the next cut up with the delta in seconds — exactly how much faster the swimmer needs to go to hit it. The federation version is footnoted so you can cite the source. International federations (FINA, British Swimming, Swimming Australia) are tracked as v1.1 work; the v1 release is US-focused.
A check_circle icon (filled) indicates a cut hit; a radio_button_unchecked icon indicates a missed cut. The icons sit in green-on-success-container and muted backgrounds respectively, so achievement state never relies on color alone — important for color-blind accessibility.
Pace, Splits, and Altitude (Advanced Mode)
The advanced disclosure exposes three calculations that coaches use but rarely have an easy tool for:
- Pace per 100. Average speed per 100-meter (or 100-yard) split. Useful for comparing across distances.
- Even-splits estimate. What each split should be if the swimmer races the converted time evenly. Real races are negative-split for sprint and even-or-positive-split for distance, but the even baseline is what coaches use to set race plans.
- Altitude adjustment. Distance-aware Colorado Timing tier model with sea-level / Denver / Colorado Springs / Mexico City presets. Altitude affects sprint and distance differently — distance is more affected because of lower oxygen availability over a longer effort. The presets use the manufacturer's published tiers; you can also enter a custom altitude in feet.
The advanced mode is collapsed by default to keep the main converter UI focused. Open it when you need it.
The Roster Mode for Bulk Conversions
If you have an Excel column of times to convert (10–200 athletes), the Roster mode handles CSV / TSV / SSV bulk paste:
- Header detection — the parser recognizes common headers like
name, time, event, stroke, distancein any order. - Default-order fallback — if there are no headers, the parser assumes
name, distance, stroke, course, time. - Per-row error tolerance — a single bad row doesn't kill the conversion. The output table flags the bad row with a parse error and continues.
- Sortable result table with proper
<caption>,<scope>, and<headers>attributes for screen-reader navigation. - CSV / JSON export of the converted roster.
Roster mode is intentionally export-only with no permalink — athlete names are PII, and the lz-string #a= permalink would cap out at 4 KB anyway. The roster never leaves your browser.
The Honest Limitations
A conversion is a model, not a guarantee. Four caveats matter:
- Variance is real. The same swimmer at the same fitness can hit a SCY → LCM conversion within ±0.5% on a good day and ±1.5% on a bad day. The factor is the median expectation, not a prediction.
- Pool conditions vary. Deep-water pools (≥ 8 feet) have less wave drag than shallow ones. A "fast pool" can shave 0.3% off the projected time.
- Suit and tech effects. A jammer vs a tech suit can change a 100 free by 0.5–1.0 seconds. The conversion assumes apples-to-apples equipment.
- Age-group calibration is weakest. All four models are best-calibrated against college-and-elite swimmers. Conversions for 8U and 10U age groups are noticeably less reliable.
If a converted time is on the edge of a cut, treat the model as informative but not decisive — the swimmer needs to swim the actual event to confirm.
Related Tools on DevZone
The Swim Time Converter sits alongside other sport and fitness calculators:
- BMI Calculator — body composition for general fitness tracking.
- Calorie Calculator — TDEE and BMR for nutrition and training-load planning.
All of them run client-side. The Swim Time Converter specifically does not log athlete names, times, or rosters — Roster mode is export-only by design.
TL;DR
SCY, SCM, and LCM are three different pool lengths that produce systematically different times. Conversion requires a stroke-and-distance-specific factor; four models (Classical, USA Swimming, NCAA Administrative, Performance) are in active use, each with its own coverage gaps (NCAA has no SCM↔LCM, Performance has no non-SCY-source). Long-course free has a distance remapping (500y → 400m, 1000y → 800m, 1650y → 1500m). The Swim Time Converter ships factor-transparency disclosure, all four models side-by-side, time-standard lookup against USA Swimming / NCAA D1 / Olympic Trials cuts, and a roster mode for bulk team conversions — all running entirely in your browser.