{
  "slug": "cycling-power",
  "title": "Cycling Power Calculator (Watts from Speed)",
  "category": "Cycling",
  "category_slug": "cycling",
  "tier": 1,
  "summary": "Estimate cycling power from speed, mass, drag area, rolling resistance, and gradient.",
  "description": "This calculator estimates the mechanical power required to cycle at a given speed by applying the Martin et al. (1998) cycling power model, which partitions total watts into aerodynamic drag, rolling resistance, and gravitational climbing forces. It accepts rider and bike mass, speed, drag area (CdA), rolling resistance coefficient (Crr), and gradient as inputs and returns an estimated power output in watts, alongside a breakdown of the three resistance components. The model assumes sea-level air density and standard gravity; results are most accurate for steady-state riding on road surfaces within the typical range of the published coefficients.",
  "page_url": "https://fitmetriclab.com/en/tools/cycling/cycling-power/",
  "api_url": "https://fitmetriclab.com/api/tools/cycling-power.json",
  "formula": {
    "id": "cycling_power",
    "expression": "P = \\tfrac{1}{2} \\rho\\, C_d A\\, v^{3} + C_{rr} m g v + m g v \\sin\\theta",
    "variables": [
      {
        "symbol": "v",
        "description": "Speed in km/h"
      },
      {
        "symbol": "m_r",
        "description": "Rider mass in kg"
      },
      {
        "symbol": "m_b",
        "description": "Bike mass in kg"
      },
      {
        "symbol": "C_d A",
        "description": "Drag area"
      },
      {
        "symbol": "C_{rr}",
        "description": "Coefficient of rolling resistance"
      },
      {
        "symbol": "\\theta",
        "description": "Road angle θ = arctan(gradient_pct / 100); enter the gradient as a percent and the calculator converts to the angle internally"
      }
    ]
  },
  "inputs": [
    {
      "id": "speed_kmh",
      "label": "Speed",
      "type": "number",
      "unit": "km/h",
      "default": 10,
      "min": 1,
      "max": 60,
      "step": 0.1
    },
    {
      "id": "rider_kg",
      "label": "Rider Weight",
      "type": "number",
      "unit": "kg",
      "default": 75,
      "min": 30,
      "max": 200,
      "step": 0.1
    },
    {
      "id": "bike_kg",
      "label": "Bike Weight",
      "type": "number",
      "unit": "kg",
      "default": 8,
      "min": 4,
      "max": 30,
      "step": 0.1
    },
    {
      "id": "cda",
      "label": "CdA (Drag Area)",
      "type": "number",
      "unit": "m²",
      "default": 0.32,
      "min": 0.15,
      "max": 0.6,
      "step": 0.01
    },
    {
      "id": "crr",
      "label": "Crr (Rolling Resistance)",
      "type": "number",
      "unit": "",
      "default": 0.005,
      "min": 0.001,
      "max": 0.02,
      "step": 0.001
    },
    {
      "id": "gradient_pct",
      "label": "Gradient",
      "type": "number",
      "unit": "%",
      "default": 5,
      "min": -30,
      "max": 30,
      "step": 0.5
    }
  ],
  "worked_example": {
    "inputs": {
      "speed_kmh": 10,
      "rider_kg": 75,
      "bike_kg": 8,
      "cda": 0.32,
      "crr": 0.005,
      "gradient_pct": 5
    },
    "expected_output": "128 W"
  },
  "result_summary_template": "At {speed_kmh} with a combined rider and bike weight of {rider_kg} plus {bike_kg} kg, a CdA of {cda} m², Crr of {crr}, and gradient of {gradient_pct}%, the model estimates {result}.",
  "methodology": "Implements the Martin et al. (1998) cycling power model: Power = 0.5 × ρ × CdA × v³ + Crr × m × g × v + m × g × sin(θ) × v, where v is speed in m/s (converted from km/h ÷ 3.6), ρ = 1.226 kg/m³ (sea level air density), m = rider + bike mass, g = 9.8067 m/s², and θ = arctan(gradient_pct / 100).",
  "sources": [
    {
      "label": "Martin JC, Milliken DL, Cobb JE, McFadden KL, Coggan AR. Validation of a mathematical model for road cycling power. J Appl Biomech. 1998;14(3):276-291.",
      "url": "https://doi.org/10.1123/jab.14.3.276"
    },
    {
      "label": "Debraux P, Grappe F, Manolova AV, Bertucci W. Aerodynamic drag in cycling: methods of assessment. Sports Biomech. 2011;10(3):197-218.",
      "url": "https://pubmed.ncbi.nlm.nih.gov/21936312/"
    },
    {
      "label": "Wilson DG, Papadopoulos J. Bicycling Science (3rd ed.). MIT Press; 2004.",
      "url": "https://mitpress.mit.edu/9780262731546/"
    }
  ],
  "faqs": [
    {
      "question": "What is CdA and how do I find mine?",
      "answer": "CdA is the product of drag coefficient (Cd) and frontal area (A), measured in square metres. Typical values range from 0.20–0.24 m² for a time-trial aero position, 0.30–0.35 m² for a road-race drops position, and 0.38–0.45 m² for an upright commuter position. Wind-tunnel testing or on-road field protocols (such as the Chung method) can provide individualised estimates; otherwise, published averages for similar positions serve as reasonable starting points."
    },
    {
      "question": "Why does the aero component increase so rapidly with speed?",
      "answer": "Aerodynamic drag scales with the square of velocity, and power is the product of force and velocity, so aero power scales with velocity cubed. Doubling speed from 20 km/h to 40 km/h increases aero drag by a factor of four and aero power by a factor of eight, which is why high-speed efforts demand disproportionately more watts than slower riding."
    },
    {
      "question": "How accurate is the fixed air density of 1.226 kg/m³?",
      "answer": "Air density at sea level and 15°C is approximately 1.226 kg/m³. At 1,500 metres elevation, density drops to roughly 1.056 kg/m³ (about 14% lower), reducing aero drag and power by a similar margin. The calculator does not adjust for altitude, temperature, or humidity, so results at elevation or in hot conditions will overestimate aero power slightly."
    },
    {
      "question": "What rolling resistance coefficient should I use?",
      "answer": "Crr values depend on tyre type, pressure, and surface. Smooth asphalt with high-pressure clinchers typically yields 0.004–0.006, tubeless or latex tubes may reach 0.003–0.004, and rough or wet pavement or lower tyre pressures increase Crr toward 0.007–0.010. Off-road or gravel surfaces can exceed 0.012. The default of 0.005 represents a mid-range road setup."
    },
    {
      "question": "Can I use this calculator for downhill speeds with negative gradients?",
      "answer": "Yes. The gradient input accepts values from −30% to +30%, and the gravity term becomes negative on descents, representing the propulsive force from gravity. At high downhill speeds, aero drag typically dominates the power balance, and riders may need to pedal minimally or brake to control speed rather than produce net positive power."
    }
  ],
  "related_tools": [
    {
      "slug": "cycling-power-zones",
      "title": "Cycling Power Zones Calculator",
      "api_url": "https://fitmetriclab.com/api/tools/cycling-power-zones.json",
      "page_url": "https://fitmetriclab.com/en/tools/cycling/cycling-power-zones/"
    },
    {
      "slug": "ftp-calculator",
      "title": "FTP Calculator (from 20-Min Test)",
      "api_url": "https://fitmetriclab.com/api/tools/ftp-calculator.json",
      "page_url": "https://fitmetriclab.com/en/tools/cycling/ftp-calculator/"
    },
    {
      "slug": "climbing-watts",
      "title": "Climbing Watts Calculator",
      "api_url": "https://fitmetriclab.com/api/tools/climbing-watts.json",
      "page_url": "https://fitmetriclab.com/en/tools/cycling/climbing-watts/"
    }
  ],
  "last_updated": "2026-04-22",
  "price": {
    "value": 0,
    "currency": "USD"
  },
  "runs_in_browser": true,
  "disclaimer": "Educational estimate produced from a published formula. Not medical, nutritional, or training advice. Calculations are deterministic — apply the formula to the inputs to reproduce the result."
}