Initializing... drag & drop files here
Supports: MP4, M4V
To turn an MP4 into a GIF, upload the video to our servers, trim to the exact moment you want, then set a frame rate around 15 FPS, a width near 480px, and a reduced color palette to keep the file lean. Click Convert and download — no sign-up, no watermark.
Real result: a 3-5 second clip becomes a looping GIF that auto-plays everywhere — chat, email, and docs — with no player needed. Keep clips short, since a GIF is usually larger than the source MP4 (GIF caps at 256 colors per frame).
MP4 with H.264 is roughly 10-50x more space-efficient than GIF for the same clip, so why convert at all? Because GIF still wins anywhere autoplay-without-audio and zero-friction embedding matter — email, Slack, Discord, Reddit, GitHub README files, documentation sites, and chat apps that strip or mute uploaded video. A 480px 12 FPS GIF under 5 seconds plays inline everywhere; an MP4 of the same clip often gets converted to a static thumbnail or blocked entirely.
| Property | MP4 (H.264) | GIF | WebP (animated) | APNG |
|---|---|---|---|---|
| Typical file size for 5s 480p clip | 200-500 KB | 3-10 MB | 300 KB-1 MB | 1-3 MB |
| Color depth | Millions | 256 per frame | Millions | Millions |
| Audio | Yes | No | No | No |
| Max framerate (practical) | 60+ FPS | ~50 FPS (browser-limited) | 60+ FPS | 60+ FPS |
| Transparency | No (use ProRes/VP9) | 1-bit (binary) | Full 8-bit alpha | Full 8-bit alpha |
| Autoplay in email / GitHub README | No | Yes | Partial | Yes (where supported) |
| Browser support | Universal | Universal | Chrome, Firefox, Safari 14+, Edge | Chrome, Firefox, Safari, Edge |
| Use case | Width | FPS | Length | Target size |
|---|---|---|---|---|
| Twitter / X (mobile-safe) | 360-480px | 10-12 | ≤ 4s | ≤ 3.5 MB |
| Discord free tier (10 MB cap) | 480px | 12-15 | ≤ 6s | ≤ 10 MB |
| Slack message inline | 360-480px | 10-12 | ≤ 5s | ≤ 5 MB |
| GitHub README demo | 600-720px | 10-15 | 4-8s | ≤ 10 MB |
| Email signature / inline | 240-360px | 8-10 | ≤ 3s | ≤ 500 KB |
| Custom Slack emoji | 128px | 8-10 | ≤ 2s | ≤ 128 KB |
| Platform | Free / standard cap | Paid / boosted cap |
|---|---|---|
| Twitter / X | 15 MB desktop, 5 MB mobile (re-compressed above ~3.5 MB) | Same |
| Discord | 10 MB (lowered from 25 MB in 2024) | Nitro Basic 50 MB, Nitro 500 MB |
| Slack | 1 GB per file (workspace plan-dependent) | Same |
| 100 MB native upload | Same | |
| GitHub issues / README | 10 MB per file | Same |
Upload your MP4 to our servers, then trim the start and end times to isolate the segment you want. Set the framerate to roughly 10-15 FPS, drop the width to around 480px, and reduce the color palette to control file size. Click Convert and download your looping GIF — no sign-up and no watermark.
GIF predates modern video codecs by more than two decades. It uses LZW compression on a per-frame basis with a maximum 256-color palette per frame and no inter-frame motion compensation. H.264 in MP4 only encodes the differences between frames. For the same visible clip, a GIF is commonly 10-50x larger. To shrink the result, cut duration, drop the framerate to 10-12 FPS, reduce width to 480px or below, and lower Image quality (%) to 70-80.
10-15 FPS is the sweet spot. The GIF89a spec stores frame delay in 1/100-second increments, which means 25 FPS (4/100s) and 50 FPS (2/100s) are the highest evenly-representable rates; 60 FPS is mathematically impossible to express in the spec. Browsers historically clamped very short delays — Firefox and Chrome treat 0 or 1 hundredth-second delays as 10 hundredths (100 ms / 10 FPS), so anything faster than 50 FPS plays slower than intended.
Twitter accepts GIFs up to 15 MB on desktop and 5 MB on mobile, but the platform re-compresses anything over roughly 3.5 MB on mobile clients. For reliable playback, target ≤ 3.5 MB: a 480px-wide, 10-12 FPS GIF under 4 seconds usually fits. Twitter also auto-converts GIF uploads to MP4 internally for delivery, so over-optimizing past the cap rarely helps quality.
Discord lowered the free-tier upload cap from 25 MB to 10 MB in 2024. A 10 MB GIF will upload and play, but for free accounts, aim well below — 480px at 12 FPS for 5 seconds typically lands in the 2-5 MB range. Nitro Basic raises the cap to 50 MB and full Nitro to 500 MB.
GIF quantizes each frame to a maximum 256-color palette, while MP4 carries millions of colors per frame. Gradients, skin tones, and dark scenes show visible banding or posterization after quantization. Three mitigations: (1) keep the GIF small enough that banding is less noticeable, (2) pick scenes with limited color variety (UI demos, text, line art), or (3) consider animated WebP — same autoplay-in-chat behavior, full color, often 5-10x smaller.
Yes — set start and end times directly on the conversion page. For more advanced editing (multiple cuts, exact frame selection), use the dedicated Video Cutter first, then convert the trimmed clip to GIF.
No — GIF has no audio support. If you need audio, convert to MP4 (with compression) or WebM instead. If your goal is silent autoplay in chat or email, that's exactly where GIF still wins over MP4.
GIF supports 1-bit (on/off) transparency — a pixel is either fully transparent or fully opaque, with no partial alpha. If your MP4 has a true alpha channel (rare; usually requires ProRes 4444 or VP9 with alpha), the converter maps it to GIF's binary transparency. For animations that need real anti-aliased transparency, APNG or animated WebP are better targets.
Width. File size scales roughly with the square of resolution: dropping from 720px to 480px cuts pixel count by 55%, and from 480px to 360px by another 44%. After width, the next biggest lever is duration (linear), then framerate, then color palette. If you've already trimmed to ≤ 4 seconds and the file is still huge, also try Compress GIF for a second-pass optimization.