PIDSnap

Flow loop unstable

Flow loops have a particular character: very little dead time, a fast response, and a measurement carrying real turbulent noise. That combination makes them sensitive to a small number of specific mistakes, and most unstable flow loops are suffering from one of them.

The good news is that flow loops are the easiest class of loop to work on. They settle in seconds, so a bump test is quick and a change can be assessed almost immediately.

An over-tuned loop hunting after a setpoint change Trend of an over-tuned PID loop: the process variable hunts for several cycles after a setpoint change before settling. high low PV SP Output PIDSnap time
Trend of an over-tuned PID loop: the process variable hunts for several cycles after a setpoint change before settling. Four or more peaks that shrink slowly. The output mirrors the process variable and swings just as hard. The oscillation decays, which is what separates a tuning problem from a mechanical limit cycle — stiction cycles do not decay.

Derivative should be zero

This is the first thing to check on any unstable flow loop. Derivative acts on rate of change, and a turbulent flow measurement has a large rate of change even when the flow is steady. The derivative term multiplies that noise and writes it to the valve.

There is essentially no flow loop that benefits from derivative action. If rate is non-zero, set it to zero before you assess anything else.

Derivative action amplifying measurement noise Trend showing noise amplification: a modest amount of noise on the process variable appears on the controller output magnified many times over. high low PV SP Output PIDSnap time
Trend showing noise amplification: a modest amount of noise on the process variable appears on the controller output magnified many times over. The output is noisier than the measurement, not quieter. Every wiggle on the process variable appears larger on the output. The valve is being asked to chase turbulence. On a flow, pressure or speed loop this is almost always derivative action that should not be there.

Flow loops want low gain and fast reset

This surprises people who work mostly on temperature loops. A flow loop has very little lag, so the process gain the controller sees is high and the controller gain needs to be correspondingly low — well below one is normal.

Reset, on the other hand, can be fast, because the loop responds in seconds. The characteristic flow-loop tuning is a low gain with a reset measured in seconds, and it looks wrong to anyone used to slower loops.

The failure mode to avoid is compensating for the low gain by making reset faster still. Once reset repeats faster than the loop's dead time, the loop hunts regardless of gain.

What causes it, most likely first

Derivative action switched on

most common tuning can fix this

Noise amplification straight to the valve.

How to confirm it
Rate is non-zero, output is noisier than the measurement.
What to do
Set rate to zero.
Derivative action amplifying measurement noise Trend showing noise amplification: a modest amount of noise on the process variable appears on the controller output magnified many times over. high low PV SP Output PIDSnap time
Trend showing noise amplification: a modest amount of noise on the process variable appears on the controller output magnified many times over.

Gain far too high

most common tuning can fix this

A flow loop tuned with the gain you would use on a temperature loop will be violently unstable.

How to confirm it
Decaying oscillation with a period of seconds after a small setpoint change.
What to do
Reduce proportional action substantially.

Reset faster than the dead time

common tuning can fix this

Flow loops have short dead time, but not zero, and reset set faster than it produces a guaranteed cycle.

How to confirm it
Slow steady swinging that does not respond to gain changes. PIDSnap's pre-flight check flags this from the loop profile.
What to do
Slow the reset.

Equal-percentage trim on a wide-range flow loop

common tuning cannot fix this

Equal-percentage trim makes the process gain vary strongly with load, so no single tuning set works across the range.

How to confirm it
The loop is stable at one production rate and hunts at another.
What to do
Linear trim is the durable answer for flow control. Output characterisation or gain scheduling is the workaround.

Questions that come up

What gain should a flow loop have?

PIDSnap does not give tuning numbers, and neither should anything else that has not measured your loop. What is safe to say is the shape: flow loops characteristically want a gain well below one and a reset measured in seconds, which looks aggressive on reset and timid on gain compared with slower loops.

Should I filter the flow measurement?

A small amount of filtering is normal on a flow loop and is usually already present in the transmitter. Heavy filtering added later to make a trend look calmer is a warning sign — it adds lag and limits what the loop can ever achieve.

Related

Last reviewed 2026-08-01.

Run a free PIDSnap check on this loop

Two photos, thirty seconds, no signup. The pre-flight check finds the structural problems that no amount of tuning will fix — before you touch the controller.

Start a free check