macOS has only one default output device, and it applies to every app at once — there is no built-in setting that says "always send this app to that device." To give a specific app its own default output that sticks, you assign the device per app with a routing tool that stores the choice against the app and re-applies it on every launch. Set it once: the app opens to your chosen device automatically, while the rest of the system keeps using the normal default, and it comes back after you quit the app or reconnect the device.
This is the setup people actually want, and it's different from switching an app's device by hand. You want your DAW or media player to always come up on the USB interface. You want calls to always land in the headset. Not "let me move it there again this morning" — you want the app to remember, the way a preference should. macOS doesn't offer that, so the app forgets every time. Here's why, and how to make an app's output device stick for good.
What "a default output device for one app" really means
There are two separate jobs hiding in this request. One is routing — sending an app to a device that isn't the system output. The other is persistence — having that choice survive a quit, a restart, or a cable being pulled and plugged back in. A momentary switch handles the first. A real default handles both: it's a preference the app honors from now on, not a move you repeat.
If you only need to flip an app to another device in the moment, that's a slightly different task, covered in how to switch one app's output device without unplugging anything. This guide is about the sticky version: an app that reliably opens to the device you picked, every session.
Why macOS only has one default output
Open System Settings → Sound and you'll see a single list of output devices with one selected. That selection is the system default, and it's the only one macOS keeps. Every app that plays audio is pointed at it. There is no second column for "per-app default," no way to tell macOS that one app should prefer a different device. Hold Option and click the volume icon in Control Center and you get the same list — a fast way to change the output for everything, not for a single app.
So when you switch the system output to take a call on your headset, your music follows into the headset too. Switch it back and everything goes back together. The default is a single shared setting, which is exactly why "make this one app remember its own device" has no home in the built-in controls.
The apps that remember their own device — and why it's not enough
A handful of apps carry their own output-device menu. VLC has one under Audio → Audio Device. Most DAWs and pro audio apps let you pick an output in their preferences. OBS lets you choose monitoring devices. If the one app you care about happens to have this, use it — it's free and it's the right tool for that app.
The trouble is that it only covers that app, and it's fragile. The vast majority of Mac apps — browsers, Spotify, Slack, most conferencing tools, games — have no output-device setting at all, so there's nothing to remember. And even the apps that do have one tend to lose it when the device disconnects: unplug the interface, and the app quietly falls back to the built-in speakers, then doesn't always return when you plug back in. You end up re-picking the device anyway. A per-app default that lives outside the app, and survives the device coming and going, is what actually solves it.
The real fix: a per-app output route that persists
The reliable approach is to stop relying on each app and instead give the app a stored output route at the system's audio layer. You leave the system default alone — that's where every untouched app keeps playing — and pin one app to its own device. Because the assignment is saved against the app, macOS sends it to the right device the next time it launches, without you doing anything. Several tools can do this, and they differ in how they store the route, whether they bring it back automatically, and what they cost.
| Tool | Per-app default output | Sticks across quit / reconnect | Cost |
|---|---|---|---|
| macOS Sound settings | No — one system default | N/A (system-wide only) | Free (built in) |
| An app's own device menu | Only that app, if it has one | Often lost on disconnect | Free |
| Background Music | No — one shared output | N/A (volume only) | Free, open source |
| BlackHole + Audio MIDI Setup | Yes, with manual setup | Yes, but you rebuild by hand | Free, open source |
| SoundSource | Yes | Yes, remembered per app | $49 one-time |
| Loopback | Yes, via virtual devices | Yes, saved in the device | $99 one-time |
| Fader | Yes | Yes, plus profiles to recall | $19.99 one-time |
What the free options can and can't do
Background Music is the free, open-source app people try first, and it's genuinely good at per-app volume. But it doesn't route apps to different output devices — every app it manages plays through the one device macOS is set to — so it can't give an app a default device either. It's the wrong tool for this particular job, and honest about it.
BlackHole is a free virtual audio device, and with some work in Audio MIDI Setup you can build a routing chain that sends an app somewhere specific. Once built, that arrangement does persist. The cost is the building: it's real setup, and adjusting it later usually means rebuilding part of the chain rather than changing one setting. For a fixed studio route you configure once and never touch, it's a solid free option. If you'd rather point-and-pick, one of the paid tools will feel lighter. The general routing picture is in how to send one app's audio to a different output on Mac.
The paid tools built for this
SoundSource from Rogue Amoeba puts a per-app output dropdown in its menu-bar panel and remembers each app's device, plus EQ and effects; version 6 added grouped output devices. It's polished and costs $49 one-time. Loopback, also from Rogue Amoeba, builds virtual devices for elaborate routing and saves them, at $99 one-time. Both are legitimately good — the question is whether you want their depth, or a lighter, faster way to set an app's default device and move on.
That's where Fader fits. It gives each app its own output device, stores the assignment so the app returns to that device automatically on the next launch, and lets you bring back a whole arrangement at once with saved profiles. It's $19.99 one-time, with a 3-day free trial and no account. If what you want is "this app always opens on this device, and I'd rather not think about it again," a stored per-app route is the point — and profiles mean a whole desk of app-to-device defaults comes back in one step.
How to set an app's default output in Fader, step by step
Keep every output device connected. Open Fader's Console and go to the Routing pane. Set your default system output first — that's the device any app you haven't touched keeps using. Then add a route for the specific app you want to pin and choose its output device: your USB interface, a headset, an HDMI display, whatever's connected. That app now plays through the device you picked, while the rest of the system stays on the default. Quit the app and reopen it and it comes back on the same device. When you reconnect a device you'd routed to, the app returns to it. To change the default later, pick a different device for that route — or save the current setup as a profile and switch profiles to swap your whole per-app output layout for, say, "desk" versus "headphones day."
Does a per-app default change the app's volume?
No. Output routing and volume are separate controls. Pinning an app to your interface doesn't make it louder or quieter; it only sets where the sound comes out. That's useful, because you can give the app a default device and a level of its own, independent of the rest of the system, in the same place. Per-app output and per-app volume are the two halves of the control macOS leaves out, and storing both together is what makes a dedicated mixer worth keeping.
Bottom line
macOS keeps one shared default output, so a specific app can't remember its own device on its own — it just follows the system, and even apps with a built-in device menu tend to forget when the hardware comes and goes. The fix is a per-app route that's stored against the app and re-applied automatically: set the device once and the app opens there every session. Background Music can't route devices, BlackHole can with real setup, and SoundSource and Loopback do it well for more money. If you want an app's default output to stick with the least fuss — and to recall a whole setup at once — that's what Fader is built for.
Give every app a default device that sticks
Fader pins each app to its own output device and brings it back automatically — plus profiles to recall a whole setup. $19.99 one-time, 3-day free trial, no account. macOS 14.4+.