Start with the scene where you notice the issue. Keep the scene and workload consistent, observe the normal setup, then change one thing and compare. Creators ask about frame drops, lag, Browser Source counts, and encoder settings; those search topics are useful troubleshooting cues, not evidence that a particular setting is the cause.
01 / A REPEATABLE COMPARISON
Isolate one Browser Source at a time
- Reproduce the symptom in its usual scene. Keep your usual game, capture, output, and Browser Sources in place. Open OBS Stats and note what the preview or output looks and sounds like, plus the counters before and after a consistent observation window.
- Change one Browser Source. Hide or disable one source with its visibility control. If the page provides an animation setting, you can instead compare that source with its animation paused. Do not change other sources or OBS output settings during this comparison.
- Repeat the same observation. Record the source and setting you changed, whether the visible symptom changed, and how each Stats counter changed. Restore the source before testing the next one so each comparison starts from the same normal scene.
- Compare before changing anything else. If the symptom changes alongside one source, note that association and test it again. A correlation is a clue, not proof that the source caused the issue; other system load and timing can affect the result.
A compact note is enough: scene and test window; source or animation changed; preview symptom; rendering, encoding, and network counters before and after. Keep the rest of the setup steady for a useful comparison.
02 / FIND THE STAGE
Read the OBS Stats counters
In OBS Studio, open View → Stats. Look at which counter rises while the symptom occurs, then follow the matching branch below. The labels describe different stages of output; a network-drop counter does not specifically diagnose a Browser Source.
- Frames missed due to rendering lag: OBS is not keeping up while composing and rendering the scene. Compare the one-source tests, then check GPU load and scene complexity using the OBS Encoding Performance Troubleshooting guide.
- Skipped frames due to encoding lag: the encoder is not keeping up with the configured output. Review output and encoder workload, along with other active system load, using the same OBS performance guide.
- Dropped Frames (Network): this counter is about sending the stream to its remote ingest server. Check the connection path and stream bitrate with OBS’s Stream Connection Troubleshooting guide. Network drops point to that connection path; they do not identify a Browser Source as the cause.
For more detail on these labels, see the OBS Project forum explanation of status indicators. Use the official OBS guides above for the corresponding performance or connection checks.
03 / BROWSER SOURCE CHECKS
Reduce Browser Source work, then compare again
OBS notes that browser pages can use system resources, and recommends limiting Browser Sources and their dimensions when appropriate. Try one of these checks at a time, in the scene where the symptom occurs:
- Reduce the number used together. Temporarily remove or hide one Browser Source, then compare the same symptom and Stats counters before testing another. OBS recommends reducing Browser Sources in resource-heavy scenes.
- Set only the dimensions the layout needs. In source properties, compare Width and Height with the page’s actual layout rather than using an unnecessarily large viewport. OBS defines these values as the browser page viewport and recommends the minimum required size.
- Isolate complex animated overlays. Pause or hide an animation if its own controls allow it, then compare. OBS calls out complex animated overlays as a possible performance load; the result depends on the page and system.
- Use an Image Source for a static image. If the content is a non-animated image, compare it as an OBS Image Source instead of keeping a browser page for that image. Animated or interactive pages need a different source type.
- Test the per-source custom frame rate. OBS Browser Source properties list Use custom frame rate as off by default and show FPS 30 as the default value. With the option off, that value is not an active custom cap. You can turn it on and compare a lower per-source FPS as an optional, content-dependent test; watch whether animation smoothness changes as well as the Stats counters. This is separate from OBS output FPS and is not a guaranteed fix.
Check the current property descriptions in the OBS Project Browser Source documentation. OBS output frame rate is adjusted separately in Settings → Video.
04 / WHEN A SOURCE IS HIDDEN
Test the hidden-source behavior
Browser Source has a Shutdown source when not visible property. OBS says it unloads the page when the source is hidden with the eye control or is outside the active scene. It is off by default.
You can enable it as an inactive-source load check, then switch away from and back to the scene. Confirm that the page and its content are available when the scene returns and note any loading delay. This property changes page lifecycle behavior; do not assume it will improve performance or suit every overlay.
The property and its default are listed in the OBS Browser Source documentation.
05 / AFTER SOURCE ISOLATION
Check system load and OBS output settings
If isolating Browser Sources does not explain the symptom, OBS recommends checking other GPU-heavy programs and simplifying complex scenes. These are diagnostics: what helps depends on your hardware, software, sources, and workload.
- Look for competing GPU work. Check whether a game or another application is using substantial GPU resources while OBS composes the scene. Compare with a less demanding workload only if it is safe to do so.
- Simplify the scene for a comparison. Reduce expensive sources or scene complexity one change at a time, then watch the same Stats counters. Restore any source that did not change the observed result.
- Review output frame rate and encoder settings. OBS notes that output frame rate affects rendering and encoding load. Its 60-to-30-fps example is a test to compare if 60 fps is not working for your system, not a required target. If encoding lag is increasing, review the applicable encoder and output guidance in the OBS Encoding Performance Troubleshooting guide. A particular encoder choice is not a universal fix.