GIF Compressor

Make a GIF smaller without leaving your browser. Pick Light, Medium or Strong, or ask for a target such as 256 KB and let the tool try until it fits. Nothing is uploaded and there is no sign-up.

Free · no sign-up · runs in your browser

Drop a GIF hereor click to choose a file

GIF only · up to 25 MB · up to 300 frames · nothing is uploaded

Compress by
Level

128 colours, every frame kept. Usually a clear saving on photo-like GIFs.

Before

Drop a GIF here

After

Your new GIF appears here.

How to use it

  1. Drop your GIF

    Drop a GIF onto the box or click to choose one. It can be up to 25 MB and 300 frames. The tool shows its dimensions, frame count, length and file size.

  2. Pick Level or Target size

    Level applies one fixed setting: Light, Medium or Strong. Target size takes 256 KB, 512 KB, 1 MB, 2 MB or your own number of KB and keeps trying until the file fits.

  3. Set a max width if you want

    The picture keeps its original width unless you choose 480 or 320 pixels. A narrower GIF is the biggest single saving, but it also changes how the picture looks.

  4. Compress and download

    Press Compress GIF. The result appears next to the original with before and after sizes and the exact settings used. If it isn't smaller, the tool says so and offers your original.

Examples made with this tool

These five GIFs were made by running GIFs we already had through this tool's own compression code. Each one lists its settings and the size before and after.

  • Original GIF before the tool: A brown cartoon bear holding a red heart with the words Thinking of you, compressed with the Light levelOriginal
    A brown cartoon bear holding a red heart with the words Thinking of you, compressed with the Light levelCompressed
    Light level on a sticker-style GIF with a plain background. This one has large flat areas, so even the gentlest setting removes about a third of the file.Settings usedLight level: 255 colours, change threshold 6, all frames, 320 px wide.498 KB → 340 KB · 32% smaller · 16 frames · 320 × 320 px
  • Original GIF before the tool: A sleepy crescent moon in a night cap with the meme text Me at 2 AM, Why am I awake, compressed with the Medium levelOriginal
    A sleepy crescent moon in a night cap with the meme text Me at 2 AM, Why am I awake, compressed with the Medium levelCompressed
    Medium level on a meme GIF with text and a starry sky. Halving the palette to 128 colours still reads cleanly at this size.Settings usedMedium level: 128 colours, change threshold 10, all frames, 320 px wide.719 KB → 423 KB · 41% smaller · 16 frames · 320 × 320 px
  • Original GIF before the tool: A product loop of a candle with a flickering flame, compressed with the Strong levelOriginal
    A product loop of a candle with a flickering flame, compressed with the Strong levelCompressed
    Strong level on a 38-frame loop. Dropping every other frame is what makes it so small, and the merged delays keep the loop the same length.Settings usedStrong level: 64 colours, change threshold 16, every other frame kept, 320 px wide.998 KB → 93 KB · 91% smaller · 19 frames · 320 × 320 px
  • Original GIF before the tool: A reaction GIF with a shocked face and meme text, compressed to fit under 256 KBOriginal
    A reaction GIF with a shocked face and meme text, compressed to fit under 256 KBCompressed
    Target 256 KB, the size Discord allows for a custom emoji. The tool needed four tries and ended with a narrower picture than the source.Settings usedTarget 256 KB, reached on try 4 of 6: 64 colours, change threshold 16, all frames, 231 px wide.943 KB → 248 KB · 74% smaller · 16 frames · 231 × 231 px
  • Original GIF before the tool: Gold and pink glitter letters spelling Happy Birthday Grandma, compressed to fit under 256 KBOriginal
    Gold and pink glitter letters spelling Happy Birthday Grandma, compressed to fit under 256 KBCompressed
    Target 256 KB on a glitter GIF. Glitter is noisy, which is the hard case for GIF, so it took four tries and a smaller width.Settings usedTarget 256 KB, reached on try 4 of 6: 64 colours, change threshold 16, all frames, 210 px wide.847 KB → 251 KB · 70% smaller · 16 frames · 210 × 210 px

How to compress a GIF for Discord

Discord emoji must be 256 KB or smaller. That is the limit that most often sends people looking for a GIF compressor, because an animated emoji made from a short clip is usually much larger. To fit it, open the Target size mode, choose the 256 KB chip and drop your GIF. The tool encodes the GIF, checks the size and, if it is still over, tries a stronger setting. It stops at the first result that fits and shows you exactly which settings it used.

A few habits help before you start. Use a short clip, because fewer frames is the cheapest saving. Crop out empty borders first with the GIF cropper so the pixels you keep are the ones that matter. Emoji are shown small, so a narrow width costs you little. If the tool says it could not get under 256 KB, the note shows the smallest size it reached, and cropping or using fewer frames is the next step. Limits for other uses, such as regular attachments, depend on the app and your account, so check what the app currently allows.

