Discord has two completely different GIF size limits, and picking the wrong one is why most uploads get rejected. A normal message attachment can be 10 MB on a free account. A custom emoji or sticker can only be 256 KB - roughly forty times smaller - no matter which tier you are on. This tool handles both.

Discord GIF Size Limits
| What you are uploading | Free | Nitro Basic | Nitro |
|---|---|---|---|
| Message attachment | 10 MB | 50 MB | 500 MB |
| Custom emoji | 256 KB, max 128x128 px - same on every tier | ||
| Custom sticker | 512 KB, max 320x320 px | ||
| Server banner / icon | 10 MB, animated requires server boosts | ||
| Animated avatar | Nitro only, 10 MB | ||
If your target is the 256 KB emoji limit, the settings below are much more aggressive than you would use for an ordinary attachment - and that is fine, because an emoji is displayed at 32 px in chat.
Steps To Compress a GIF For Discord
- Select and upload the GIF
- Open the advanced options
- Scale and reduce colours to hit the limit
- Compare and download
1. Select and Upload the GIF
Choose a GIF from your device, or drag and drop it into the blue box above. The tool immediately reads the file and shows you what you are working with - width, height, frame count and current size:

That starting size is the number that matters. Divide it by your target to see how much reduction you need: a 4 MB GIF headed for a 256 KB emoji needs to shrink roughly sixteen-fold, which tells you straight away that lossy compression alone will not be enough and you will need to scale it down too.
2. Open the Advanced Options
Tick the advanced options box to reveal the five settings individually rather than using a preset:

- Lossy compression
- Colour reduction
- Scale GIF
- Skip frames
- Add delay to skipped frames
Each one is explained in detail on the GIF optimizer page if you want to know what it is doing under the hood.
3. Scale and Reduce Colours to Hit the Limit
Which settings you need depends entirely on which Discord limit you are targeting:
| Target | Scale to | Lossy | Colours | Frames |
|---|---|---|---|---|
| 10 MB attachment (free) | 100% | 20-40 | 256 | Duplicates only |
| 512 KB sticker | 320x320 | 80-120 | 128 | Duplicates only |
| 256 KB custom emoji | 128x128 | 120-160 | 96-128 | Drop every 3rd |
Scale first. File size falls with pixel area, so taking a 512x512 GIF down to 128x128 removes about 94% of the data in one step - and since Discord displays emoji at 128x128 anyway, you lose nothing visible. Only then raise lossy compression, and use frame removal last.
Keep increasing lossy compression and scale reduction until the output panel shows a size under your limit. For the full breakdown of settings per target size, see the compress GIF to 256kb guide.
4. Compare and Download
The tool takes a few seconds to process, then shows the original and compressed GIF side by side so you can check the result before committing:

Without Nitro you cannot raise the 10 MB attachment limit, so compressing is the only route for large GIFs - and for custom emoji, even Nitro will not help you past 256 KB.
Video Tutorial: Compress a GIF or Emoji for Discord
The Pi7 team walk through the whole process step by step in this video:
Frequently Asked Questions
What is the GIF size limit on Discord?
On a free account the message attachment limit is 10 MB. Nitro Basic raises it to 50 MB and full Nitro to 500 MB. Custom emoji and stickers are far stricter at 256 KB regardless of your tier, and emoji are also capped at 128x128 pixels.
How do I compress a GIF to 256 KB for a Discord emoji?
Scale the GIF to roughly 128x128 first, since that is the emoji display size anyway, then raise lossy compression to around 120-160 and reduce the palette to 96-128 colours. If it is still over, remove every 3rd frame. Emoji are viewed tiny, so aggressive settings that would look bad full-screen are fine here.
Why does Discord reject my GIF even though it is under the limit?
Usually because you are uploading a custom emoji or sticker rather than a message attachment - those use the 256 KB limit, not the 10 MB one. Discord also rejects emoji larger than 128x128 pixels.
Does compressing a GIF for Discord remove the animation?
No. The GIF stays animated. Discord plays animated emoji only for Nitro subscribers, but the animation is preserved in the file either way.
Do I need Nitro to send GIFs on Discord?
No. A free account can send GIFs up to 10 MB as normal attachments. Nitro raises the limit and allows animated custom emoji to play, but it is not required for ordinary GIF sharing.
Is this GIF compressor free?
Yes. No sign-up, no watermark and no limit on how many GIFs you compress. Every GIF is processed inside your browser and never uploaded.