Quick answer: Unity ducking requires a Send effect on the source group routed to a Duck Volume effect on the destination group. If you only add Duck Volume without a matching Send, the sidechain has no signal and never triggers. The Send target dropdown lists Receive/Duck Volume effects on other groups; if it’s empty, the destination has no Duck Volume yet.
Here is how to fix Unity Audio Mixer ducking that refuses to lower the music when dialogue plays. You add a Duck Volume effect on the Music group, set a threshold, and expect the volume to drop whenever speech triggers. Nothing happens. The Music group keeps playing at full level. The fix is understanding that Duck Volume needs a sidechain signal explicitly routed to it via a Send effect on the source group.
The Symptom
Music plays continuously. Dialogue plays at the same time without lowering the music. You added a Duck Volume effect to the Music group, set a Threshold of -30dB, a Ratio of 4:1, and expected ducking to happen automatically. The mixer’s VU meters show audio passing through both groups, but Music never attenuates.
What Causes This
No Send on the source group. Duck Volume listens on a sidechain input, not the group’s normal audio path. Without a Send effect on the source (Dialogue) group routing to the Duck Volume on the destination (Music), the sidechain receives nothing.
Send target is wrong. A Send can target any Receive or Duck Volume effect in the mixer. If you accidentally pointed the Send at a Receive on the SFX group, the Music duck does not trigger.
Threshold too low. If Threshold is -60dB but your dialogue is mixed at -20dB, the dialogue is well above threshold and will trigger ducking continuously even when silent (because room tone exceeds -60dB). Conversely, a -10dB threshold rarely triggers because dialogue rarely peaks that loud.
Exposed parameter override. If the Music group’s volume is overridden by a script through SetFloat("MusicVolume", x), the duck’s attenuation is added on top of your override but can be hidden by ongoing volume changes from your code.
The Fix
Step 1: Add a Duck Volume to the destination. Right-click the Music group in the Audio Mixer window, choose Add Effect → Duck Volume.
Step 2: Add a Send to the source. Right-click the Dialogue group, Add Effect → Send. Place the Send after the volume fader so the post-fader signal feeds the sidechain.
Step 3: Route the Send to the Duck Volume. Click the Send effect, open the Receive dropdown, and pick the Duck Volume on the Music group. Set Send level to 0dB (full).
Step 4: Tune the Duck Volume parameters.
Reasonable starting values for dialogue ducking music:
Threshold = -20 dB
Ratio = 4 : 1
Attack = 100 ms
Release = 500 ms
Make-up Gain = 0 dB
Knee = 10 dB
Step 5: Test in Play mode with a real dialogue clip. Hit Play, trigger a dialogue line, and watch the Music group’s gain reduction meter on the Duck Volume effect. If you see the meter dip, ducking works. If not, recheck the Send target.
Triggering Ducking From Code
If your dialogue plays through an AudioSource not routed through the Dialogue group, the Send never fires. Always assign the AudioSource’s Output field to the correct mixer group:
using UnityEngine;
using UnityEngine.Audio;
[RequireComponent(typeof(AudioSource))]
public class DialogueLine : MonoBehaviour
{
[SerializeField] private AudioMixerGroup dialogueGroup;
[SerializeField] private AudioClip clip;
void Start()
{
var src = GetComponent<AudioSource>();
src.outputAudioMixerGroup = dialogueGroup; // Critical for ducking
src.PlayOneShot(clip);
}
}
Bypass the duck during cinematics. If a cutscene needs music at full volume regardless of dialogue, expose the Duck Volume’s threshold and raise it to 0dB during the cutscene:
mixer.SetFloat("DuckThreshold", 0f); // Effectively disable duck
// ...later
mixer.SetFloat("DuckThreshold", -20f); // Restore
“Send sends signal. Duck reads signal. Without the Send, Duck Volume is just a quieter version of nothing.”
Related Issues
For mixer snapshot transitions, see Mixer Snapshot Not Transitioning. For audio attenuation problems, see 3D Spatial Blend Not Attenuating.
Send on source. Duck on destination. Route them together. Sidechain comes alive.