Image Tools

GIF Compressor

Make animated GIFs small enough for chats, e-mails and websites. The compressor combines the three things that matter most: fewer pixels, fewer frames per second and fewer colours. It builds one optimised palette for the whole animation, stores only the parts of each frame that change, and shows the original and the result side by side so you can judge the trade-off.

  • Files stay on your device
  • No sign-up
  • Free to use

How to use GIF Compressor

  1. Drop a GIF onto the page.
  2. Choose size, frame rate, colours and dithering.
  3. Click “Compress GIF”.
  4. Compare and download the smaller GIF.

GIF Compressor features

Smaller dimensions

75%, 50% or 33% of the size.

Fewer frames

Cap at 15, 10 or 6 fps.

Optimised palette

One palette from all frames.

Changed areas only

Static parts compress away.

Side-by-side

Original and result compared.

Private

Processed in your browser; nothing is uploaded.

When to use GIF Compressor

  • Meeting upload limits on forums, Slack or Discord.
  • Lighter GIFs in e-mails and newsletters.
  • Faster pages with animated demos.
  • Sharing reaction GIFs on mobile data.

GIF Compressor FAQ

What reduces size the most?

Dimensions: halving width and height leaves a quarter of the pixels. Lowering the frame rate is next; fewer colours help less but are visible on gradients.

Will the animation become shorter?

No. Dropping frames keeps the timing; the remaining frames are shown longer.

How is this different from the GIF Optimizer?

The optimizer keeps size and frames and only encodes better. The compressor also reduces dimensions, frame rate and colours for much smaller files.

Is the loop setting kept?

Yes, the GIF loops the same way as the original.

Why does the first run take longer?

Re-encoding uses FFmpeg compiled to WebAssembly (about 32 MB), which is downloaded once and then cached.

Is my file uploaded?

No. Everything runs in your browser.

Why GIFs are large and how to shrink them

GIF is a format from 1987. Each frame stores up to 256 colours compressed with LZW, a lossless method that works well on flat graphics but poorly on video-like content. An animation made from a video clip can easily reach many megabytes, which is why platforms impose size limits.

The compressor re-encodes the GIF with FFmpeg in a single pass. Optional scaling with a Lanczos filter reduces the pixel count. An optional frame-rate cap removes frames while keeping the overall timing. Then the palette is generated from the whole animation, with emphasis on the parts that move, so the available colours are spent where the eye looks.

Each frame is then mapped to that palette with the dithering you choose, and in rectangle diff mode only the area that changed since the previous frame is stored. In screen recordings and many animations, large parts of the picture are static, so this removes a lot of redundant data.

Ordered dithering produces regular patterns that compress well; error diffusion looks smoother but costs more bytes; no dithering is smallest for flat graphics. The side-by-side view helps you pick.

All processing happens on your device.

Other useful tools