Keys and tokens in plain sight
A dashboard settings page, a webhook URL, an auth token in a query string: browser windows on stream are where API keys leak, and a leaked key is compromised the moment one frame shows it.
OBS + Blurr.ing
OBS filters frost pixels after capture; Blurr.ing frosts the page itself before capture. Each is the wrong tool for the other’s job, so here is the honest split: which to reach for, and how to run them together.
Updated August 2026
Quick answer
OBS has no built-in blur filter: it crops natively and blurs only through a plugin, and a plugin filter frosts any source, games and desktop apps included. Blurr.ing blurs inside the web page instead, so the blur sticks to the element, follows it as you scroll, and is already in place before OBS captures a single pixel. One catch worth knowing: OBS’s built-in Browser Source is its own embedded browser and cannot load Chrome extensions, so put the page in a real Chrome window and capture that.
The risk
Streamers do not leak secrets because they forgot to care. They leak them because the browser window is the one source that changes underneath the filter: it scrolls, it navigates, it reloads, and the filter rectangle does none of those things with it.
A dashboard settings page, a webhook URL, an auth token in a query string: browser windows on stream are where API keys leak, and a leaked key is compromised the moment one frame shows it.
A filter rectangle is pinned to the captured frame. Scroll the page one notch and the row you were hiding slides out from under it, while the blur sits frosting an empty header.
Each capture carries its own filter, aimed in pixels. Resize the window, change resolution, or rearrange the page and every rectangle needs re-aiming before you are safe again.
The honest split
Neither side of this table replaces the other. OBS filters have reach an extension can never have; an in-page blur understands the content in a way a filter never will.
Works on any source. Games, terminals, IDEs, desktop apps, a whole monitor: OBS filters apply to every capture, and nothing that runs inside a browser can touch those.
Cropping ships built in. The Crop/Pad filter, or holding Alt while dragging a source edge, removes a region of any capture without installing anything.
Blurring does not. OBS has no built-in blur filter, so blur means a plugin. Composite Blur is free and open source; StreamFX now ships its prebuilt builds through the developer’s Patreon.
The blur is pinned to the frame. It frosts coordinates, not content, so scrolling moves your secrets out from under it and every layout change means re-aiming rectangles.
Blurs stick to content. A blurred element or run of text stays frosted while you scroll, navigate within the app, or resize the window. Nothing to re-aim.
Redaction by keyword. One Blur Text rule frosts every API key, email, or customer name across a page, with 34 presets, instead of one hand-drawn rectangle per secret.
Already safe before capture. The page itself renders frosted, so the same blur holds in OBS, in a tab share, and in a screenshot. With Premium it is back before first paint after any reload.
Useless outside the browser. Blurr.ing cannot blur games, desktop apps, terminals, other windows, or OS notifications, and it cannot blur video after capture. That half belongs to OBS.
They compose. In-page blurs for everything your audience must not read inside the browser, OBS-side filters and crops for everything outside it. Most streams that show a browser want both running.
Step by step
Two minutes, once. After that the page carries its own privacy into every scene that shows it.
The OBS Browser Source is OBS’s own embedded browser and loads no Chrome extensions, so Blurr.ing cannot run inside it. Open the dashboard or site in a normal Chrome window instead.
Press Ctrl + Shift + Y (Cmd + Shift + Y on Mac) to open the Blurr.ing toolbar, then draw a box over a region, click an element, or select a run of text. For keys and emails, Blur Text redacts them everywhere by keyword.
Add a Window Capture source pointed at the Chrome window, or share the tab if you are in a meeting tool instead. Either way, the capture only ever contains pixels that are already frosted.
Games, terminals and desktop apps are beyond any extension. Right-click those sources, open Filters, and add a blur plugin such as Composite Blur, or crop the region out with Crop/Pad.
The OBS preview shows exactly what viewers will get. With Premium, saved blurs re-apply before the page paints, so reloading a dashboard mid-stream never flashes the real values.
Out of the box, no: OBS Studio ships crop, scaling, color-correction and chroma-key filters, but no blur filter, so blurring in OBS means installing a plugin. For years that plugin was StreamFX, and it still exists, but its prebuilt builds for current OBS releases are now distributed through the developer’s Patreon, and the free community fork has sat unmaintained since 2023. The plugin most people should reach for today is Composite Blur: free, open source, cross-platform, with Gaussian, box, dual Kawase and pixelate algorithms you can drop on any source. What no plugin changes is the geometry: an OBS blur is a region of the captured frame, not of the content, which is exactly the gap in-page blurring closes.
No. OBS’s own documentation describes the Browser Source as “quite literally, a web browser that you can add directly to OBS”, built on the Chromium Embedded Framework, and CEF does not load Chrome extensions. It does not share your Chrome profile, cookies, or logins either. So a page loaded in a Browser Source runs without Blurr.ing, without your ad blocker, and usually without your session. The Browser Source is the right tool for overlays, alerts and chat widgets; for a page you want blurred, open it in real Chrome and add a Window Capture of that window instead. One more habit worth keeping: widget URLs contain secret tokens, and they live in the Browser Source properties dialog inside OBS itself, which is a desktop app no extension can blur, so never open that dialog on stream.
Redact them by keyword before anything captures the page: with Blurr.ing’s Blur Text, the API key preset (or the literal values you paste in) is frosted on every page that prints it, so a provider dashboard, a settings page, or a log viewer shows frosted text in OBS, in a tab share, and in a screenshot alike. Because Premium re-applies rules before the page paints, reloading a dashboard mid-stream never flashes the key, and the same rule keeps working next week without you remembering it exists. The honest boundary: this covers keys shown in browser pages. A key in your terminal or IDE is outside any extension’s reach, so keep a Composite Blur filter or a crop on those captures, or keep them out of the scene entirely.
Keep exploring
The same in-page blurs hold whether the capture is OBS, a meeting tool, or a screenshot.
FAQ
One click to add it, one gesture to hide anything on any page.