GIF to MP4 Converter
GIFs are a terrible video codec. Converting to H.264 MP4 typically cuts size by 80%+ at identical visual quality — perfect for README embeds, landing pages and social posts. Powered by ffmpeg.wasm locally (the ~31 MB engine downloads once and caches).
How to use
- 1
Drop in a GIF, animated WebP or APNG.
- 2
Pick MP4 (H.264) or WebM as the output.
- 3
Optionally trim, crop or speed up first.
- 4
Download — the video loops cleanly when embedded muted+autoplay.
Platform limits reference
| Platform | Limit | Note |
|---|---|---|
| HTML video embed | Any size | Use muted+autoplay+loop+playsinline |
| Twitter/X video | ≤ 2:20 | MP4 posts as native video |
| GitHub README | < 10 MB | MP4 not inline-playable; link it |
| Discord embed | < 10 MB free | MP4 embeds with player |
Frequently asked questions
›Why is MP4 so much smaller than GIF?
GIF stores palette-indexed frames with weak inter-frame compression. H.264 predicts motion between frames and uses full 24-bit color — the same animation needs ~10–20% of the bytes.
›How do I make the MP4 behave like a GIF on a webpage?
Use <video autoplay muted loop playsinline>. Muted+playsinline is required for iOS autoplay. That combination is indistinguishable from a GIF.
›What happens to odd dimensions?
H.264 requires even pixel dimensions, so a 333×200 GIF becomes 334×200 automatically — one extra interpolated column, invisible in practice.
›Why is the first conversion slow?
The ffmpeg engine (~31 MB of WebAssembly) downloads once from a CDN and caches. Subsequent conversions start instantly.
›Does the MP4 keep transparency?
No — H.264 has no alpha channel; transparent pixels are flattened to black. If you need alpha, export APNG or animated WebP instead.
›Can I cancel a conversion?
Yes — the Cancel button terminates the worker and ffmpeg instance immediately, freeing memory.