Linear (Flat)
Standard Progressive
Highly Progressive
Leverage Ratio–
Total Loaded Weight–
Recommended Öhlins Coil Rate:–lbs/in
*Note: Öhlins springs are available in increments of 23 lbs/in (4 N/mm). Choose the closest available rate based on your riding preference.
How to Choose Your Öhlins MTB Spring
Selecting the correct spring rate is the most critical setup step for your Öhlins TTX22M or TTX Air shock. Unlike air shocks where you simply change pressure, a coil spring requires calculating the physical resistance needed to support your weight at the correct sag point.
Key Factors Explained:
Leverage Ratio: This is the relationship between how much the rear wheel moves versus how much the shock compresses. A bike with 160mm travel and a 65mm stroke has a leverage ratio of 2.46:1.
Sag: For Öhlins suspension, the sweet spot for Enduro is typically 30%. Gravity-oriented riders may prefer slightly more (33%), while XC or Trail riders often prefer 25-28% for a firmer pedaling platform.
Rider Weight: Always calculate your weight "ready to ride," including your helmet, shoes, hydration pack, and tools. This can add 5-10kg (11-22lbs) to your body weight.
Understanding Öhlins Spring Marking
Öhlins springs often show their rate in both lbs/in and N/mm. For example, a 434 lbs/in spring is equivalent to 76 N/mm. Öhlins typically manufactures springs in 4 N/mm (approx 23 lbs/in) increments. If your result is between two sizes (e.g., 445 lbs), choose the 434 lbs spring for a more active, supple feel, or the 457 lbs spring for more bottom-out resistance and a higher ride height.
Typical Spring Rate Example
Rider Weight (inc. Gear)
Avg. Leverage (2.5:1)
Recommended Rate
70 kg (154 lbs)
150mm Travel / 60mm Stroke
388 – 411 lbs/in
85 kg (187 lbs)
160mm Travel / 65mm Stroke
457 – 480 lbs/in
100 kg (220 lbs)
170mm Travel / 65mm Stroke
548 – 571 lbs/in
function calculateOhlinsSpring() {
var weight = parseFloat(document.getElementById('ohlins_weight').value);
var unit = document.getElementById('ohlins_unit').value;
var gear = parseFloat(document.getElementById('ohlins_gear').value);
var travel = parseFloat(document.getElementById('ohlins_travel').value);
var stroke = parseFloat(document.getElementById('ohlins_stroke').value);
var sagPercent = parseFloat(document.getElementById('ohlins_sag').value) / 100;
var progression = parseFloat(document.getElementById('ohlins_progression').value);
if (isNaN(weight) || isNaN(gear) || isNaN(travel) || isNaN(stroke) || stroke === 0) {
alert("Please enter valid numeric values for all fields.");
return;
}
// 1. Calculate Total Loaded Weight in LBS
var totalWeightLbs;
if (unit === 'kg') {
totalWeightLbs = (weight + gear) * 2.20462;
} else {
totalWeightLbs = weight + gear;
}
// 2. Calculate Leverage Ratio
var leverageRatio = travel / stroke;
// 3. Estimate weight distribution (Rear wheel bias)
// Standard MTB rear bias is roughly 65% when seated/neutral
var weightOnRear = totalWeightLbs * 0.65;
// 4. Spring Rate Formula: Rate = (Force) / (Stroke * Sag)
// Rate (lbs/in) = (Weight_on_Rear * Leverage_Ratio) / (Stroke_inches * Sag_percentage)
var strokeInches = stroke / 25.4;
// Apply progression factor: Higher progression bikes need slightly less spring rate
// to achieve the same sag because the link ramps up.
var calculatedRate = (weightOnRear * leverageRatio) / (strokeInches * sagPercent);
calculatedRate = calculatedRate / progression;
// Rounding logic for Öhlins (they use 4 N/mm steps, which is ~23 lbs/in)
// Common Öhlins rates: 343, 365, 388, 411, 434, 457, 480, 502, 525, 548, 571, 594, 617, 640…
var recommendedRate = Math.round(calculatedRate);
// Update UI
document.getElementById('res_leverage').innerText = leverageRatio.toFixed(2) + ":1″;
document.getElementById('res_total_weight').innerText = Math.round(totalWeightLbs) + " lbs";
document.getElementById('res_spring_rate').innerText = recommendedRate;
document.getElementById('ohlins_results').style.display = 'block';
// Smooth scroll to results
document.getElementById('ohlins_results').scrollIntoView({ behavior: 'smooth', block: 'nearest' });
}