Short version

Move encoding off the CPU, record at a frame rate the game can actually hold, keep OBS from competing with the game, and write to a drive the game isn't reading from. Those four changes remove most self-inflicted stutter. The lag BTD6 itself produces in late rounds will still land in the file, and that part is fixed after recording, not before.

Why BTD6 is a special case

Most "OBS stutter" advice assumes the game runs smoothly and OBS is the bottleneck. BTD6 flips that in late rounds: the game is CPU-bound simulating thousands of bloons and projectiles (why), so anything OBS takes from the CPU makes the game stall more, and every stall becomes a repeated frame in the file (how). The settings below are chosen to keep OBS as far off the CPU as possible.

1. Encoder: use the GPU

Settings → Output → Recording → Video Encoder. Pick the hardware option for your card: NVIDIA NVENC (H.264 or AV1 on RTX 40-series and newer), AMD HW (H.264/HEVC/AV1), or Apple VT on Mac. Avoid x264 for BTD6 recording: it's the CPU encoder, and the CPU is exactly what the game needs in round 200.

Rate control for recordings should be CQP (constant quality), not CBR. CBR is for streaming. A CQ level of 18–23 gives near-lossless to very good quality; lower numbers mean bigger files. Preset: the mid-range "Quality" option (P5/P6 on NVENC) is fine; the slowest presets cost GPU time for little visible gain on a 2D game.

2. Frame rate: record what the game can hold

Settings → Video → Common FPS Values. If BTD6 drops to 25–40 fps in the rounds you're recording, recording at 60 guarantees that more than half the frames in the file are duplicates. Record at 30. The file will be smaller, the encoder works half as hard, and there's less padding to clean up later.

Check what the game actually holds in late rounds before deciding. BTD6's own settings have a frame-rate option; a cap slightly above your recording rate (for example 60 in-game while recording 30) gives the recorder a fresh frame every tick without the game burning CPU on frames nobody sees.

3. Capture source

Game Capture (hook into the game) is the lighter option and the default recommendation. If it shows a black screen or fights with an overlay, Display Capture works for a windowed/borderless game at a small extra cost. Don't run both at once.

4. Keep OBS off the game's CPU time

  • Settings → Advanced → Process Priority: Normal or Below Normal. Counter-intuitive, but for a CPU-bound game you want the game to win contested cycles. "High" is for when OBS is dropping frames on a smooth game, which isn't this situation.
  • Disable the preview (right-click the preview → Disable Preview) while recording. It's a second render of everything.
  • Remove unused sources, especially browser sources and webcams you aren't using. Each is work per frame.
  • Close Discord video, other browsers, and anything with hardware acceleration you don't need. They compete for the same GPU encoder and CPU.

5. Disk and container

  • Record to a different drive than the game runs from if you have one, ideally an SSD. Writes to the game drive can cause the kind of pacing hiccups that look like lag.
  • Leave 20–25% free on the recording drive. Nearly full drives slow down.
  • Recording Format: MKV or Hybrid MP4. Both survive a crash mid-recording. Plain MP4 is unreadable if OBS or the game dies before the file is finalised, which late rounds can cause. If you choose MKV, use File → Remux Recordings afterwards to get an MP4 for your editor.

6. Resolution

Settings → Video → Output (Scaled) Resolution. 1080p is plenty for BTD6 on YouTube. If you play at 1440p or 4K, downscaling in OBS costs a little GPU; recording at native and letting YouTube downscale costs disk and encoder time. For a laggy late-game session, 1080p output is the safer choice.

When late rounds lag anyway

None of this stops BTD6 from stalling when it has to simulate a stack of fortified B.A.D.s. The settings above make sure the stalls in your file are the game's, not OBS's. What's in the file is still a run of repeated frames every time the game froze.

That's a post-recording fix. LagCut scans the recording, drops the repeated frames and any pause-menu visits, and re-times what's left to one consistent game speed. Trim the clip to the 30 seconds you want first, then drop it in. See how to speed up laggy BTD6 footage for the full workflow.