How to make a GIF from a video
GIFs are still the common language of chats, documentation, bug reports and README files. They start playing on their own, loop forever, need no player and no click, and show up in places that refuse video entirely. The catch is size: GIF is a format from the late 1980s with a 256-colour limit and no modern compression, so a naive conversion of a 20-second phone clip easily produces 50 MB.
This guide covers the whole path: getting the right source clip, cutting to the moment, picking settings that keep the file small, and what to do when the result is still too big.
Decide whether you need a GIF
A GIF is the right choice when the destination only accepts images or when autoplay without sound is the point:
- A bug reproduction attached to a ticket or a pull request.
- A short UI demo in a changelog, a wiki page or a README.
- A reaction clip for a chat.
- An animation in an email, where video does not play.
- A slide in a presentation that should loop without controls.
For anything longer than about 10 to 15 seconds, anything where sound matters, or a background loop on your own website, a short muted MP4 is many times smaller and looks better. Use GIF when you have to, not by habit.
Step 1: get a good source clip
Screen recordings
- Windows 11. The Snipping Tool records the screen to an MP4. Select only the region you need instead of the whole monitor; a smaller region means a smaller GIF.
- macOS. Press Cmd+Shift+5 and choose Record Selected Portion. The result is a MOV file, which the converter accepts directly.
- iPhone and Android. Screen recording is in the control centre or quick settings. Recordings land in Photos or the gallery as ordinary videos.
Before recording, enlarge the text you want to show, close unrelated notifications and hide the cursor if it is not part of the demonstration. A moving cursor changes pixels in every frame and adds weight.
Camera footage
Hold the phone still or rest it on something. Unchanging areas of the frame cost almost nothing in a GIF, while handheld shake makes every pixel change in every frame. A plain background and steady light help the 256-colour palette.
Step 2: cut to the moment
The converter's duration limit always counts from the very start of the video. If the moment you want is in the middle, cut it out first with Trim video: play the clip, set the start and end sliders (0.1-second steps), and download the short MP4.
Shorter is the single biggest saving. A reaction loop rarely needs more than 3 to 5 seconds; a UI demo usually fits in 5 to 10. If a demo is inherently slow, such as a progress bar, speeding the clip up with Video speed before converting halves the duration without losing the point.
Step 3: convert
- Open Video to GIF and drop the clip. MP4, MOV (including iPhone recordings) and WebM up to 500 MB are accepted.
- Choose the frame rate: 5, 10, 15 or 20 fps. The default of 10 suits most clips.
- Choose the width: 320, 480, 640 or 800 px. Height follows automatically, so the proportions stay the same.
- Set the maximum duration: 5, 10, 15, 30 or 60 seconds, counted from the start of the clip.
- Click Convert and download the GIF. Open it once to check the loop before sending.
The conversion runs in your browser with FFmpeg compiled to WebAssembly, so screen recordings of internal dashboards or customer data are not uploaded anywhere. It works in two passes: first it builds a 256-colour palette from the actual colours in your clip, then it maps every frame onto that palette with dithering. That is why the result looks much better than a GIF made with a generic web palette. The audio track is dropped, and the GIF loops forever.
Choosing the settings
GIF size grows roughly with frames multiplied by pixels, so the three settings work together.
Frame rate
- 5 fps. Choppy, flip-book feel. Fine for slideshows and step-by-step UI clicks.
- 10 fps. Smooth enough for screen recordings, talking heads and most reactions.
- 15 to 20 fps. Only for fast motion such as sport or gameplay. Expect the file to be 1.5 to 2 times larger than at 10 fps.
Width
- 320 px. Chat reactions and mobile.
- 480 px. Blog posts and general documentation.
- 640 to 800 px. Screen recordings where small text must stay readable.
Do not pick a width larger than the source video; upscaling adds size without adding detail.
Typical results
A 10-second clip at 480 px and 10 fps usually lands in the low single-digit megabytes for simple footage such as a screen recording with flat colours. Noisy camera footage with movement can be several times that. If you need the result under a specific limit, aim low on the first try and step up only if quality is not acceptable.
Platform notes
- Chats. Many chat apps convert uploaded GIFs into their own looping video format, so the file you see later is not your original. Upload limits still apply to what you send.
- Code hosting and issue trackers. GIFs embedded in issues and READMEs autoplay inline, which is why they are popular for bug reports. Image upload limits apply, so keep demos short.
- Email. Some email programs show only the first frame of an animated GIF. Make sure the first frame makes sense on its own.
- Presentations. Office apps play GIFs on slides. For long or large animations, inserting the MP4 instead keeps the file manageable.
When the GIF is still too big
Do not reconvert at a tiny width first. Run the existing GIF through Compress GIF: its three levels reduce the frame rate, the dimensions and the number of colours together, and the heavy level drops to 10 fps, halves the width and height, and cuts the palette to 64 colours. Screen recordings with flat colours tolerate it well; photos and gradients show banding sooner.
If you still have the video, going back to it with a shorter duration or 320 px usually beats compressing harder. For more on limits and the trade-offs, see the guide on making GIFs small enough for chat.
Troubleshooting
- The conversion fails or the tab crashes. Long clips at 800 px and 20 fps can exhaust memory on phones and older laptops. Trim the clip and lower the width.
- The GIF starts at the wrong moment. The duration limit counts from 0:00. Trim first.
- Banding or speckled noise in gradients. That is the 256-colour limit plus dithering. Crop out skies and soft backgrounds, or choose a short MP4 instead.
- Text is unreadable. Use 640 or 800 px for screen recordings, and record a smaller region at larger zoom.
- The colours look slightly off. Every GIF frame uses a palette of at most 256 colours. Skin tones and brand colours may shift a little; that is the format, not the settings.
Checklist
- Confirm the destination needs a GIF rather than a muted MP4.
- Record only the region you need, with steady framing and no stray cursor.
- Trim to the 3 to 10 seconds that matter.
- Convert at 10 fps and 480 px, then adjust.
- Check the size against the destination's limit; compress or shorten if needed.
- Make sure the first frame works on its own for email.
Published 2026-10-08