🎞️
Tools/MP4 to GIF

MP4 to GIF

Turn a video clip into an animated GIF — pick the segment, frame rate, and width. Runs entirely in your browser.

100% LOCALTwo-pass paletteTrim + fps presetsBayer ditheringLocal ffmpeg.wasm
Saved Presets· Auto-save on
▾
The CalculatorPage 1
🎞️
Drop an MP4 here, or click to browse
MP4, MOV, WebM, MKV, AVI — pick a short segment for the best result

Drop a video, choose the segment, and make a looping GIF

Data Source & Legal Disclaimer
Effective: 2026Last updated: 2026-09-08Update: Manual review
Sources: FFmpeg documentation · GIF89a specification

Conversion runs entirely in your browser with ffmpeg.wasm — the video never leaves your device. GIF is limited to 256 colors and no audio; a 10-second 480p clip typically lands between 2 MB and 8 MB.

See all data sources & update policy →
How it worksPage 2

Making GIFs that do not look terrible — the palette pass is the whole trick

GIF is a 1987 format with two hard limits: 256 colors per frame and no audio. Naïve converters map every frame to a generic web-safe palette, which is why so many GIFs have banded skies and blotchy faces. The fix is a two-pass encode: scan the actual frames you are about to use, generate a palette optimized for those colors, then apply it. That is exactly what this tool does (ffmpeg’s palettegen → paletteuse), and it is the single biggest quality difference between a good GIF and a bad one. Dithering is the second lever: ordered (Bayer) dithering scatters the error in a regular pattern that hides banding in gradients and is usually what you want; turning it off gives flatter, cleaner results for screenshots and UI captures with large solid areas. Beyond that, two settings decide your file size more than anything else — duration and frame rate. Because every frame is stored, a 10-second clip at 24 fps holds 240 frames; dropping to 10 fps cuts both the size and the smoothness roughly in half. Keep GIFs to 3–6 seconds for reactions and short product demos; if you need longer or want sound, use a real video format instead.

Trim → palette pass → dithered encode → looping GIF
.mp4trim tostart + lengthfps + scalelanczos320 / 480 / 640Palette passpalettegenfrom your framesAnimated GIFBayer ditherloops forever

Pass one builds a palette from your actual frames; pass two applies it with Bayer dithering.

A product demo GIF for a landing page

A 40-second screen recording of a checkout flow has to become a small looping GIF for a landing page hero.

  1. Capture:A screen recording of the new checkout flow — 40 seconds, 1080p, 28 MB
  2. Trim:She keeps only seconds 8–13, the part where the one-click payment actually happens
  3. Encode:Balanced preset (480px, 15 fps) with Bayer dithering; the palette pass keeps the brand gradient smooth instead of banded
  4. Ship:The GIF lands at 3.1 MB and loops silently in the hero section — no autoplay permissions, no muted-video caveat
FAQ & detailsPage 3

To make a GIF from a video: load the clip, set the start time and length, and encode — a palette is generated from your real frames so gradients do not band.

FreeToolHub MP4 to GIF is a free browser-based tool that turns a video clip into a looping animated GIF, no signup, no upload.

About this tool

What is this tool?

Convert MP4 to GIF online free. Two-pass palette encoding keeps gradients smooth, with segment trimming, frame rate and width presets, and Bayer dithering. No upload, no watermark.

Two-pass paletteTrim + fps presetsBayer ditheringLocal ffmpeg.wasm

The Palette Pass Is The Whole Trick

GIF is a 1987 format with two hard limits: 256 colors per frame and no audio. Naive converters map every frame to a generic web-safe palette, which produces the banded skies and blotchy skin tones that make GIFs look cheap. The fix is a two-pass encode: scan the frames you are actually using, generate a palette optimized for those colors, then apply it. That is exactly what this tool does with ffmpeg palettegen and paletteuse, and it is why a well-made GIF can look nearly photographic despite the 256-color ceiling.

Dithering, Frame Rate, and Duration

Dithering is the second quality lever. Ordered Bayer dithering scatters error in a regular pattern that hides banding in gradients and skin — usually what you want. Turning it off gives flatter, cleaner results for screenshots and UI captures with large solid areas. Size is governed by two other settings: duration and frame rate. Because every frame is stored, 10 seconds at 24 fps is 240 frames; 10 fps roughly halves both size and smoothness. Three to six seconds is the sweet spot for reactions and short product demos.

When GIF Is The Wrong Answer

GIF is unbeatable for one thing: silent, autoplaying, universally supported motion with no player and no permissions. It is the wrong choice when you need sound, when the clip runs longer than about ten seconds, or when file size matters more than compatibility — a muted looping MP4 or WebP is typically a fraction of the size at far better quality. Use GIF for reactions, short demos, and inline documentation; reach for video everywhere else.

Frequently Asked Questions

Why does this use two encoding passes?

GIF is limited to 256 colors per frame. A naive converter maps every frame to a generic palette, which is why so many GIFs have banded skies and blotchy faces. This tool generates a palette from the actual frames you selected first, then applies it — the single biggest quality difference between a good GIF and a bad one. It costs one extra pass and is worth it every time.

Should I keep dithering on?

Usually yes. Bayer dithering scatters color error in a regular pattern that hides banding in gradients, skin tones, and skies. Turn it off for screenshots and UI captures with large solid color areas, where dithering adds visible texture to what should be flat.

How do I keep the file size down?

Duration and frame rate dominate, because every frame is stored. A 10-second clip at 24 fps is 240 frames; dropping to 10 fps cuts size and smoothness roughly in half. Keep GIFs to 3-6 seconds for reactions and short demos, and reduce width when the GIF will be displayed small anyway.

Why is there no sound, and why is my GIF so large?

GIF has no audio support at all — that is a limit of the 1987 format, not of this tool. Size is inherent too: GIF stores every frame as a full image with a 256-color palette, so a 10-second 480p clip typically lands between 2 MB and 8 MB. If you need sound or a longer runtime, use a real video format instead.

Is my video uploaded anywhere?

No. The conversion runs entirely in your browser with ffmpeg compiled to WebAssembly. Your video never leaves your device, so unreleased product recordings and internal demos stay private.

Related tools

Joke of the Day
Oct 14

What do you call a nosy pepper?

Free core, no account

Keep the Free Edition Free

No signups, no data sold. Every tool is free to use — the free tier allows 5 downloads or saves per day, and the optional Pro plan ($7/mo, $59/yr) adds unlimited downloads, batch processing, white-label exports and an ad-free experience.

☕Support me on Ko-fi— support the free tier

100% of proceeds go towards hosting & building more free tools.