HELP I AM LOSING FRAMES (OBS lag/stutter)

Ok calm down!

Go here:

obs64_20230718_163612.png

This window will pop-up, keep streaming and give it a while to collect data then check the lines marked here with colored outlines:

obs-stats.png

If any of those numbers keeps growing, you're losing frames! (go find them!)

This is a very rough approximation of how frames work:

Check the following sections for a more in-depth explanation and what you can do to remedy the issue:

(RENDERING) I have rendering lag

Your graphics card is overloaded!

Usually I limit games to at most 100 FPS when playing on stream, but your mileage may vary depending on game, personal preference and hardware.

For a more in-depth troubleshooting procedure, check this article: Troubleshooting "Lag" in OBS Studio

(ENCODING) My encoder is overloaded!

Your encoder is not managing to render frames in time! Depending on your target framerate your encoder has only a bunch of milliseconds (16ms at 60fps) to render the frame and send it over.

You can find encoder setting under File -> Settings -> Output.

Keep note of the highlighted fields.

obs-encoder-settings.png

If you are recording using different encoding settings (ie. Video encoder not set to "(Use stream encoder)"), you are encoding TWICE! Consider not doing that if it's ruining your performance!

If you are using hardware encoding (NVENC, AMD HW) and play demanding games often, consider switching to a CPU encoder (x264).
If that isn't enough, consider dropping the preset to a faster one (e.g. from veryfast to superfast, in x264).
If that also isn't enough (or if the quality drop is too much to be acceptable), consider lowering your output (scaled) resolution and/or framerate.

The nitty gritty

Encoding tuning is a science of its own but in general a slower preset lets you have better quality with the same bitrate at the cost of slower performance. You can try to balance using a faster preset with higher bitrate, but services like Twitch have already obscenely low maximum bitrates they will accept (and the only reason to not cap that is if you have slow internet, more on that below)
The OBS official wiki has more in-depth info on everything you can do to ease up encoder issues: General Performance And Encoding Issues

(NETWORK) My connection is not stable!

Your ISP sucks!

This is the roughest one, here's a couple things you can do to help address the issue, but they will impact the quality of your stream:

If you think your upload should be higher than what you're managing, check TwitchTest (by a OBS dev and TeamLiquid staff) for checking which Twitch server is best for you and how much bitrate you can push to each.

Check this page from the OBS Wiki on some other things you can do, though most of it won't actually do much or anything: Dropped Frames And General Connection Issues

Credits

Thanks AJ/Tyron for some tips!