
A GIF that looks great as a full-size message can get silently rejected the moment you try to upload it as a custom emoji or sticker in Slack, Discord, or Microsoft Teams. Each platform enforces its own hard file-size ceiling for that specific upload slot, separate from the much more generous limit it allows for a regular GIF pasted into a chat message. Here's what each limit actually is, and how to build a GIF that clears it on the first try.
Need a chat-ready GIF right now?
Open GIF Maker — Free, No SignupWhy Emoji and Sticker Slots Have Their Own Limits
A GIF sent as a normal chat message gets streamed and cached like any other attachment, so the platform can afford to be generous about its size. A custom emoji or sticker is different: it gets downloaded and cached locally on every single member's device, every time it's used in a reaction or a message, often dozens of times a day in an active workspace. That multiplies bandwidth and storage cost across the whole team, which is why these upload slots carry a much stricter ceiling than a regular attachment does.
The Actual Limits, Platform by Platform
Discord caps a custom server emoji at 256KB for free servers, and a sticker at 512KB with a maximum of 5 seconds of animation. Slack caps a custom emoji at 128KB, with a recommended display size around 128x128 pixels even though it will accept slightly larger dimensions. Microsoft Teams doesn't support fully custom animated emoji the way Slack and Discord do, but animated GIFs pasted into a message there are still capped by Teams' general attachment limits, which are far more forgiving. In every case, the emoji or sticker slot specifically is the tight constraint, not the chat message itself.
How to Get a GIF Under 128KB or 256KB Without It Looking Broken
- Shrink the pixel dimensions first:An emoji is viewed tiny, usually under 24px on screen, so there's no visual reason to keep it at 400px wide. Resize down to 128x128 or smaller before anything else; this single step often cuts file size by 80% or more on its own.
- Trim to the shortest loop that still reads clearly: A 1 to 2 second loop of 8 to 15 frames is usually enough for an emoji reaction. Every additional frame adds real file weight for very little added expressiveness at that size.
- Drop the frame rate: 10 to 12 FPS reads as perfectly smooth motion at emoji size, where 24+ FPS would on a full-size video. Lower FPS means fewer stored frames for the same loop length.
- Build or resize it in the GIF Maker: Go to ezyimg.com/gif-maker , upload your source clip or images, set the small width and low FPS, and export.
- Check the exported file size before uploading:If it's still over the platform's limit, drop the width further (96px or even 64px still reads fine as an emoji) rather than cutting more frames, since dimension has a bigger effect on size than frame count at this scale.
Build your emoji-ready GIF now
Open GIF Maker — Free, No SignupSlack Emoji vs Discord Sticker: They're Not the Same Format
It's tempting to build one GIF and reuse it everywhere, but Slack emoji and Discord stickers are judged differently. Slack's 128KB ceiling is tight enough that most stickers built for Discord's more generous 512KB sticker slot will need a second, more aggressively compressed pass before they'll upload to Slack. Build for the stricter platform first (Slack), and that same file will almost always clear Discord's limits with room to spare, rather than building loose and hoping it fits everywhere.
Common Reasons an Upload Gets Rejected
The single most common cause is exporting at full video resolution and only trimming the length, without ever resizing down the pixel dimensions, which leaves a huge amount of wasted detail that will never be visible at emoji size. The second most common cause is too many frames from a high frame-rate source clip; a screen recording captured at 30 or 60 FPS needs its frame rate deliberately reduced when converting, not just carried straight through. If a GIF still won't fit after resizing and trimming, cutting the color palette down slightly (fewer distinct colors per frame) is the next lever, though it's rarely needed once dimensions and frame count are already small.
Frequently Asked Questions
What's the actual file size limit for a Slack custom emoji?
128KB. Slack recommends a display size around 128x128 pixels, and animated GIF emoji are allowed as long as the file stays under that 128KB ceiling.
Can a Discord sticker be longer than a Discord emoji?
Yes, sticker uploads get a larger 512KB budget and up to 5 seconds of animation, compared to a custom emoji's 256KB limit, since stickers are meant to be a bit more detailed.
Why does my GIF still look huge in KB even after trimming it shorter?
Trimming length helps, but pixel dimensions usually matter more. A short clip at full video width still stores far more data per frame than a small, resized one, so shrink the width first before relying on trimming alone.
Does EzyIMG's GIF Maker add a watermark to emoji-sized GIFs?
No. Every export, at any size, is free with no watermark and no account required, and it all runs directly in your browser.
Related GIF tools
- GIF Maker: Build and resize a GIF for emoji or sticker upload
- GIF Optimizer: Shrink an existing GIF further if it's still over the limit
- Video to GIF: Turn a short clip into a small looping GIF