Why GIFs are big and what actually shrinks them

A GIF stores every frame as a picture of its own, and each picture can use at most 256 colours. The file size comes from four things: how many colours the palette holds, how many frames there are, how many pixels each frame has, and how much changes from one frame to the next. Encoders save space on that last one with frame differencing: pixels that stay the same are written as transparent, so a still background costs almost nothing. This tool uses it on every GIF it makes.

Each level pulls a different lever. Light and Medium lower the palette to 255 and 128 colours, and they treat colour changes below a small threshold as no change, which turns shimmer into still pixels. Strong goes to 64 colours and, above 20 frames, keeps every other frame while adding the dropped frame's delay to the one before it, so the GIF still lasts as long as before. Target mode adds the last lever, a narrower width, only after the others have been tried. Width is powerful because the number of pixels falls with the square of the width: 85% of the width is about 72% of the pixels.

Compress without losing quality: what to expect

GIF compression here is lossy in colour, so some change is unavoidable. Light is the closest to the original: you will hardly see a difference, and a GIF that is already tightly packed may not get smaller at all. Medium usually keeps flat artwork and text clean, but smooth gradients, such as skies or skin, can show faint bands. Strong is for when size matters more than finish: expect visible banding and, above 20 frames, a slightly choppier motion.

Two rules of thumb. Flat colours and large still areas compress well; photo-like video with noise, film grain or glitter does not. And change one thing at a time: if Medium is close to what you need, add a max width of 480 rather than jumping straight to Strong. If the result is not smaller than your original, the tool tells you and gives your original back instead of a bigger file. To change the pixel dimensions precisely, use the GIF resizer.

Other things to do with the same GIF

These tools run in your browser the same way, so you can chain them before or after compressing.

When a GIF compressor helps

  • Custom emoji and stickers

    Chat apps cap the size of an emoji upload. Target 256 KB gets a clip under the Discord emoji limit.

  • Email and messages

    Chat apps and email often cap file size. A smaller GIF is also quicker to open on a slow connection.

  • Web pages

    A GIF that is several megabytes slows a page down. Compress it before you upload it to your site or blog.

  • Screen recordings

    Recordings have long still stretches, which frame differencing handles well. Medium or Strong often shrinks them a lot.

  • Storage and sharing

    Shrink a folder of old GIFs so they are easy to attach, sync or archive.

How this tool works and its limits

This is what the tool does with your file, and where it stops.

  • Your GIF never leaves your device. It is opened, compressed and encoded in your browser, with no upload and no account. No watermark is added.
  • Files up to 25 MB and 300 frames are accepted. The output is never wider or taller than 1024 pixels on the longer side, so a larger GIF is scaled down.
  • Level mode makes one pass with fixed settings. Target size mode makes up to 6 attempts, in this order: lower colours, drop frames, then reduce the width. A width step shrinks the picture by up to 15%, and by more when the file is far over the target. The width never goes below 64 pixels.
  • If no attempt fits the target, the tool shows the smallest result and says so, for example that it could not get under 256 KB and the smallest is 340 KB. It does not pretend the target was met.
  • If the result is not smaller than your original, the tool says so and offers your original file instead of the bigger one.
  • Colours are reduced with one shared palette for the whole GIF, with no dithering, so gradients can band at lower levels. Transparent GIFs stay transparent.
  • Timing is kept: when frames are dropped, their delays are added to the frame before, and no delay is under 2 hundredths of a second. Works in current Chrome, Edge, Firefox and Safari; browsers that can't decode GIFs natively use a built-in decoder.

Questions, answered

How do I compress a GIF without losing quality?

Start with Light, which changes the picture the least, then try Medium and compare. Check the before and after side by side. GIF is limited to 256 colours per frame, so some loss is part of the format; flat artwork survives it well.

How do I compress a GIF for Discord?

Choose Target size, pick 256 KB and drop your GIF. Discord emoji must be 256 KB or smaller, and the tool keeps trying stronger settings until the file fits or it runs out of attempts. If it can't, crop the GIF or use fewer frames and try again.

Why is my GIF so big?

Because every frame is a picture of its own. Many pixels, many frames, a full palette and constant movement or noise all add up. Dropping colours and frames, or making the picture narrower, are the changes that cut the size most.

Is the GIF compressor free, and is my GIF uploaded?

It is free with no sign-up. Your GIF is not uploaded: it is decoded and encoded in your browser, and your original file stays on your device.

Does compressing change how the GIF looks or plays?

A little, depending on the level. Colours are reduced, so gradients may show bands. Strong can drop every other frame above 20 frames, but the delays are merged so the loop lasts as long as before. Dimensions stay the same unless target mode or a max width makes the picture narrower.

What if the compressed GIF is bigger than the original?

It can happen when a GIF was already optimised. The tool tells you, shows both sizes and offers your original file instead. Try a stronger level or a max width of 480 pixels.