Video to GIF — Convert MP4 to Animated GIF, Free
Turn a short part of an MP4, WebM or MOV video into an animated GIF. Pick the start, length, frame rate and width, in your browser or on our server for cleaner colours.
About Video to GIF Converter
A video-to-GIF converter takes a short segment of a video file and produces an animated GIF — a widely supported looping image format ideal for chat reactions, documentation animations, README demos, and social-media clips. The ZTools Video to GIF has two modes. On this device, it plays the chosen segment in your browser, captures the frames on a canvas and encodes the GIF with gif.js: 8 to 30 fps, up to 800 px wide and 300 frames, and nothing is uploaded. On our server, ffmpeg builds a colour palette for your clip in two passes, which gives cleaner colours and finishes faster: up to 15 seconds, 5 to 20 fps and 640 px wide. The server mode needs a free Google sign-in and deletes your video right after processing.
Use cases
- README product demos. GitHub READMEs autoplay GIFs but not videos. A 5-10 second GIF demo of a CLI tool or UI flow shows what the project does without making readers click "play".
- Bug reports and walkthroughs. Issue tracker comments support GIF embedding directly. A 6-second animation of the bug captures the issue better than a static screenshot or text description.
- Social media reactions. Slack, Discord, and chat apps render GIFs inline. Trim a movie clip or recorded reaction into a 3-5 second loop for instant communication.
- Tutorial micro-demos. Show a single UI interaction (a 2-second click + animation) inline in documentation. Less heavy than embedded video; works in environments where video is blocked.
How it works
- Add a video. MP4, WebM, MOV and more. The server mode takes files up to 100 MB.
- Choose where to make the GIF. "On this device" captures the frames in your browser with no upload. "On our server" uses ffmpeg with a two-pass colour palette and needs a free Google sign-in.
- Set the segment. Pick where the clip starts and how long it runs. Keep clips under 10 seconds for a reasonable file size; the server mode takes up to 15 seconds.
- Configure output. Frame rate (lower = smaller file, choppier; 10-15 fps is a sensible default) and width (a smaller width gives a much smaller file).
- Download. Save the GIF, check its size, and lower the frame rate or width if it is too large.
Examples
Input: 5-second 480p MP4 → 12 fps GIF at 480px wide
Output: GIF ~1-3 MB; suitable for Slack and most issue trackers.
Input: 10-second screen recording at 30fps → 480p 15fps GIF
Output: ~3-6 MB GIF; readable for tutorials in GitHub READMEs.
Input: Movie clip 4 seconds → 320px wide 12 fps
Output: ~500 KB - 1.5 MB; chat-app-friendly.
Frequently asked questions
Why does my GIF look terrible?
GIFs use a 256-colour palette per frame, which struggles with photographic content (gradients, skin tones). The server mode builds a palette for your clip, which helps. Otherwise reduce dimensions, drop the frame rate, or use WebM or MP4 for high-quality animation.
Why are GIFs so large?
GIF lacks modern compression (no inter-frame prediction). 5 seconds of HD video that would be 1 MB as MP4 might be 10 MB as GIF. Keep clips short, dimensions small, FPS modest.
Should I use GIF or WebM/MP4?
GIF: universal autoplay, perfect for README and chat. WebM/MP4: 10x smaller, better quality, but requires player support. GitHub now supports WebM in issues; GIF still safer for compatibility.
How long can the GIF be?
On this device, up to 300 frames (for example, 20 seconds at 15 fps); on our server, up to 15 seconds. Longer GIFs balloon in size and lose viewer attention; most great GIFs are under 10 seconds.
Is the video uploaded?
Only in the "On our server" mode, which sends it over HTTPS to our own processing server; the server deletes the video and the GIF right after processing. The "On this device" mode never uploads anything.
Can I add captions or text overlay?
Not directly — render the GIF first, then overlay text in a separate tool. Or pre-edit the source video with text before conversion.
Pro tips
- Crop to the action area before converting; smaller dimensions = drastically smaller files.
- Aim for 12-15 fps for UI demos; 24 fps for camera footage. Higher only when motion is fast and necessary.
- For README, target under 5 MB; for chat, under 2 MB.
- Loop the action explicitly — a clean loop reads better than an abrupt cut.
- Test in the destination platform — chat apps and GitHub render GIFs differently.
Reviewed by Ahsan Mahmood · Last updated 2026-09-11 · Part of ZTools.
For the full,
formatted version of this page, please enable JavaScript and reload
https://ztools.zaions.com/video-to-gif.