Fluid Dynamics · Sports Science · Physics
📅 July 2026 ⏱ ≈ 12 min read 🎯 Beginner–Intermediate · Last updated: 3 July 2026

Swimming Hydrodynamics — Drag, Propulsion, and the Physics of the Stroke

Water is roughly 800 times denser and about 60 times more viscous than air, which is why swimming is the slowest and most energy-costly way humans move: an elite swimmer converts only about 5–9% of metabolic power into forward motion, versus roughly 20–25% for a runner or cyclist. Almost all of that lost energy is spent fighting three distinct kinds of drag while trying to generate thrust from shed vortices rather than simple paddling. Understanding the drag equation, the vortex model of propulsion, wave-making at the free surface, and the role of buoyancy explains why stroke technique — not raw strength — dominates swimming performance.

1. Three Types of Drag

Total resistive drag on a swimmer: F_drag = F_friction + F_form + F_wave Skin friction drag (viscous, boundary-layer shear): F_friction = ½ · ρ · C_f · S_wet · v² where: ρ = water density (998 kg/m³ at 20°C) C_f = skin friction coefficient (~0.003-0.005, depends on boundary-layer state: laminar vs turbulent) S_wet = wetted surface area (~1.8-2.2 m² for adult swimmer) v = swim speed relative to water Form (pressure) drag — from flow separation behind the body: F_form = ½ · ρ · C_d · A_frontal · v² where: C_d = form drag coefficient (streamlined body: 0.3-0.5, poor body position: up to 1.0+) A_frontal = frontal cross-sectional area (~0.08-0.11 m² streamlined, larger with poor alignment) Wave drag (energy radiated into surface waves): F_wave ∝ v^4 to v^6 near critical (hull) speed — dominant term at race pace, near-negligible when fully submerged (underwater dolphin kick). Approximate contribution at 2 m/s (sprint pace), surface swimming: Friction drag ≈ 10-15% Form drag ≈ 40-60% Wave drag ≈ 30-50%

Because wave drag rises with roughly the fourth to sixth power of speed, sprinters pay a steep aerodynamic-style penalty for swimming at the surface — which is exactly why competitive swimmers use a streamlined underwater dolphin kick off every wall for up to 15 m (the FINA/World Aquatics limit) before surfacing: fully submerged, wave drag disappears almost entirely.

2. Reynolds Number and Flow Regime

Reynolds number characterises the ratio of inertial to viscous forces around the body: Re = (ρ · v · L) / μ where: v = swim speed (~1.5-2.2 m/s elite) L = characteristic length (body length, ~1.8-2.0 m) μ = dynamic viscosity of water (~1.0 × 10⁻³ Pa·s at 20°C) Example (elite freestyle, v = 2.0 m/s, L = 1.9 m): Re = (998 × 2.0 × 1.9) / 0.001 ≈ 3.8 × 10⁶ At this Reynolds number the boundary layer around most of the body is turbulent, not laminar — turbulent boundary layers resist separation better (lower form drag) but have higher skin friction than laminar ones. This trade-off is why deliberately "tripping" the boundary layer (textured suit fabric, or a swimmer's own body hair) can, counter-intuitively, sometimes reduce total drag by delaying separation.

3. Wave Drag and the Hull-Speed Limit

A swimmer's torso at the surface behaves like a displacement hull: it pushes water aside and generates a bow wave. Ship hydrodynamics gives an approximate speed ceiling set by the wavelength of the self-generated wave matching the body's waterline length:

Theoretical "hull speed" limit: v_hull ≈ 1.34 · √L (L in feet, v in knots — classic naval formula) In SI form for a swimmer of waterline length L (m): v_hull ≈ 0.42 · √(g · L) For L ≈ 1.9 m: v_hull ≈ 0.42 · √(9.81 × 1.9) ≈ 1.81 m/s Elite 50 m freestyle swimmers reach ~2.2-2.4 m/s average, well above this naive hull-speed estimate — achievable because: • The body is not a rigid hull; kicking and pulling continuously add thrust to overcome the steepening wave • Rolling and undulating motion changes effective waterline length • A large fraction of a lap is spent submerged off the walls, where wave drag does not apply

4. The Vortex Model of Propulsion

Early 20th-century "paddle theory" assumed a swimmer's hand pushes straight backward against still water, generating thrust purely from drag (Newton's third law on a flat plate). Modern fluid analysis — using particle image velocimetry (PIV) on real strokes — shows this is incomplete. The dominant model today is vortex-based propulsion, analogous to how insect and fish fins generate thrust.

Lift-and-drag combined thrust model (Counsilman's sculling motion): F_thrust = F_drag,hand + F_lift,hand F_drag,hand = ½ · ρ · C_D · A_hand · v_hand² (perpendicular to hand path) F_lift,hand = ½ · ρ · C_L · A_hand · v_hand² (perpendicular to F_drag, from hand's angle of attack) The hand does not travel in a straight line but follows a curved, S-shaped or sculling path (in-sweep, out-sweep) that: 1. Continuously changes angle of attack, keeping C_L favourable 2. Sheds a starting vortex at each direction change 3. Uses the bound circulation Γ around the hand/forearm to generate lift-based thrust via the Kutta-Joukowski relation: F_lift ≈ ρ · v_hand · Γ (per unit span, simplified) Net propulsive force is the vector sum of lift and drag components projected onto the direction of travel, integrated over the whole stroke cycle.
Why this matters for technique: Because thrust comes from a changing angle of attack and vortex shedding rather than a single backward push, the most efficient stroke path is curved, not straight — visible in high-speed footage of elite freestyle and butterfly pulls as an "S" or hourglass pattern through the water.

