Rear Shock Spring Rate Calculator

.spring-calc-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; max-width: 800px; margin: 20px auto; padding: 25px; border: 1px solid #e1e1e1; border-radius: 12px; background-color: #ffffff; box-shadow: 0 4px 6px rgba(0,0,0,0.05); } .spring-calc-header { text-align: center; margin-bottom: 30px; } .spring-calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 25px; } .spring-input-group { display: flex; flex-direction: column; } .spring-input-group label { font-weight: 600; margin-bottom: 8px; color: #333; font-size: 14px; } .spring-input-group input, .spring-input-group select { padding: 12px; border: 1px solid #ccc; border-radius: 6px; font-size: 16px; } .spring-calc-button { grid-column: span 2; background-color: #d32f2f; color: white; padding: 15px; border: none; border-radius: 6px; font-size: 18px; font-weight: bold; cursor: pointer; transition: background 0.3s; } .spring-calc-button:hover { background-color: #b71c1c; } .spring-result-area { margin-top: 25px; padding: 20px; background-color: #f8f9fa; border-radius: 8px; border-left: 5px solid #d32f2f; text-align: center; } .spring-result-value { font-size: 32px; font-weight: 800; color: #d32f2f; margin: 10px 0; } .spring-article { margin-top: 40px; line-height: 1.6; color: #444; } .spring-article h2 { color: #222; border-bottom: 2px solid #eee; padding-bottom: 10px; } .spring-article h3 { margin-top: 25px; color: #333; } @media (max-width: 600px) { .spring-calc-grid { grid-template-columns: 1fr; } .spring-calc-button { grid-column: span 1; } }

Rear Shock Spring Rate Calculator

Determine the ideal coil spring weight for your mountain bike or motorcycle suspension.

25% (Firm/XC) 28% (Trail/Enduro) 30% (Plush/DH) 33% (Max Comfort)
Recommended Spring Rate
0 lbs/in

How to Choose the Correct Rear Shock Spring

Choosing the right spring rate is the most critical step in setting up a coil-sprung rear shock. Unlike air shocks, where you can simply add or remove pressure, a coil shock requires physically swapping the metal spring to change the "stiffness" of the suspension.

The Math Behind the Calculation

Our calculator uses the relationship between your Rider Weight, your bike's Leverage Ratio, and the Shock Stroke. The primary formula is:

Spring Rate = (Rider Weight × Weight Bias × Leverage Ratio) / (Stroke × Sag %)

Key Terms Explained

  • Leverage Ratio: This is the Rear Wheel Travel divided by the Shock Stroke. For example, a bike with 150mm of travel and a 50mm stroke shock has a 3:1 leverage ratio.
  • Shock Stroke: The actual distance the shock shaft compresses. This is not the same as the total length of the shock (Eye-to-Eye).
  • Sag: The amount the suspension compresses under your weight in a neutral riding position. Most gravity-oriented bikes perform best at 28% to 30% sag.
  • Weight Bias: On a mountain bike, roughly 60% to 70% of your weight sits on the rear wheel when descending. We use 65% as the default standard.

Real-World Example

Imagine a rider weighing 180 lbs (with gear) on a bike with 160mm travel and a 65mm stroke shock, looking for 30% sag:

  1. Leverage Ratio: 160 / 65 = 2.46
  2. Calculation: (180 lbs × 0.65 × 2.46) / (2.56 inches stroke × 0.30 sag)
  3. Result: Approximately 375 lbs/in. Since springs usually come in 50 lb increments, the rider would choose a 350 or 400 lb spring depending on preference.

Between Sizes?

If your calculated rate is 425 lbs, and you can only buy a 400 or 450 spring:

  • Choose 400 lbs if you prefer a more active, plush feel and ride smoother terrain.
  • Choose 450 lbs if you ride aggressively, hit large jumps, or prefer the bike to stay higher in its travel.

function calculateSpringRate() { var weight = parseFloat(document.getElementById('riderWeight').value); var travel = parseFloat(document.getElementById('wheelTravel').value); var stroke = parseFloat(document.getElementById('shockStroke').value); var sag = parseFloat(document.getElementById('desiredSag').value); var bias = parseFloat(document.getElementById('rearWeightBias').value) / 100; var preload = parseFloat(document.getElementById('preloadTurns').value); if (isNaN(weight) || isNaN(travel) || isNaN(stroke) || weight <= 0 || travel <= 0 || stroke <= 0) { alert("Please enter valid positive numbers for Weight, Travel, and Stroke."); return; } // 1. Calculate Leverage Ratio var leverageRatio = travel / stroke; // 2. Convert stroke to inches (Standard spring rates are in lbs/in) var strokeInches = stroke / 25.4; // 3. Calculate target spring rate // Formula: (Weight * Bias * LR) / (StrokeInches * SagPercentage) // We adjust slightly for the preload (each turn of preload adds virtual spring weight) var rawSpringRate = (weight * bias * leverageRatio) / (strokeInches * sag); // Adjust for preload: roughly 1 turn of preload is worth ~5% of spring rate var finalRate = rawSpringRate – (preload * 15); // Rounding to nearest 5 for better UX var roundedRate = Math.round(finalRate / 5) * 5; // Display Results document.getElementById('resultContainer').style.display = 'block'; document.getElementById('springResult').innerHTML = roundedRate + " lbs/in"; document.getElementById('leverageText').innerHTML = "Your bike's leverage ratio is " + leverageRatio.toFixed(2) + ":1. Calculated exact rate: " + rawSpringRate.toFixed(1) + " lbs/in."; // Scroll to result smoothly document.getElementById('resultContainer').scrollIntoView({ behavior: 'smooth', block: 'nearest' }); }

Leave a Comment