This guide contains an explanation for the common issues that will cause OBS, or a game you may be playing, to suffer performance issues while trying to stream or record.
This is probably because you have either overloaded your GPU or you have a bottleneck between your GPU and the rest of your system. These are subtly different issues, but both are important.
OBS needs GPU time and resources because it has to composite and render a scene. If you want OBS Studio to require less resources, you must construct additional pylons build simpler scenes and scene collections.
While this is probably technically possible, GPUs are still way more efficient at this kind of task than CPUs. In the vast majority of cases, this would be a net negative impact on system, rendering, and encoding performance.
Preventing GPU overload mostly boils down to preventing your GPU from doing more work than it has to. If your GPU had infinite processing power, you could go ahead and run all of your games with uncapped framerates. Sadly, that's not the case. GPUs, even the really strong ones, have a limited amount of resources to use to do things. That means if we want to make it do many things (for example, play a game, composite and render OBS scenes, do everything else your operating system wants it to do, run hardware encoding if there's no dedicated chip, etc.), we have to be smart about how much we ask it to do.
If you are struggling with choppy/laggy output, and you are getting "encoding overloaded" messages, you may need to take some steps to leave some resources free for OBS Studio to use.
OBS Studio can ask Windows to reserve some GPU capacity for its use. In many cases, GPU overload issues can be resolved simply by running OBS Studio as administrator; try that before continuing with this guide.
Run as administrator
If another program is heavily using the GPU, such as another game in the background or a program that uses the GPU to perform some calculations, consider closing it to save resources. This also applies if you have two instances of GPU-intensive games.
We know you love playing your favourite AAA+ games on maximum settings with uncapped framerates. We understand that your system can handle it running at several thousand frames per second on your 240 Hz monitor.
However, if you're asking your GPU to work at full throttle to make your game work, you are leaving very little GPU processing power for OBS Studio.
The best option is to limit the game's framerate or enable vertical sync; this will free up processing power for OBS Studio to composite.
Note: running the game with an uncapped framerate that exceeds your refresh rate brings diminishing returns, as neither you nor OBS Studio will be able to see them.
Playing on maximum settings is great if your system can handle it. However, if your game FPS or OBS FPS aren't stable together, then your system can't handle maximum settings and running OBS Studio at the same time. If you turn down the game's graphics settings, the game needs to use less GPU resources.
There aren't many situations where you actually want to have this option enabled. If you're running graphics cards in SLI/CrossFire, or if you have a laptop with multiple graphics cards, you might need to have this enabled. In pretty much all other cases, you should disable this option.
While Game Mode can make some games run more smoothly, it does this by prioritizing system resources, like the CPU and GPU, to favor the game. This means that it can negatively impact other processes like OBS Studio.
On recent versions of Windows 10, Game Mode can be left on. However, on Windows 10 versions older than 1809, you should disable Game Mode to ensure that Windows isn't pulling resources away from OBS Studio behind the scenes. This can be done in the Windows Settings app in the Gaming section.
Game DVR is a related feature that allows Windows to record game footage in the background very much like OBS Studio's Replay Buffer feature. However, since this uses additional system resources, you should disable this Windows feature if you are using OBS Studio.
Reducing the resolution of OBS will reduce the amount of GPU resources needed. All of these settings can be modified in OBS Settings > Video.
This can be beneficial in terms of reducing the load on the encoder.
Frame rate also impacts both rendering and encoding performance. Having to do the work on fewer frames will lessen the load.
This is not something we generally recommend, as it complicates the process of all capture, as well as managing assets. We would only recommend this if you're absolutely starved for GPU resources.
OBS Studio allows you to build wildly complex scenes and make scene collections as large as you want. However, more complexity comes at a price. Every source requires some amount of resources to be shown in the scene. Most sources will also require some resources even if they aren't visible. This is to allow smoother transitions between scenes in the same scene collection, among other benefits.
If your scenes get very complex or your scene collections become too large, OBS Studio may require more resources than your system can spare while doing other things, like gaming. Fortunately, this can be remedied by following a few practices, which we'll go over below:
Limiting the usage of expensive (hard to run) sources can be very beneficial for performance.
Filters can let you do all sorts of cool stuff: color adjustments, image masking, image sharpening, render delays, and more! However, filters, like everything else, require some resources to compute and render their effects. In fact, some filters can be pretty resource hungry.
Web browsers are amazingly complex feats of software engineering, able to render text, images, 2D graphics, 3D graphics, and animations, and they can play audio, video, and even games. However, they can be very resource intensive.
This also applies for the Browser Source, which is often used to display stream chats, custom animations, overlays, and many other things. Using a lot of browser sources in a scene (or scene collection) can use a lot of system resources which can have a significant performance impact.
OBS Studio uses Scene Collections to organize scenes. You don't need to keep every single scene you'll ever use in the same scene collection. If you find OBS performance is not as snappy as it was when you first started, consider splitting your scene collection up into multiple scene collections.
Scene Collection
menu at the top of the OBS Studio window