What the GIFvideo → gif, the way creatives need it
obs recording to gif

Your OBS folder is full of GIFs you haven't cut yet

OBS is a broadcast tool that happens to leave files behind, and those files are already framed, already paced, and usually already 60 frames a second. Pulling four seconds out of one takes a browser tab.

Drop a video, get a GIF free · frame-perfect · nothing leaves your browser Open the converter →

Turn an OBS recording into a GIF

What the GIF does the whole thing locally, right in your browser: nothing here ever leaves your machine.

  1. Open your recording folder. Settings, Output shows the path OBS writes to. Look for the .mkv or .mp4 from the session, or a file with Replay in the name if you were running the buffer.
  2. Drop it in unremuxed. Drag the file into the editor. Matroska opens as readily as MP4 here, so File, Remux Recordings is a step you can save for the day some other app demands it.
  3. Trim to the beat. Set the in and out points around the moment, then nudge each end one frame per arrow key press so the loop starts on the action.
  4. Crop before you scale. Cut to the part of the canvas that matters on a locked ratio, so alerts, chat, and any stray dashboard leave the frame entirely.
  5. Set the four dials. 12 to 15 fps for talk, 20 to 24 for fast action, colors at 128 when text is on screen, width 480 to 600, dithering on if anything bands.
  6. Render and post. Watch the size estimate settle where you need it, export, and share. Nothing was uploaded and nothing was stamped on the result.

The reason OBS hands you an MKV

OBS defaults to Matroska for recordings, and the reason is structural rather than stylistic. An MP4 keeps its index, the moov atom, at the end of the file: the recorder writes video first and the table of contents last. Kill the process, lose power, or watch the encoder fall over at minute fifty-eight, and you are left with a file that has no index, which most players read as no file at all. Matroska writes its structure as it goes, so a recording that ends badly is still a recording, just one that stops abruptly. OBS makes that trade for you, then hands you the way back: File, then Remux Recordings, rewraps the same video into an MP4 without re-encoding a frame.

You can skip that step here. Drop the .mkv in exactly as it came out of your recording folder. What decides whether a file opens is the codec inside, not the wrapper around it, and the x264 or NVENC H.264 that OBS writes by default is precisely what browsers were built to decode. If you switched your encoder to HEVC or AV1 to save disk, a remux will not help you, because the container was never the problem; a re-encode to H.264 is. The MKV page goes further into Matroska's habits.

You recorded the canvas, not the monitor

OBS does not capture your screen. It captures the canvas you composited, scaled to whatever Output (Scaled) Resolution sits in Settings, Video, at the frame rate you picked. The file is therefore a tidy 1920 by 1080 at 30 or 60 regardless of how your windows were arranged, and every source layered into that scene, the facecam, the alert box, the chat widget, the sponsor bar, is flattened into those pixels for good.

That flattening is why cropping matters more here than with a plain screen capture. Your overlay text was rendered once at canvas size, and it gets squeezed a second time when you scale down for a GIF, which is how sharp stream graphics turn to mush at 480 wide. So crop to the region carrying the point first, on a locked ratio (1:1, 9:16, 4:5, 4:3, 16:9), and scale afterward. Cropping discards pixels nobody was going to look at. Scaling discards detail from the pixels they will.

Check the frame for things that shouldn't leave the room

A stream composite is a small intelligence file. Alert boxes carry the names of people who gave you money. Chat widgets carry usernames. A Display Capture scene picks up whatever else was open on that monitor, and a Browser Source aimed at your own dashboard puts real numbers on screen. Crop them out here and the uncropped version continues to exist in exactly one place, your disk, because there is no second place in this workflow. The page stopped talking to a server the moment it finished loading, and your CPU does the encode from there.

Replay Buffer is the habit worth forming

The best OBS files for GIF work are not recordings at all. Switch on Replay Buffer and OBS keeps the last stretch of video in RAM, writing it out only when you press the hotkey, which turns "I should have been recording" into a keystroke placed after the fact. The saves land in your normal recording path with Replay in the filename, they arrive at roughly the length a GIF wants anyway, and while idle they cost memory instead of disk.

If the moment spilled across two saves, bring both. Up to ten clips sequence into a single output, each keeping its own trim and crop, in whatever order you arrange them, with hard cuts at the joins. Gameplay in particular tends to want that treatment, and the gameplay clip guide covers the frame-rate side of fast footage in more depth.

Settings for footage that was built to be watched

Stream footage shows up with its pacing already solved, so the edit is pure subtraction. Bracket the moment with the trim handles, then walk each end inward a single frame per arrow press until the loop opens on the beat instead of a breath before it. Two to five seconds is the size of a good one.

Every control you touch updates the size readout, which means you settle the question of whether it fits while you are still deciding, not after a render. When the destination enforces a real ceiling, the small-file walkthrough is the long version of that paragraph. Otherwise open the converter and start with the trim.

That save is four seconds from being a GIF

Bring the .mkv straight out of the recording folder, crop the overlay off, and export a loop that fits the channel. The capture never leaves the machine that made it.

Open the converter

Questions, answered

Do I have to remux my MKV to MP4 first?
No. Matroska drops in directly. OBS offers File, Remux Recordings because other editors are fussier about the container, but a browser cares about the codec inside, and OBS's default H.264 is universally decodable.
Why does OBS record MKV instead of MP4 by default?
Crash insurance. MP4 stores its index at the end of the file, so an interrupted recording can end up unplayable. Matroska writes its structure continuously, so a recording that dies mid-session still opens and plays up to the point it stopped.
My OBS file will not load. What went wrong?
Almost always the encoder. If you set OBS to HEVC or AV1, or you are recording in a lossless or specialty format, the browser may have no decoder for it. Re-encode that file to H.264 once and it will behave like any other capture from then on.
Can I stitch two Replay Buffer saves into one GIF?
Yes. Up to ten clips can be sequenced into one output, in any order, each with its own trim and crop. The cuts are hard cuts, with no transitions between them.
Does my stream overlay have to be in the GIF?
Only if you leave it there. OBS bakes every scene source into the recorded pixels, so the crop is your removal tool. Frame the part you want, and the alerts, chat, and facecam simply are not in the file you export.
Is my capture uploaded anywhere during the conversion?
No. Decoding, trimming, and GIF encoding all run inside the tab on your own hardware. You can disconnect from the network after the page loads and still finish the job, which is the practical proof that nothing left.