macOS switches audio output for the whole system at once, so there's no built-in way to move a single app to another device — changing the output in Sound settings drags every app with it. To switch one app's output on the fly without unplugging, you assign the device per app with a routing tool: pick the app's output from a menu (or a keyboard shortcut in Fader) and it jumps to your headphones while everything else keeps playing through the speakers. No cables come out.
Here's the setup that trips everyone up. Your speakers, your headphones, and maybe an HDMI monitor are all connected at the same time. You want your music to stay on the speakers but move a call — just the call — into the headphones. On macOS, the only output switch you get is the system one, and it's all-or-nothing. Flip it and the music follows the call into your headphones. So people do the caveman fix: yank a cable, or dive into the Sound menu twice per switch. There's a cleaner way, and it doesn't touch your hardware.
Why macOS makes you unplug (or change everything)
macOS treats audio output as a single system-wide setting. One device is "the output," and every app that plays sound goes to it. You can see the whole list of connected devices in System Settings → Sound, or hold Option and click the volume icon in Control Center to switch quickly — but whichever device you choose becomes the output for everything. There is no per-app column, no "send this app there" option. Apple never built a Windows-style routing panel for the Mac.
That's why unplugging feels like the only lever you have. If two devices can't coexist for different apps, physically removing one is the crude way to force audio somewhere. It works, and it's also the thing you do fifteen times a day until you go looking for software that does it properly.
The real fix: assign the device per app
The clean approach is to stop switching the system output at all and instead give each app its own output device. Leave the speakers as your default, then set one app — the call, the game, the browser — to a different device. macOS keeps sending most audio to the speakers; the one app you routed goes to the headphones. Both devices stay plugged in. Nothing gets unplugged, and the system output never changes.
This is per-app output routing, and macOS can't do it alone. A few tools add it, and they differ mostly in how fast you can flip an app from one device to another and what you pay for the privilege.
| Tool | Per-app output device | How you switch an app | Cost |
|---|---|---|---|
| macOS Sound settings | No — system-wide only | Changes every app at once | Free (built in) |
| Background Music | No — one shared output | N/A (volume only) | Free, open source |
| BlackHole + Audio MIDI Setup | Yes, with manual setup | Rebuild a virtual device | Free, open source |
| SoundSource | Yes | Menu-bar dropdown per app | $49 one-time |
| Loopback | Yes, via virtual devices | Rewire in the app | $99 one-time |
| Fader | Yes | Keyboard shortcut or menu | $19.99 one-time |
What the free options can and can't do
Background Music is the one people reach for first because it's free and open source, 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 whatever single device macOS is set to. Its own issue tracker has open, long-standing feature requests asking for exactly this, which tells you it isn't there yet. If your goal is "move one app to another device," Background Music isn't the tool.
BlackHole is a free virtual audio device, and with enough patience you can build a routing chain in Audio MIDI Setup — a multi-output device here, an aggregate there, an app pointed at BlackHole so you can capture or redirect it. It's powerful and it's honest work: real setup, and switching an app to a different device usually means rebuilding part of the chain rather than clicking once. For a fixed studio routing you set and forget, it's great. For "let me flip this app to headphones right now," it's a lot of friction. We cover that DIY route in using two audio outputs at once, per app.
The paid tools built for this
SoundSource from Rogue Amoeba is the deep, polished option. It puts a per-app output dropdown right in its menu-bar panel, adds EQ and effects, and its version 6 can even send audio to output groups. It's excellent, and it costs $49 one-time. Loopback, also from Rogue Amoeba, is the heavy routing board — you wire virtual devices together for elaborate setups — at $99 one-time. Both are legitimately good; the question is whether you need their depth or just want to switch an app quickly.
That's the gap Fader aims at. It does per-app output routing — pick the device for each app, and it sticks — but the thing it optimizes is how fast you flip it. You can bind the switch to your keyboard, so moving a call from speakers to headset is a keystroke instead of a trip to the menu bar. It's $19.99 one-time, with a 3-day free trial and no account. If your day is a stream of "put this app over here, now over there," reaching the control fast is the whole game.
How to do it in Fader, step by step
Keep both output devices connected. Open Fader's Console, go to the Routing pane, and set your default system output — that's where any app you haven't touched keeps playing. Then add a route for the one app you want to move and pick its output device: your headphones, an HDMI display, a USB interface, whatever's connected. That app now plays through the device you chose while the rest of the system stays on the default. To move it back, switch its route (or hit the shortcut you assigned). At no point do you unplug a cable or change the system output.
If the specific thing you want is "one app in the headphones, everything else on the speakers," that exact scenario has its own walkthrough: send one app to headphones, everything else to speakers.
Does switching an app's device change its volume?
No — output routing and volume are separate. Moving an app to your headphones doesn't turn it up or down; it just changes which device it comes out of. That's a feature, not a limitation: you can route the call to your headset and set its level independently of your music, all in the same app. Per-app routing and per-app volume are the two halves of the control macOS leaves out, and having both in one place is why a dedicated mixer earns its keep.
Bottom line
macOS only lets you switch output for the whole system, which is why moving one app feels like it requires unplugging. It doesn't. Leave every device connected and assign the output per app instead: the app you route jumps to the new device while everything else stays where it is. Background Music won't do it, BlackHole will but with real setup, and SoundSource and Loopback do it well for more money. If switching an app between devices in a single keystroke is what you're after, that's exactly what Fader is built for.
Switch any app's output from your keyboard
Fader gives every app its own output device and its own volume — no unplugging, no menu spelunking. $19.99 one-time, 3-day free trial, no account. macOS 14.4+.