5. Buoyancy and Body Position

Archimedes' principle: F_buoyancy = ρ_water · V_displaced · g Net vertical force on a floating body: F_net = F_buoyancy − W_body = ρ_water · V_displaced · g − m·g Human body density ≈ 0.95-1.05 g/cm³ (close to water, varies with lung inflation, body fat %, and bone density) — this is why a full inhale (lungs expand chest volume, V_displaced ↑) makes a swimmer noticeably more buoyant than a full exhale. Centre of buoyancy (COB) vs centre of mass (COM): COB is typically near the chest/lungs (air-filled) COM is typically near the hips (denser leg/pelvis mass) COB above and forward of COM → legs tend to sink → creates extra frontal area and form drag unless corrected by: • head-down, forward body line ("swimming downhill") • two-beat or six-beat kick to counteract leg sink • rotation about the long axis to reduce frontal profile

A swimmer whose hips and legs sag even 5-10° below horizontal can see frontal area — and therefore form drag — increase by 50% or more, which is a far larger performance cost than most stroke timing errors.

6. Stroke Mechanics and Efficiency

Swimming efficiency is commonly measured with the stroke index (SI) and Froude efficiency (η_F), both used by coaches to separate "how far per stroke" from raw speed:

Stroke index: SI = v · SL where SL = stroke length (distance travelled per stroke cycle, m) v = average velocity (m/s) Distance per stroke (DPS): DPS = pool_length / stroke_count Froude propulsive efficiency (idealised): η_F = v / (v + v_slip) where v_slip is the backward slip velocity of the propelling surface (hand/foot) relative to still water — the lower the slip, the higher the efficiency, but zero slip is physically impossible since some backward relative motion is required to generate any propulsive force at all. Typical elite Froude efficiency: 55-70% (freestyle arm pull) Typical elite whole-stroke mechanical efficiency: 5-9% (most metabolic energy is lost to drag and to internal/ non-propulsive movement, not to slip alone)

7. Swimsuits, Shaving, and Surface Effects

Because roughly half of race-pace drag is friction and form drag acting directly on the skin and suit fabric, equipment and body surface changes have measurable effects even though they cannot alter the dominant wave-drag term.

Pool design also matters: Deeper pools (≥2.5 m), wave-absorbing lane ropes, and gutter overflow systems all reduce turbulence reflected back onto swimmers from their own bow waves — part of why "fast pools" like the 2008 Beijing Water Cube produced so many world records independent of suit technology.

8. Simulating Drag Numerically

A simplified real-time simulation can model a swimmer as a streamlined ellipsoid with a time-varying frontal area and drag coefficient driven by stroke phase, without needing full computational fluid dynamics:

function dragForce(velocity, strokePhase) {
  // Base parameters (SI units)
  const rho = 998;        // water density, kg/m^3
  const sWet = 1.9;       // wetted surface area, m^2
  const cf = 0.004;       // skin friction coefficient
  const aFrontalBase = 0.09; // streamlined frontal area, m^2

  // Stroke phase modulates body alignment: 0 = fully
  // streamlined (underwater kick), 1 = worst alignment
  // (mid-pull, hip sag)
  const alignment = 0.5 - 0.5 * Math.cos(strokePhase * 2 * Math.PI);
  const cd = 0.30 + alignment * 0.35;      // 0.30-0.65
  const aFrontal = aFrontalBase * (1 + alignment * 0.4); // hip sag grows area

  // Skin friction (viscous) drag
  const fFriction = 0.5 * rho * cf * sWet * velocity ** 2;

  // Form (pressure) drag
  const fForm = 0.5 * rho * cd * aFrontal * velocity ** 2;

  // Wave drag: negligible when submerged, steep near surface
  const isSubmerged = strokePhase < 0.15; // underwater kick window
  const fWave = isSubmerged
    ? 0
    : 0.5 * rho * 0.02 * aFrontalBase * velocity ** 4 / 4; // steep v^4 term

  return fFriction + fForm + fWave;
}

// Simple velocity-Verlet-style update per timestep
function step(state, thrust, dt) {
  const mass = 75; // kg, effective swimmer mass
  const drag = dragForce(state.velocity, state.strokePhase);
  const netForce = thrust - drag;
  const accel = netForce / mass;

  state.velocity += accel * dt;
  state.position += state.velocity * dt;
  state.strokePhase = (state.strokePhase + dt * state.strokeRate) % 1;
  return state;
}

Feeding this loop into a Three.js scene — driving a rigged swimmer mesh's stroke phase and visualising shed vortices as particle trails behind the hands and feet — turns the abstract drag/thrust equations above into an interactive model where learners can adjust stroke rate, streamline quality, and kick timing to see the resulting velocity curve in real time.

💨 Fluid Simulation →