Reduce GIF file size
Bring a GIF under an upload limit by shrinking it, trimming colours and dropping frames, on your own device.
- Nothing is uploaded
- Works offline after first visit
- Open source
- No watermark · limit is your device’s memory; phones hold less
Make a GIF smaller in your browser: halve its size and drop frames to fit Discord, Slack or email limits. It is free, needs no account and adds no watermark, and your files are not uploaded: everything runs in your browser on your device. The size limit is your device’s memory, and phones hold less; give the page a short while after one visit to save itself for offline use, and then it works offline.
Done
Open the network tab. Your files never appear in it.
Add files and run the tool to see every request this tab makes.
Your files are processed on this device and never sent to a server. Reload the page to clear everything from memory.
A GIF that is too big to post is a common frustration: Discord and Slack reject large uploads, email bounces them, and web pages load them slowly. This page starts with settings that cut most GIFs to a fraction of their size: strong compression and 75% of the original width and height.
If the result is still too large, lower the size to 50% or drop every second frame and compress again. Each result shows its new size, so you can see when it fits. Dropped frames lend their time to the frame before, so the GIF still plays for as long as it did.
The GIF is compressed in your browser tab, so it is never uploaded and there is no watermark or limit.
A rough guide to what each setting buys you: a GIF’s size tracks its pixels times its frames. 75% of the width and height is about 56% of the pixels, 50% is a quarter, and 33% is about a ninth. Drop every second frame and there are half as many frames to store. So 50% with every second frame dropped often lands somewhere near an eighth of the original, though busy footage shrinks less than flat animation.
Work towards a limit in steps. Try the preset first. If it is still over, go to 50% before you touch the frames, because a smaller GIF usually looks better than a jerky one. For a Discord emoji, which has to fit in 256 KB and is shown very small, 33% with every second frame dropped is a sensible starting point.
How it works
- Drop the GIF.
- Keep the settings, or choose a smaller size or fewer frames.
- Press Compress and check the new size.
In your browser, not on a server
gifuct-js (MIT) reads the GIF byte by byte in your tab and every frame is composited the way browsers play it, honouring each frame’s delay and disposal rule. The frames are then written back with gifenc’s (MIT) colour quantizer and LZW coder: each frame after the first stores only the rectangle that changed, with unchanged pixels left transparent, and the stronger levels use fewer colours and ignore changes too small to see. The new GIF is assembled in memory.
Compared with upload-based tools: Online GIF compressors upload the file to optimise it on their server, cap free files at around 50 MB, keep uploads for a while, and some add a watermark. Screen recordings and reaction GIFs of friends are often personal. Here the GIF never leaves your device, and you can compress a whole folder at once.
Verify it yourself. Give the page a short while after one visit to save itself for offline use, then turn off Wi-Fi or switch to airplane mode and run the tool again. Or open your browser's developer tools (F12, or Cmd-Option-I on a Mac), pick the Network tab, and watch it while you convert. The panel above does the same count for you.
Questions
What are the common GIF size limits?
Discord: 10 MB per upload on a free account, 256 KB for a custom emoji and 512 KB for a sticker. Slack: 1 GB, but GIFs over a few MB do not autoplay for everyone. Twitter/X: 15 MB. Most email providers: 25 MB for the whole message.
Can I compress the result again?
Yes, drop the smaller GIF back in, but pick a lower Size or fewer Frames rather than running the same settings twice. Repeating Strong on its own gains little, and each pass reduces the colours again, so gradients can start to band. Starting from the original with stronger settings gives a cleaner result.
Why is my GIF still too big for Discord?
Long or detailed GIFs, like a clip of live video, carry a lot of change in every frame, and GIF stores that poorly however it is compressed. Cut it shorter before making the GIF, or send an MP4 instead: Discord plays videos inline, and GIF to MP4 turns this file into one a fraction of the size.
Is the file uploaded anywhere?
No. There is no server in this process. The page is a static file and the work is done by code running inside your browser tab. Give the page a short while after one visit to save itself for offline use; then you can turn off Wi-Fi and it still works.
More image tools
Compress GIF
Make an animated GIF small enough for Discord, Slack, email or a web page. It is compressed on this device and never uploaded.
Add border to image
A clean frame and rounded corners for photos, screenshots and product shots, made on this device.
Black and white photo
Grayscale, high contrast, two-tone or sepia, previewed live and made on this device.
HEIC to JPG
Turn iPhone and iPad photos into JPG or PNG files that open anywhere. Your photos never leave this device.
Other conversions
- PNG to GIF
- JPG to GIF
- JPG to TIFF
- PNG to TIFF
- ICO to PNG
- HEIC to PNG
- HEIF to JPG
- PNG to JPG
- JPG to PNG
- WebP to PNG
- GIF compressor
- Discord emoji resizer
- Discord sticker resizer
- Resize for Instagram
- Pixelate image
- Blur face in photo
- Flip image
- Extract text from image
- Picture to text
- Screenshot to text
- JPG to text
- PNG to text
Guides
- How to reduce GIF sizeAn animated GIF is a stack of pictures, and the file grows with every frame. Here is what makes it smaller and what that costs you.