Skip to content
Saha Hesap

Helical Compression Spring Calculator

Rate, stress under load (Wahl), deflection, solid length and buckling check of a compression spring from wire diameter, coil diameter and number of coils.

How is a compression spring calculated?

In a helical compression spring the load tries to twist the wire, so the wire carries shear stress. Three basic equations are enough for preliminary design.

Spring rate: k = G × d⁴ / (8 × D³ × N_a), where d is the wire diameter, D the mean coil diameter, N_a the number of active coils and G the shear modulus.

Shear stress: τ = K_w × 8 × F × D / (π × d³). K_w is the Wahl factor, which accounts for the higher stress on the inside of the coil: K_w = (4C − 1) / (4C − 4) + 0.615 / C, with the spring index C = D / d.

Deflection: δ = F / k.

Solid length and end type

As the spring compresses, the coils eventually touch. The length at that point is the solid length and the spring cannot shorten further. It depends on the total number of coils and on whether the ends are ground. A spring with squared and ground ends has two more total coils than active coils and a solid length of d × N_t. A margin is left so the spring never goes solid in service.

Example

A steel spring with 4 mm wire, 32 mm mean coil diameter and 8 active coils has k = 80 000 × 256 / (8 × 32 768 × 8) = 9.77 N/mm. The spring index is 8 and the Wahl factor 1.184. Under 300 N the stress is 452 MPa and the deflection 30.7 mm. With squared and ground ends there are 10 total coils and the solid length is 40 mm. With a free length of 80 mm the loaded length is 49.3 mm, leaving 9.3 mm before solid.

Limits

Spring wire strength varies widely with material and wire size, so the tool does not suggest an allowable stress. For springs under repeated loading fatigue governs and is not calculated here. Long springs can buckle: the tool only gives a rough limit for a steel spring seated on flat surfaces at both ends.

Related calculators

Found a mistake or something missing?

If a value looks wrong, a size is missing or you need a feature, write to us and we will fix it.

Send an email