What is GIF compression?
GIF compression reduces an animated GIF's file size by lowering how many frames it plays per second, shrinking its dimensions, and limiting how many colors it uses. GIFs already use a fixed color palette per frame, so trimming that palette and dropping redundant frames is where most of the size savings come from - not a quality slider like JPEG or video.
Everything runs directly in your browser using FFmpeg compiled to WebAssembly. Your files are never uploaded - the whole process happens in memory on your device.
Frame rate reduction
Many GIFs, especially screen recordings and camera exports, are captured at 24-30 frames per second even though the motion doesn't need it. Dropping to 10-15 fps is usually invisible for typical animations and cuts the number of frames - and therefore the file size - substantially. Reaction GIFs and simple loops can often go as low as 8 fps with no visible stutter.
Resizing
Halving the width of a GIF cuts roughly three-quarters of its pixel data, which is the single biggest lever for shrinking a large file. Use a percentage preset for a quick resize, or enter a custom width in pixels - height is scaled automatically to keep the original aspect ratio.
Color count and dithering
GIF frames are limited to a palette of at most 256 colors. This tool generates an optimized palette for your chosen color count using FFmpeg's palette-generation filter, which picks the colors that best represent the actual image instead of a generic web palette. Dropping to 128 or 64 colors is often indistinguishable from the original for illustrations, UI recordings, and most reaction GIFs. Photographic content with smooth gradients benefits from staying closer to 256 colors and Bayer dithering to avoid visible banding.
Loop settings
Most GIFs are set to loop forever, which is the default here too. Switch to Play once for a GIF that should show its animation a single time and then stop on the last frame, or set a custom play count if you want it to repeat a specific number of times before stopping.
Comparing before and after
Once a file finishes compressing, click Preview on its row to see the original and compressed GIF playing side by side. Both preview animations loop automatically so you can judge motion smoothness and color quality before downloading.
How to compress a GIF
- Drop one or more GIF files onto the drop zone, or click Browse files.
- Choose a frame rate, resize percentage or custom width, color count, dithering, and loop behavior.
- Check the estimated output size, which updates as you adjust settings.
- Click Compress. Files are processed one at a time and each row shows progress while it runs.
- Preview a result side by side, then download it from its row or grab everything as a ZIP.
Common uses
Chat and messaging
Discord, Slack, and messaging apps cap upload sizes and often re-compress large GIFs poorly. Dropping frame rate and color count keeps your GIF crisp while staying well under typical limits.
Websites and blog posts
Large uncompressed GIFs are one of the most common causes of slow page loads. Resize to the display width you actually need and drop to a lower frame rate for a fast-loading embed that still animates smoothly.
Screen recordings
Screen capture tools frequently export at high frame rates and full color depth. A UI walkthrough or bug report GIF rarely needs more than 10-15 fps and 128 colors to stay perfectly readable.
Email and documentation
Attachment limits and documentation platforms often restrict image size. Shrinking dimensions and colors gets a GIF under the limit without switching to a static screenshot.
Frequently asked questions
Will compressing my GIF reduce its quality?
Some quality loss is inherent to lowering frame rate, resolution, or color count. The presets let you choose how aggressive that tradeoff is - start with 128 colors and 15 fps and preview the result before committing to a smaller setting.
Why does it download 30 MB on first use?
The FFmpeg encoder that runs in your browser is about 30 MB. It downloads once and is cached, so future visits load instantly.
How accurate is the estimated output size?
The estimate is based on your original file size scaled by frame rate, resize, and color settings. Actual results vary with the GIF's content - a simple flat-color animation compresses much further than a busy, high-motion one.
Can I compress multiple GIFs at once?
Yes. Drop as many files as you want and they're processed one at a time so memory from the previous file is freed before the next one starts. Download results individually or grab them all as a ZIP.
What does the loop setting actually change?
It controls the GIF's internal loop count, which most browsers and apps respect. "Loop forever" repeats indefinitely, "Play once" stops after the first pass, and a custom count repeats that many times before stopping.
Does resizing keep the aspect ratio?
Yes. Both the percentage presets and the custom width option scale height automatically to match the original aspect ratio.