Home › File & PDF Tools › Compress GIF
Compress GIF
Use this free tool to compress a GIF by rebuilding it at a smaller size — 75%, 50% or 25% of its width and height — right in your browser. The animation keeps every frame and its timing; it simply carries fewer pixels, so the file that comes out is a fraction of the one that went in. Nothing is uploaded: decoding and encoding both happen on your device.
Halving the width and height removes three quarters of the pixels, which is where the big savings live.
Your file is processed entirely on your device and is never uploaded. The GIF decoder library (gifuct-js) is loaded from the jsDelivr CDN (cdn.jsdelivr.net) and the encoder is stored on this website; only the decoder library travels over the internet, never your animation.
How to use this tool
- Click the drop box (or drag your GIF onto it). The box confirms your file name and size.
- Choose the output size — 75% is a good first try; 50% when the file must be much smaller.
- Press Compress GIF and wait while the frames are rebuilt — large GIFs take a little while.
- Check the preview and the new file size, then the compressed GIF downloads automatically.
How it works
An animated GIF is a stack of still frames, each stored as a full grid of pixels, played one after another with a small delay between them. That is why GIF files are heavy, and why the honest way to compress one is to make the grid smaller. This tool decodes your file in the browser with the gifuct-js library, rebuilds each frame at full size first — correctly stacking the partial frames and transparency that many GIFs use — then scales every frame down to your chosen percentage and re-encodes the stack with the GIF encoder stored on this website:
Because every frame keeps its original delay, the rebuilt animation runs at the same speed and loops the same way. Two honest notes. First, the saving is not exactly proportional to the pixels: busy, colourful animations compress less politely than simple ones, so treat the percentages as a guide, not a promise — the tool always shows you the real before-and-after sizes. Second, the work is done by your own device, so a GIF with hundreds of frames or tens of megabytes can be slow, and may be more than a phone can hold in memory; the FAQ below has practical advice for those files. What never happens is an upload: your animation is decoded, shrunk and rebuilt locally, which is how a private reaction GIF from a family video stays private.
| Setting | Dimensions | Pixels per frame | Best for |
|---|---|---|---|
| 100% | Unchanged | 100% | A gentle re-encode when size hardly matters |
| 75% | ¾ width and height | About 56% | Chat and social sharing — barely visible change |
| 50% | ½ width and height | 25% | Email and upload limits — the big saving |
| 25% | ¼ width and height | About 6% | Thumbnails and previews on slow connections |
The usual reasons for compressing are limits and courtesy: WhatsApp, Discord, email and most website upload forms all cap GIF sizes, and a 9 MB animation is an unfriendly thing to send someone on a village mobile connection. A 50% rebuild keeps the joke, the goal or the birthday candle perfectly watchable at a quarter of the weight — which is, most days, exactly the trade worth making.
Worked example
A student has a birthday GIF made from a phone video: 800 × 600 pixels, 48 frames, and heavy enough that her class WhatsApp group keeps failing to send it.
Step 1: She drops the GIF into the box — the tool confirms its name and size.
Step 2: She chooses 50%, so the rebuild will be 400 × 300.
Step 3: She presses Compress GIF and waits a few seconds while the 48 frames are decoded and re-encoded.
Step 4: The preview plays at the same speed, and the result line shows the original size beside the new, much smaller one.
On the group's phones, 400 pixels wide is exactly how the GIF would have been displayed anyway — so nothing anyone can see has been lost, and the file now sends first try.
FAQ
How do I compress a GIF?
Drop your GIF into the box, choose how much to shrink it — keep 100% of the size for the gentlest squeeze, or 75%, 50% or 25% of the width and height for a much smaller file — and press Compress GIF. The animation is rebuilt frame by frame at the new size and downloaded. A preview shows the new file size next to the original.
Is my GIF uploaded to a server?
No. Your GIF is decoded and rebuilt entirely in your browser, using the gifuct-js decoder loaded from the jsDelivr CDN and the GIF encoder stored on this website. Only the decoder library travels over the internet — your animation itself never leaves your device.
Why does shrinking the dimensions compress a GIF so well?
A GIF stores every frame as a grid of pixels, so the file size grows with the number of pixels. Halving the width and height leaves only a quarter as many pixels per frame — 50% size usually means roughly 70% or more off the file, though the exact saving depends on the colours and movement in your animation. The frame count and timing stay the same, so the animation still plays at the same speed.
Will the compressed GIF look worse?
At 75% the difference is hard to see on a phone or in a chat window, which is where most GIFs are watched. At 50% fine detail softens, and at 25% the result is a small, light preview — fine for a thumbnail or a slow connection, rough on a big screen. Text inside a GIF suffers first, so keep reaction GIFs with captions at 75% or above.
Why is my GIF taking a long time, or failing?
Everything runs on your own device, so a very long or very large GIF — hundreds of frames, or tens of megabytes — can take a while and may strain a phone's memory. Trim the GIF or split it first if you can, use a computer rather than a phone, and avoid the 100% setting for huge files, since re-encoding at full size is the slowest option of all.
Are the frame delays preserved?
Yes, approximately. Each frame keeps the delay it had in the original, so the animation plays at the same speed and loops the same way. Extremely short delays (under about 20 milliseconds) may be rounded by some browsers and players, which is a limit of the GIF format in general, not of this tool.