Video to GIF
Convert short video clips into animated GIFs.
Open toolHome › Tools › Video Tools › GIF to MP4 Converter
Convert any animated GIF to a smooth, compact MP4 video — free, instant, no upload required.
A GIF that loops forever on a product page or in a Slack message costs anywhere from 5 to 40 times the bandwidth of the same clip encoded as MP4. The AT USE GIF to MP4 Converter encodes your GIF frames into an H.264 MP4 container in the browser — the resulting file embeds in any HTML5 <video> tag, autoplays silently in Chrome, Firefox, and Safari (all support muted autoplay), and carries none of the colour limitations that make GIFs look degraded on gradients and photographic content. Everything runs locally via ffmpeg.wasm: no upload, no server queue, no waiting.
The conversion is especially useful on the web, where a hero GIF is the single most common cause of slow above-the-fold load times. Replacing a 12 MB GIF with its H.264 equivalent typically produces a file under 1 MB with better colour rendering — not because you lost quality, but because H.264 inter-frame prediction stores only what changed between frames rather than nearly full-frame data per tick the way GIF does. For email, most clients will not autoplay video, but for web embeds, GitHub README files, Notion pages, Loom-style documentation, and social platforms that accept MP4, the conversion eliminates the GIF size penalty entirely.
<video autoplay muted loop playsinline> or upload to any platform that accepts MP4.GIF stores each frame as an indexed 8-bit image with a 256-colour palette per frame (or per file for global-palette GIFs). Transparency is binary — one palette index is marked transparent, no partial alpha. LZW compression is lossless within those constraints but operates on already-downsampled colour data. The result is that a 480 × 270 px GIF at 15 fps and 10 seconds long stores roughly 150 near-full frames, typically 8–15 MB.
H.264 encodes the same clip with discrete cosine transform (DCT) compression within each frame plus inter-frame prediction between frames: only the pixel regions that actually changed are encoded, and the encoder can reference both past and future frames (B-frames) to compute the smallest possible difference. CRF (Constant Rate Factor) controls the perceptual quality target — CRF 23 is the ffmpeg default and is visually lossless for most content; CRF 28 cuts file size by roughly 40% with minor quality reduction visible only on high-motion footage. The output container is MP4 (ISO Base Media File Format), which all modern browsers and platforms accept. The pixel format is converted from the GIF's indexed palette to YUV 4:2:0, which is the standard chroma subsampling mode required for broad H.264 decoder compatibility (some decoders reject 4:4:4).
<img> tag for a <video autoplay muted loop playsinline> element brings the asset to under 900 KB and clears the "serve images in next-gen formats" and "avoid enormous network payloads" diagnostics in one step.Yes. Completely free, no login, no watermark, no signup required. Everything runs in your browser.
No. Conversion runs locally in your browser using ffmpeg.wasm — your file never leaves your device.
Typically 5–10× smaller than the original GIF. MP4/H.264 uses far more efficient compression than the GIF palette format.
The MP4 file itself does not loop — loop behaviour depends on the player. Add the loop attribute to a <video> tag to make it loop in HTML.
Medium (CRF 23) is the best all-round choice. Use High (CRF 18) for the sharpest output; use Small file (CRF 28) to minimise file size.
Loop behaviour in MP4 depends on the playback context, not the file. In HTML, add the loop attribute: <video autoplay muted loop playsinline src="your.mp4">. On Twitter/X, LinkedIn, and most messaging apps, short MP4s loop automatically in the feed. In a media player or file browser, single-play is the default.
H.264 MP4 does not support an alpha channel, so transparent areas in the GIF are composited against a black or white background in the output MP4. If your GIF has a transparent background that must remain transparent in the final file, consider using WebM with VP9 instead of MP4 — VP9 supports an alpha channel.
Keep going
Other tools in the Video category on AT USE.