🎞️ Video to GIF
Convert video clips to high-quality animated GIFs — no upload, no watermark
✓ Free Forever · ✓ No Signup · ✓ No Upload · ✓ Works Offline
🔒 Your image never leaves your device. All processing happens locally in your browser using FFmpeg.wasm (palette generation + Lanczos scaling, in your browser). No upload, no server, no tracking.
Features
- Zero Upload — Your video stays on your device. FFmpeg.wasm transcodes locally on your CPU — verifiable in DevTools Network tab.
- Palette Dithering — Two-pass palette generation with Bayer dithering — much better color quality than the naive ffmpeg -i input.mp4 output.gif command.
- Precise Trimming — Drag sliders to pick exact start time and clip length (up to 15 seconds — GIFs balloon past that).
- No Signup, No Watermark — No account, no overlay, no time limit, no email required. Output is a clean, loopable GIF.
How It Works
- Drop your video — MP4, WebM, MOV, AVI, MKV — up to 500 MB. The full file stays in your browser memory.
- Pick a clip — Set start time and duration. Keep it short — 3-8 seconds usually looks best as a GIF and stays under 5 MB.
- Tune frame rate and width — 15 fps × 480 px is the sweet spot. 24 fps looks smoother but doubles file size. Smaller width = smaller GIF.
- Convert and download — Click Convert to GIF, wait a few seconds, then download the result.
Use Cases
- Make reaction GIFs from movie clips, sports plays, or your own footage
- Embed UI demos in GitHub READMEs (GIF plays inline; MP4 doesn't)
- Post short clips on platforms that auto-loop GIFs but compress MP4s
- Create silent tutorial loops for blog posts and documentation
- Make personalized animated stickers or messaging reactions
Frequently Asked Questions
Why are GIFs sometimes bigger than the original MP4?
GIF is an old format — palette-based, no motion estimation, no inter-frame compression. A 5-second 1080p MP4 might be 1 MB; the same clip as a high-quality GIF is often 5-15 MB. Keep duration short, fps moderate (10-15), and width small (320-480 px) to control size.
What's the maximum length?
We cap GIF duration at 15 seconds. Past that, file size and memory usage spike. For longer clips, consider using video-compress (an MP4 stays much smaller) or splitting into multiple GIFs.
Why does my GIF look posterized?
GIF only supports 256 colors per frame. The palette is generated per clip, so gradients and skin tones can band. This tool uses 'stats_mode=diff' palettegen + Bayer dithering to minimize banding — but the limit is fundamental to the format.
Does it preserve audio?
No — GIF has no audio track. The audio from your source video is silently dropped. If you need sound, output as MP4 (use video-compress) or WebM instead.
Is it really not uploading my file?
Yes. The only network traffic is the FFmpeg engine (~30 MB) loading from a public CDN the first time you use any FFmpeg-based tool (video-compress, audio-compress, video-to-gif share the same cached engine). Your video bytes never leave the browser. Open DevTools → Network tab to verify.
Why is it slower than online services?
Most online GIF makers run on servers with dedicated CPUs. ToolKoala runs FFmpeg.wasm on your laptop's CPU. The trade-off is privacy. A 5-second clip at 15 fps × 480 px typically converts in 5-20 seconds.
Related Tools
- 🎬 Video Compressor — Compress MP4, WebM, MOV — no upload, no signup, no watermark
- 🎞️ GIF Maker — Combine images into an animated GIF — all in your browser
- 🎞️ APNG / Spritesheet Maker — Combine images into animated PNG spritesheets — better quality than GIF