> ## Content Index
> Fetch the complete content index at: https://obsguides.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# Why OBS drops frames and which settings to change
- URL: https://obsguides.com/obs-dropped-frames/
- Published: 2026-11-04T07:51:52.000Z
- Updated: 2026-11-09T15:00:04.000Z
- Description: Read the actual OBS counter, then change the server, bitrate, encoder or GPU workload that affects it. Includes OBS 33 network options, dynamic bitrate limits and private test routes.
- Author: Ryan Parker
- Tags: Troubleshooting

Open Docks > Stats in OBS Studio 33 and check which lost-frame counter rises. If **Dropped Frames (Network)** climbs on the Stream row, try another ingest server or lower the outgoing bitrate: the connection to that server can't carry the stream reliably. Rising missed or skipped frames need the graphics or encoder checks below.

| What you see                                                 | Where it stops                                    | Jump to                             |
| ------------------------------------------------------------ | ------------------------------------------------- | ----------------------------------- |
| Dropped Frames (Network) keeps increasing                    | After encoding, between OBS and the ingest server | [Server and bitrate](#network)      |
| Drops on one service, despite a good speed test              | The route to that service needs checking          | [Compare destinations](#route-test) |
| Skipped frames due to encoding lag; Encoding overloaded!     | The encoder can't finish in time                  | [Reduce encoder work](#encoding)    |
| Frames missed due to rendering lag, including in a recording | The GPU can't draw the scene in time              | [Free GPU capacity](#rendering)     |

## Read the Stream row before changing settings

The picture passes through the scene, the GPU's rendered canvas, the encoder, and finally the connection to the ingest server. OBS keeps separate counters for losses at those last three stages. In Stats, **Frames missed due to rendering lag** and **Skipped frames due to encoding lag** sit above the output table; read **Dropped Frames (Network)** on the table's **Stream** row. These are the labels and positions in the [OBS 33 Stats panel](https://github.com/obsproject/obs-studio/blob/33.0.1/frontend/widgets/OBSBasicStats.cpp?ref=obsguides.com).

Press **Reset** before each comparable test. An old total doesn't fall after a successful change, so watch whether new losses accumulate during the same kind of scene and game activity. View > Stats also opens a separate window if you prefer that to a dock.

[![OBS Studio 33 Stats dock beside Controls during a live stream: missed and skipped frame counters, the Stream row's Dropped Frames (Network), Reset](https://storage.ghost.io/c/1f/f4/1ff41619-63d0-4562-aeda-c43118aa7da0/content/images/2026/11/03-obs-studio-ui-obs-dropped-frames-0-80596b4c2ce3.webp)](https://storage.ghost.io/c/1f/f4/1ff41619-63d0-4562-aeda-c43118aa7da0/content/images/2026/11/03-obs-studio-ui-obs-dropped-frames-0-80596b4c2ce3.webp?ref=obsguides.com) 

Press Reset before each comparison. Read the Stream row for network losses; the missed and skipped counters describe processing inside the computer.

A normal speed test measures a different destination and may use several connections. Your stream needs sustained upload to one ingest server. That explains why a fast speed-test result can coexist with dropped frames. I'd start with the server and bitrate, because those controls change the part of the path that the network counter measures.

## Fix network drops at the server and bitrate

Save the current service, server and output settings before changing them. Stop the stream to make each change, then use the [private test route below](#rehearsal). Change one variable at a time; otherwise you won't know which change helped.

### Try another ingest server

Open Settings > Stream and choose another entry in **Server**, if your service offers a choice. OBS's [connection troubleshooting advice starts with a different server](https://obsproject.com/kb/stream-connection-troubleshooting?ref=obsguides.com), because an unstable route can affect one destination while other internet traffic works. On Twitch, compare the current Auto selection with a specific server. Distance alone doesn't establish which route will sustain your stream.

For a more detailed Twitch check on Windows, [TwitchTest measures upload to individual ingest servers](https://r1ch.net/projects/twitchtest?ref=obsguides.com). Its developer recommends a Quality rating of at least 80 out of 100, but notes that lower-bandwidth connections can score lower when the ISP discards packets. The tool stops measuring bandwidth at 25 Mbps. Those are the tool's limits and recommendations, not a speed or quality result for your connection. TwitchTest requires 64-bit Windows 10 or later, a Visual Studio runtime, and administrator access for its quality statistics; its page also explains the default results upload and how to opt out.

### Lower the amount OBS sends

In Settings > Output, Simple mode exposes **Video Bitrate** under Streaming. In Advanced mode, use the Streaming tab and the selected encoder's bitrate control. Lower the value, apply it, and compare the network counter during another test.

The [OBS bitrate recommendation starts at 75% of total upload speed](https://obsproject.com/kb/stream-connection-troubleshooting?ref=obsguides.com), subject to the service's bitrate limits. Use that as a starting point, then allow for audio, other uploads and any additional video feeds. A brief speed-test peak isn't a sustainable upload budget. If a lower bitrate holds, choose a resolution and frame rate that still look acceptable at that bitrate rather than forcing the old picture settings through the connection.

On Twitch, **Enable Enhanced Broadcasting** can put the service in charge of settings that would otherwise be editable under Output. For that case, OBS's connection guide recommends testing with Enhanced Broadcasting disabled, or lowering **Maximum Streaming Bandwidth** in Settings > Stream. Untick **Auto** beside that field to enter a limit. Stop the output first, record the old choice, and use the test to decide whether to keep the lower limit. The [OBS 33 controls account for service-managed multitrack settings](https://github.com/obsproject/obs-studio/blob/33.0.1/frontend/settings/OBSBasicSettings.cpp?ref=obsguides.com#L5808); a grey Output field isn't necessarily a broken profile.

[![OBS Studio Settings > Output in Simple mode on Windows, with the Video Bitrate value selected in the Streaming group](https://storage.ghost.io/c/1f/f4/1ff41619-63d0-4562-aeda-c43118aa7da0/content/images/2026/11/03-obs-studio-ui-obs-dropped-frames-1-aa7d32094965.webp)](https://storage.ghost.io/c/1f/f4/1ff41619-63d0-4562-aeda-c43118aa7da0/content/images/2026/11/03-obs-studio-ui-obs-dropped-frames-1-aa7d32094965.webp?ref=obsguides.com) 

In Simple mode, lower Video Bitrate under Streaming, apply it, then compare the network counter during another test.

After either change, watch the Stream row's **Bitrate** alongside its dropped-frame count. A lower outgoing rate that stops new losses is evidence that the previous rate exceeded what that route could sustain under those conditions.

### Compare another service without declaring a culprit

If different servers still drop frames, try a second service with comparable output settings within its limits. For example, use [a private YouTube stream](https://obsguides.com/stream-to-youtube-with-obs/) to compare with Twitch, one destination at a time. Save and restore your original service configuration afterwards.

A clean test on the second service points toward a difference in the route or ingest at the first. It doesn't identify the faulty company or device. Drops on both leave shared parts of the connection, local software and upstream routing in the investigation. OBS recommends this comparison to narrow the problem; it can't certify an ISP from inside the app.

### Check the connection and software around OBS

Use Ethernet for the next comparison if you're on Wi-Fi. Pause optional uploads, including cloud backups, and repeat the same stream workload. Restart the modem and router when the connection can be interrupted safely. OBS's connection guide recommends these checks even when ordinary browsing works.

Then check software that changes how traffic leaves the computer. Disconnect an optional VPN for one test, or ask the network administrator if the VPN is required. A network-priority feature can also interfere: OBS specifically names Lenovo Vantage's **Network Boost** and Killer network software. Disable the relevant prioritization feature for a comparison before considering a larger software change.

For firewall or antivirus interference, inspect the product's connection controls and use an OBS-specific exception when blocking is established. If you temporarily disable protection to diagnose it, re-enable it immediately after the test. Update a suspect network driver through the computer or motherboard manufacturer's support route, rather than an unrelated driver download site.

## Use Advanced Network options for a specific test

Open Settings > Advanced > Network. In OBS 33 these controls apply to RTMP-type streaming protocols; another protocol can show an explanation that it doesn't support these network settings. Start with **Bind to IP: Default**. If it already reads Default, leave it there. Test **IP Family: IPv4 Only** once, then restore **IPv4 and IPv6 (Default)** if it makes no difference.

On Windows, OBS's guide also suggests **Enable network optimizations**, followed by **Enable TCP pacing**. Pacing becomes selectable when network optimizations are enabled. Its tooltip warns that it can increase dropped frames on unstable connections, so compare the result and undo it if losses increase.

In OBS 33's Windows RTMP output, an `rtmps://` destination disables the network-optimization send loop. TCP pacing belongs to that loop, so these two options won't help that RTMPS connection. The [output code logs the RTMPS exception](https://github.com/obsproject/obs-studio/blob/33.0.1/plugins/obs-outputs/rtmp-stream.c?ref=obsguides.com#L1481) as `Disabling network optimizations, not compatible with RTMPS`. Visible or ticked boxes don't establish that the send loop is active. Keep the service's secure connection and continue with the server, bitrate and route checks.

### Use dynamic bitrate when the underlying problem remains

In the same group, tick **Dynamically change bitrate to manage congestion (Beta)** only after the earlier checks. OBS lowers bitrate when the connection can't sustain it, which trades picture detail for a stream that can keep sending. It doesn't repair the connection. Sudden congestion can still cause delay, and a reduced bitrate can take a few minutes to recover, as the control's tooltip explains.

[![OBS Studio Settings > Advanced on Windows: Network group with Dynamically change bitrate to manage congestion (Beta) ticked, TCP pacing unavailable](https://storage.ghost.io/c/1f/f4/1ff41619-63d0-4562-aeda-c43118aa7da0/content/images/2026/11/03-obs-studio-ui-obs-dropped-frames-2-d2afc13a6ae7.webp)](https://storage.ghost.io/c/1f/f4/1ff41619-63d0-4562-aeda-c43118aa7da0/content/images/2026/11/03-obs-studio-ui-obs-dropped-frames-2-d2afc13a6ae7.webp?ref=obsguides.com) 

A ticked box doesn't prove dynamic bitrate is active. After the test, check Help > Log Files > View Current Log for Dynamic bitrate enabled or a disabled reason.

Check Help > Log Files > View Current Log after the test. Search for `Dynamic bitrate enabled` and any `Dynamic bitrate disabled` reason. OBS 33 [checks the active encoders before enabling dynamic bitrate](https://github.com/obsproject/obs-studio/blob/33.0.1/plugins/obs-outputs/rtmp-stream.c?ref=obsguides.com#L1383): a single video encoder must support changing bitrate during output, and a multitrack video stream needs that multitrack capability in every video encoder. Stream Delay also disables the feature. Neither a ticked box nor RTMP compatibility alone proves it became active.

When dynamic bitrate is active, watch for the outgoing bitrate to fall during congestion. A stable dropped-frame count accompanied by a softer picture is the trade the feature makes; it isn't proof that the route has recovered.

## Take route evidence to the ISP before replacing hardware

Sudden drops after months of working settings can still come from routing or congestion. In [one OBS Forum report](https://obsproject.com/forum/threads/obs-suddenly-dropping-massive-amounts-of-frames.176889/?ref=obsguides.com), the streamer's quoted log recorded 7,849 dropped frames, or 7.3%. They were wired, a new modem didn't solve the problem, and their ISP reported other issues in the area. The discussion doesn't establish a completed repair. It's a useful example of why a new device and a good general speed test don't settle a network diagnosis.

After a test, stop streaming and retain that session's log through Help > Log Files. Give support the test time, service and server, outgoing bitrate, wired or wireless connection, and which of the three counters increased. Include the results of the alternate-server and alternate-service tests. Review any log before sharing it, and keep your stream key private. If the trouble began [after an OBS update](https://obsguides.com/how-to-update-obs/), the same counter check comes first: timing alone doesn't establish what failed.

## Reduce work when the skipped-frame counter rises

**Skipped frames due to encoding lag** means the encoder isn't keeping up. Follow [the encoder's quality-versus-speed choice](https://obsguides.com/obs-encoder-settings/) in Settings > Output: a faster preset can reduce encoding work at a cost in compression efficiency. Preset names depend on the selected encoder, so don't copy an x264 preset into a hardware encoder's settings.

Next lower **Output (Scaled) Resolution** or **Common FPS Values** in Settings > Video. OBS's [performance guide gives 60 to 30 fps as an example](https://obsproject.com/kb/encoding-performance-troubleshooting?ref=obsguides.com) of reducing the work. Hardware encoding can also struggle when the GPU is overloaded, so check the rendering steps below if both counters climb. Compare a test with the same game activity and scene switches; the indicator to improve is the skipped-frame count.

## Leave the GPU time to draw the canvas

**Frames missed due to rendering lag** points to OBS's scene rendering. Even with CPU encoding, OBS uses the GPU to compose the picture. Start by capping the game's frame rate or enabling V-Sync, then reduce game graphics settings if the counter continues to rise.

Close other GPU-heavy programs you recognize and don't need for the stream. Simplify expensive sources, filters and Browser sources. The [OBS GPU-overload guidance](https://obsproject.com/kb/encoding-performance-troubleshooting?ref=obsguides.com) also supports a Windows-only administrator run so OBS can request reserved GPU capacity. Use that for the rendering symptom; it doesn't change the network route.

Lower output resolution or frame rate if the computer still can't keep up. Keep **Base (Canvas) Resolution** until those choices are exhausted: changing it affects scene layout. OBS recommends a new Scene Collection before lowering the canvas when GPU resources are severely limited, followed by resizing and repositioning the sources. Look for the missed-frame count to stop accumulating during the representative test.

## Rehearse without sending a public broadcast

Set the destination's privacy or test mode **before** pressing Start Streaming. For YouTube, open YouTube Studio > Create > Go live and set the stream to **Private**. YouTube's [encoder-stream setup lets you choose Private, Unlisted or Public](https://support.google.com/youtube/answer/2907883?hl=en&ref=obsguides.com); an adult account can default to Public. Check the saved choice even when reusing an old stream.

With [Twitch connected by account](https://obsguides.com/connect-twitch-to-obs/), Settings > Stream shows **Enable Bandwidth Test Mode**. Enable it for the test: [Twitch's bandwidth-test flag disables live viewing](https://dev.twitch.tv/docs/video-broadcast/?ref=obsguides.com) and sends the connection-health test to Twitch Inspector. Stop the test before clearing that option for a real broadcast. On Windows, TwitchTest is another connection-only route; stop any existing stream before running it, as its developer requires.

Press Reset in Stats, then test long enough to include the busiest scene and game activity you expect to use. Read all three counters, not just the network icon. Keep the settings that improve the relevant count and restore changes that didn't help. On YouTube, check picture and sound in the private player. Twitch's bandwidth test has no live viewing, so use a short local recording alongside it to check picture and sound; that recording doesn't verify the network.