Skip to content
GIF Toolkit

Compress a GIF to 128KB

The size limit for Slack custom emoji — and the tightest budget most people meet.

Upload a GIF

Drop a .gif file to compress it under 128KB

Getting an animated emoji under 128KB

128KB is a small budget for an animation. Slack has capped custom emoji at 128KB for years, and because emoji display at roughly 22 pixels on screen, almost everything that makes a GIF large is wasted detail nobody will ever see.

That makes the fix unusually straightforward: shrink the dimensions hard. A 128×128 GIF carries about a sixteenth of the pixel data of a 512×512 one, and at emoji display size the difference is invisible. Cutting the frame rate to 8–10fps and the palette to 32–64 colors usually closes whatever gap is left.

The one thing that will defeat all of it is length. A four-second clip has four times the frames of a one-second clip and costs four times as much. If this tool runs out of headroom, trim the clip to the single moment that carries the joke and try again.

How to compress a GIF to 128KB

  1. Upload your GIFDrop a .gif file onto the upload area, or click to browse for one on your device.
  2. Compress to 128KBPress the compress button. The tool re-encodes the GIF and checks the result against the 128KB budget.
  3. Let it retry if neededIf the result is still too large, the tool automatically tries again with stronger settings until the file fits.
  4. Download the resultPreview the compressed GIF, check the final size, and download it to your device.

Making a Slack emoji?

Slack emoji uploads need 128×128 dimensions as well as the 128KB size cap. The dedicated tool sets the canvas and compresses in a single pass, which avoids the quality loss of re-encoding twice.

Open the Slack Emoji GIF Maker

Other target sizes

Frequently asked questions

What is the Slack emoji size limit?
Slack custom emoji must be 128KB or smaller, and Slack recommends square images of 128×128 pixels. The limit applies to animated GIFs the same as static images. Slack can change this, so check their own help documentation if an upload is rejected at a size you expect to work.
Why does my GIF still look bad after compressing to 128KB?
At this size something has to give, and the usual culprit is clip length rather than the compression settings. Every frame costs bytes, so a long clip forces heavier color and dimension reduction to fit. Trimming to one or two seconds frees up budget for better quality in the frames you keep.
Should I resize to 128×128 first?
It often helps. Emoji render small regardless, so starting from 128×128 means the compression can spend its budget on color fidelity and frame rate instead of dimensions. The GIF Resizer tool with a 128×128 preset does this in one step.
Does this upload my GIF anywhere?
No. The re-encoding runs in your browser using WebAssembly, so the file never leaves your device. That also means processing speed depends on your own hardware rather than a server queue.