Spring Animation Parameters

Tune stiffness, damping and mass with a live curve, plus the measurement: critical damping is not the fastest way to settle, and something near 0.78 is.

The curve is the exact step response, not a simulation. Stiffness, damping and mass collapse into just two numbers — the natural frequency and the damping ratio — and those two decide everything. Duration is not among the inputs because it is not a parameter. Nothing is uploaded.

The fastest spring overshoots

Critical damping is usually described as the fastest approach without oscillation, and the second half of that sentence does all the work. If what you want is for the thing to look settled — inside a 2% band and staying there — a damping ratio of 0.78 gets there in 3.60 where critical damping takes 5.83. Critical is 62% slower.

Counts as settled withinFastest damping ratio Time to settleCritical damping takesCritical is slower by
10% 0.592 2.33 3.89 67%
5% 0.692 2.87 4.74 65%
2% 0.78 3.60 5.83 62%
1% 0.828 4.21 6.63 58%

There is no single number to memorise, because "settled" is a threshold you pick. Tighten the band and the optimum climbs towards critical — 0.592 at 10%, 0.828 at 1% — approaching it without ever arriving. That is the honest version of the folk rule rather than a refutation of it.

What that speed costs

It buys the time by allowing a small overshoot. Peak overshoot is exactly exp(−ζπ/√(1−ζ²)) — checked against the response evaluated at its analytic peak, agreeing to twelve decimal places — and at 0.78 that is under three per cent. A couple of pixels on a hundred-pixel move.

Damping ratioSettles atOvershoot
0.4 8.40 25.4%
0.5 8.07 16.3%
0.6 5.94 9.5%
0.7 5.98 4.6%
0.78 3.60 2.0%
0.85 4.19 0.6%
0.9 4.70 0.2%
1 (critical) 5.83 none
1.1 6.92 none
1.3 8.87 none
1.6 11.52 none

The overshoot at the winning ratio is smaller than the band being measured, which is why it reads as settled rather than as a bounce. Refusing those two per cent is what costs the extra 2.23 of waiting.

Settling time is not even a continuous function

The curve of settling time against damping is jagged, and it is not sampling noise. Settling time is set by whichever oscillation peak is the last to poke outside the band. As damping rises, one peak drops under the threshold and the answer jumps down to the previous one; between those jumps it drifts back up. A step of 0.01 in damping near ζ = 0.53 cuts the settling time by 2.02 at a stroke.

Two consequences. It cannot be minimised by following a gradient — which is why the table above comes from a sweep. And the familiar closed form, 4/(ζω), is an envelope approximation rather than the curve itself; it is smooth precisely because it is not the real thing. Above critical damping the oscillations are gone and the function does become well behaved, rising steadily and slowly for ever.

Where the usual presets land

Spring APIs take stiffness, damping and mass, which is three numbers for a two-number system. What actually matters is the damping ratio, c / 2√(km), and the natural frequency, √(k/m). Scale all three together and the motion does not change at all.

PresetStiffnessDampingDamping ratio Overshoot
Gentle 120 14.0 0.639 7.4%
Default 170 26.0 0.997 0.0%
Wobbly 180 12.0 0.447 20.8%
Stiff 210 20.0 0.690 5.0%
Critical at 170 170 26.1 1.000 none

Almost all of them sit under critical damping, which is the point of this page: the presets people reach for by feel are already in the region the arithmetic prefers. They were not chosen to be fast, and they are.

How to use

  1. Set stiffness, damping and mass.
  2. Read off the damping ratio, which is what actually matters.
  3. Press Play to run the curve.
  4. The dashed lines mark the 2 per cent settled band.

Frequently asked questions

Is critical damping the fastest setting?

It is the fastest approach without oscillation, which is a narrower claim than it sounds. If what you want is for the motion to look settled — inside a 2 per cent band and staying there — a damping ratio near 0.78 arrives in 3.6 time units where critical damping takes 5.83. Critical is about 62 per cent slower.

How does an underdamped spring win?

By spending a small overshoot to save a lot of time. At a ratio of 0.78 the peak is about 2 per cent past the target, which is roughly two pixels on a hundred pixel move and invisible in practice. Refusing that 2 per cent is what costs the extra waiting.

So what damping ratio should I use?

There is no single number, because settled is a threshold you choose. Tighten the band and the best ratio climbs: 0.59 for a 10 per cent band, 0.69 at 5 per cent, 0.78 at 2 and 0.83 at 1. It approaches critical damping without ever reaching it.

How much will it overshoot?

Exactly the exponential of minus the damping ratio times pi over the square root of one minus the ratio squared. That closed form matches the response evaluated at its analytic peak to twelve decimal places. At or above critical damping the overshoot is zero and the motion never passes its target.

Why is the settling time curve so jagged?

Because settling time is set by whichever oscillation peak is the last to poke outside the band. As damping rises, one peak drops below the threshold and the answer jumps down to the previous one. It is genuinely discontinuous, so it cannot be minimised by following a gradient.

Is there a formula for settling time?

The familiar four over the damping ratio times the natural frequency is an envelope approximation rather than the curve itself. It is smooth precisely because it is not the real thing. The numbers here come from sweeping the actual response instead.

Why are stiffness, damping and mass three numbers?

They are three inputs to a two-number system. What determines the motion is the natural frequency, the square root of stiffness over mass, and the damping ratio, damping over twice the square root of stiffness times mass. Scale all three together and nothing changes at all.

Does a spring have a duration?

Not as a parameter. Duration is a consequence of the frequency and the damping ratio, which is why spring APIs feel harder to tune than a duration and an easing curve. It is also why the same spring takes different times to settle depending on how tight a band you call settled.

Does this send anything anywhere?

No. Every curve is computed in your browser, and nothing is uploaded.

🔒 This tool runs entirely in your browser. Nothing you enter is uploaded, logged, or stored.