To give Twitch alerts, chat text-to-speech, and background music their own volumes on a Mac, first decide where each source runs. Anything captured inside OBS gets balanced with OBS's own source faders. Anything in a separate app — a music app, or a browser window holding your Streamlabs or StreamElements pages — needs a per-app volume mixer, because macOS itself has no per-app volume and pushes every app through one master output. Split your sources that way and you can pin alerts loud, keep TTS intelligible, and hold the music underneath, adjusting any of them without touching the others.
A good stream mix is really three jobs stacked on top of each other. Alerts have to cut through the moment someone follows or tips. Chat TTS has to stay clear enough to actually read a message aloud over whatever else is playing. And the background music has to be present but never fight the two things that matter more — your voice and your alerts. On Windows the Volume Mixer lets you set each of those as a separate slider. macOS ships nothing equivalent: one output, one master level, everything ducks together.
Step 1 — Decide what lives in OBS and what lives in a separate app
This is the decision the whole setup hinges on, and it's the part most guides skip. Streamlabs and StreamElements alert and TTS pages are ordinary web pages with a unique URL. You have two honest choices for each one:
- As an OBS browser source. The page renders inside OBS, and its audio is captured for your viewers automatically. You set its level with the source's fader in the OBS Audio Mixer.
- As a separate browser window you also monitor. The page runs in its own Chrome, Safari, or dedicated browser window on your Mac. Now it's a normal app to macOS, and its level is set the same way any other app's is — which, on a stock Mac, means it can't be set independently at all without help.
Many Mac streamers end up with a mix of both: alerts as an OBS browser source so viewers hear them cleanly, and music plus a monitoring browser window running as separate apps. That's fine — you just use the right control for each layer instead of pretending one tool covers everything.
Step 2 — Balance the OBS-captured sources with OBS faders
For anything that's an OBS source — an alert browser source, a media source playing stinger music, a desktop-audio capture — the OBS Audio Mixer is the correct place to set the level, because those faders move what your viewers hear. Set your alert source a few dB hotter than your music source there, and lean on OBS's per-source monitoring so you hear the same balance you're broadcasting. Nothing external is needed for this layer; OBS already gives each of its own sources a fader.
The limit shows up the second a source is not inside OBS. OBS can only fade what OBS captures. Your Spotify window, your Apple Music app, a browser tab you keep open to read chat yourself — OBS has no fader for those, and neither does macOS.
Step 3 — Give the separate apps their own faders with a per-app mixer
This is where a per-app volume mixer earns its place. A mixer sits at the macOS audio layer and gives every running app its own level in one spot — the control Apple never shipped. Put your music in its own app, keep your alert/TTS monitoring browser in another, and the mixer lets you pin each one where you want it and move it independently. Tools in this space include Background Music (free, open source), SoundSource by Rogue Amoeba (paid, deep, with EQ), and Fader (paid, keyboard-first).
They all set per-app levels. The difference you feel mid-stream is how fast you can reach the control while your hands are busy talking, reading chat, and running the show.
| Source | Where it usually runs | Set its level with |
|---|---|---|
| Alerts (follows, subs, tips) | OBS browser source, or its own browser window | OBS fader (in OBS) or per-app mixer (separate window) |
| Chat TTS readouts | Same page/app as alerts, or a separate one | Same rule — follow where it runs |
| Background music | Spotify / Apple Music / browser | Per-app mixer (or the app's own slider) |
| Your mic + voice | OBS mic source | OBS mic fader (never a playback mixer) |
Why the keyboard matters when you're live
Every mixer above can set a level. On a live stream, though, you don't want to hunt through a menu-bar list mid-sentence. A menu-bar mixer means move the pointer to the menu bar, click the icon, find the row, drag the slider, dismiss — five actions while you're supposed to be entertaining an audience.
Fader's bet is that the fastest controller you already own is your keyboard. You hit a toggle hotkey, the keyboard becomes a mixer — one letter column per app — and you ride levels with keystrokes without leaving OBS or breaking eye contact with chat. Assign the music app to one column, your alert/TTS browser to another, and ducking the music when a big alert lands is a single keypress. That's the gap between "I have a mixer installed" and "I actually ride my levels every stream."
A practical Mac layout for a Twitch stream
Here's a setup that keeps the three sources honestly independent without any hardware:
- Alerts and chat TTS as OBS browser sources, balanced with the OBS Audio Mixer so viewers hear them cleanly. Enable OBS monitoring so you hear them too.
- Background music in its own app (Spotify, Apple Music), captured for the stream via your usual desktop-audio route and set low.
- Per-app volume mixer for the separate apps you monitor — the music app, plus any browser window you keep open to read chat yourself — so you can duck music the instant you start talking and bring it back when you're done.
If your real problem is that your whole stream is hearing your desktop audio and you want to send only some apps to viewers, that's a routing question, not a volume one. See how to split stream audio from desktop audio on a Mac, and for the wider zero-hardware picture read the streamer's Mac audio setup without hardware.
Bottom line
There's no single magic slider on a Mac, because macOS gives you one master volume and nothing finer. The honest way to keep Twitch alerts loud, chat TTS clear, and background music underneath is to split the work: OBS faders for sources inside OBS, and a per-app volume mixer for the apps that live outside it. Do that and each layer stays independent. If you want to ride those levels live — ducking music the moment you talk, without ever leaving your scene — reaching the control from your keyboard is exactly what Fader is built for.
Ride your stream levels from the keyboard
Fader turns letter keys into per-app faders — music, alerts, monitoring, all independent. $19.99 one-time, 3-day free trial, no account. macOS 14.4+.