What the GIF compressor does
Animated GIFs are large for what they show — a five-second clip can be 10 MB — because the format dates from 1987 and stores every frame as an indexed-colour image with weak compression. This tool shrinks a GIF by three levers: scaling the frames down (100%, 75%, 50% or 25%), reducing the colour palette (256, 128 or 64 colours), and at the lowest setting dropping alternate frames. It decodes the GIF with gifuct-js, processes the frames, and re-encodes with gif.js — all in your browser. The animation, loop count and timing are preserved.
Where GIF size comes from
| Factor | Effect on size | Lever in this tool |
|---|---|---|
| Pixel dimensions | Proportional to width × height | Scale 75% ≈ 56% of size; 50% ≈ 25% |
| Frame count | Proportional | Low quality skips every other frame |
| Colours per frame | Fewer colours = better LZW compression | 256 → 128 → 64 |
| Motion between frames | Static areas compress well; full-frame motion does not | Not adjustable — inherent to the clip |
| Dithering | Adds noise that compresses poorly | Palette reduction without dithering helps |
Choosing settings
- Start with scale. Most GIFs are displayed smaller than their pixel size. A 800 px GIF shown in a 400 px chat bubble can be scaled to 50% with no visible loss and a 75% size reduction.
- Then colours. Screen recordings, memes with flat colours and cartoons look identical at 128 or even 64 colours. Photographic clips and gradients show banding below 128.
- Frame skipping last. Halving the frame rate makes motion choppier; acceptable for reaction GIFs and slow clips, distracting for fast motion.
- Check the estimated size shown after each change and stop when it fits your target.
Typical results
| Source GIF | Setting | Result |
|---|---|---|
| 8 MB, 600 × 400, 120 frames, 256 colours | 75% scale, 128 colours | ≈ 3 MB |
| Same | 50% scale, 128 colours | ≈ 1.5 MB |
| Same | 50% scale, 64 colours, skip frames | ≈ 600 KB |
Results vary with content; the estimate in the tool is based on the actual re-encoded output.
Common uses
- Meeting upload limits — Slack (many workspaces cap GIFs), forums, email signatures, and messaging apps that reject files over a few MB.
- Speeding up web pages that use GIFs for product demos or tutorials.
- Reducing a screen recording exported as GIF for a bug report or documentation.
- Shrinking sticker and reaction GIFs for chat apps.
When a video would be better
GIF is a poor video format: no audio, 256 colours, and files ten to fifty times larger than an equivalent MP4 or WebM. If the destination accepts video — web pages (<video autoplay muted loop> behaves like a GIF), most social platforms, modern chat apps — convert to MP4 instead and get better quality at a fraction of the size. Use GIF where it is required: email, forums, Markdown READMEs on some platforms, and places that will not autoplay video.