An app's volume keeps resetting on a Mac because macOS has no per-app volume to save. The level you set lives inside the app itself, or is tied to one output device — so when the app relaunches, a tab reloads, or headphones connect, it snaps back to whatever that app or device last remembered. To make a per-app mix actually stick, you need a mixer that stores each app's level, reapplies it, and stays running at login.
It's one of the most frustrating parts of Mac audio. You get Spotify sitting nicely under your calls, you quit for the day, and tomorrow it's blasting at full again. Or you connect your AirPods and every level you carefully set jumps somewhere else. The behavior looks like a bug. It isn't — it's the direct result of how macOS handles volume, and once you know the model, the fix is obvious.
The real reason: macOS has nothing to remember
Windows has a Volume Mixer that stores a slider per application. macOS has never had one. There is no place in the operating system that holds "Spotify at 30%, Zoom at 100%, browser muted." The system volume keys and the Sound menu set a single master level, and that's the entire native model.
So when you think you're setting "an app's volume," you're almost always doing one of three other things — and each one forgets for a different reason.
Where your setting actually goes (and why it reverts)
Pin down which of these you're touching and the reset stops being mysterious.
| What you adjusted | Where the value lives | Why it resets |
|---|---|---|
| An app's own slider (Spotify, VLC, music apps) | Inside the app's preferences | Some apps save it, many don't — and updates or re-installs wipe it |
| A browser tab's volume or an extension | Per tab / per session | Reloading the page or opening a new tab starts fresh |
| System / master volume | Per output device | Connecting AirPods or a speaker loads that device's remembered level |
| A free workaround (Audio MIDI, aggregate device) | Nowhere persistent for volume | There's no per-app level being stored in the first place |
The output-device row is the one that surprises people most. macOS genuinely does remember a master volume — but per device, not per app. Your laptop speakers, your AirPods, and your desk monitor each carry their own remembered level, so every time the active output changes, the whole system jumps. That's also why an app can be too quiet even at full volume right after a device swap. The same device-level memory exists for output routing, which is a separate but related headache covered in setting a default output device for a specific app.
The fixes that don't really work
Before the real fix, it's worth clearing out the things people try that don't hold:
- Setting the app's slider again and hoping. If the app didn't save it the first time, it won't the second. Many media apps deliberately reset to a default level on launch.
- Turning master volume down to tame one loud app. That ducks everything, and it re-loads from the device's remembered level the moment you switch outputs.
- Muting a browser tab. Fine until you reload or reopen it — tab state is not a saved per-app setting.
None of these fail because you did it wrong. They fail because there's no per-app value being stored anywhere the system will honor next time.
How to make a per-app volume actually stick
The durable fix is a per-app mixer — a small tool that sits at the audio layer, gives every running app its own level, and, crucially, saves that level and reapplies it when the app comes back. Two things have to be true for a mix to survive:
- The mixer stores the level per app, keyed to the application, not to a tab or a device.
- The mixer is running when the app launches, so it can reapply the level. Set it to open at login (System Settings → General → Login Items) and this becomes automatic.
Free and paid tools both do this. Background Music (free, open source) remembers each app's level and mute state by application, so an app you muted stays muted next time. SoundSource by Rogue Amoeba (paid, about $49 one-time for version 6) keeps per-app adjustments and adds EQ and routing. And Fader (paid, $19.99 one-time) stores your whole mix in a profile and is built to be driven from the keyboard.
| Tool | Remembers per-app level | How you set it | Cost |
|---|---|---|---|
| App's own slider | Only if the app saves it | Hunt through each app | Free |
| Background Music | Yes, by app | Menu bar list | Free, open source |
| SoundSource | Yes | Menu bar panel + EQ | ~$49 one-time |
| Fader | Yes, saved in a profile | Keyboard + menu bar | $19.99 one-time |
Why a profile is what makes it stick
Setting a level once is only half the problem; the other half is getting it back without redoing the work. Fader's answer is profiles. You set Spotify to 30%, your call app to 100%, and your browser wherever you like, save that as a profile — one for work, one for streaming, one for music — and switch between them from the Console menu. The mix is a saved thing you return to, not a number that evaporates when you quit.
And because Fader maps apps to letter keys, restoring a level takes no menu diving. Hit your toggle hotkey (⌘⇧F by default), the keyboard becomes a mixer — the Q/A/Z column is one app, W/S/X the next — and you nudge a level back in a keystroke if it ever drifts. For the apps you ride all day, that's the difference between a mix that "keeps resetting" and one you barely think about.
A quick checklist if it's still resetting
- Confirm your mixer is set to open at login — a mixer that isn't running can't reapply anything.
- Check whether the level you're chasing is really a browser tab or extension, which won't persist regardless of the mixer.
- Notice whether the jump happens right when a device connects — that's macOS loading that device's master level, not your app mix breaking.
- If an app updates and forgets its own slider, set its level in the mixer instead, keyed to the app.
Bottom line
App volume keeps resetting on a Mac because macOS never had a per-app volume to save — the number you set lives in the app or the output device, and both forget on their own schedule. The fix isn't a hidden setting; it's a per-app mixer that stores each level and stays running to reapply it. If you want that mix to survive relaunches, device swaps, and reboots — and to reach it in a keystroke instead of a menu — a profile-based, keyboard-driven mixer is exactly the tool. That's what Fader is built to be.
Set your mix once — and keep it
Fader saves your per-app levels in a profile and puts them on your keyboard. $19.99 one-time, 3-day free trial, no account. macOS 14.4+.