GIF Optimizer - Optimize Animated GIFs Online

Five optimisation techniques, exposed individually, so you decide where the quality goes.


A preset makes the trade-off for you. This page does not - it exposes the five techniques a GIF optimizer actually uses and lets you apply them one at a time, so you can see what each one costs and stop at the point that suits your GIF. If you would rather just get a smaller file with no decisions, use the GIF compressor instead.

The Five Optimisation Techniques

TechniqueTypical savingQuality costUse when
Lossy compression20-40%MediumAlmost always - it is the general-purpose lever
Colour reduction10-35%MediumGIFs sourced from video, which rarely use the full palette
ScalingUp to 75%LowThe GIF is displayed smaller than it is stored
Duplicate frame removal0-60%NoneAlways - it is effectively free
Nth frame removal25-50%HighLast resort, when you have a hard size limit

Work down that table in order. Duplicate frame removal costs nothing, so turn it on first. Nth frame removal is the one that visibly stutters your animation, so leave it until you have exhausted everything else.

1. Lossy Compression

Lossy compression permanently discards pixel data that the LZW encoder can then pack more tightly. The data cannot be recovered afterwards, which is why it is also called irreversible compression - always keep your original.

Example of lossy compression applied by the GIF optimizer
The same frame before and after lossy compression

The tool accepts a value from 10 to 500. In practice 30 to 100 is the useful range and returns a 20-40% size reduction with little visible change. Above roughly 200 you start to see mottling on flat colour areas and haloing around sharp edges. Photographic and video-sourced GIFs tolerate high values much better than flat illustrations or screenshots containing text.

2. Colour Reduction

A GIF frame can reference at most 256 colours. Cutting that palette shrinks every frame at once, because each pixel needs fewer bits to index into a smaller table.

Reducing the GIF colour palette to shrink file size

How far you can go depends entirely on the source. GIFs made from video usually only occupy 150-200 distinct colours to begin with, so dropping to 128 is close to invisible. Illustrations with gradients start showing banding around 96 colours. Screenshots containing anti-aliased text degrade fastest, because the intermediate shades that make text look smooth are the first ones discarded.

3. Scaling

Scaling is the highest-yield, lowest-damage technique available, and it is consistently underused. File size tracks pixel area, not width - so scaling a GIF to 50% does not halve it, it removes about 75% of the data.

The question to ask is what size the GIF is actually displayed at. A 1200 px wide GIF embedded in a 500 px column is storing more than five times the pixels anyone will ever see. If you want exact dimensions rather than a percentage, the GIF resizer takes width and height directly.

4. Duplicate Frame Removal

Where consecutive frames are identical, the duplicates carry no information - they can be dropped and the remaining frame's display delay extended to cover the gap. The result is pixel-identical playback in a smaller file. There is no reason not to use this.

The tool matches frames at a configurable similarity threshold: 50%, 60%, 80% and so on. At 100% only exact duplicates go. Lowering the threshold catches near-identical frames too, which saves more but can introduce a slight jump where two almost-matching frames are merged. On screen recordings with long static stretches this technique alone can remove half the file.

5. Nth Frame Removal

The blunt instrument: drop every 2nd, 3rd, 4th or nth frame regardless of content. A GIF with 120 frames dropped to every 3rd becomes 40 frames - about a third of the size.

The total duration is preserved by redistributing the delay onto the surviving frames, so the GIF still plays for the same length of time; it just plays at a lower effective frame rate. Every 4th or 5th is usually acceptable. Every 2nd is obvious on anything with fast motion. Reach for this only when a hard size limit leaves you no choice.

Putting It Together

A workable default for most GIFs: turn on duplicate frame removal, scale to whatever size the GIF is actually displayed at, set lossy compression to about 60, and stop. That combination typically halves the file with nothing visible to complain about. Add colour reduction if you need more, and only touch nth frame removal if you are chasing a specific number - in which case the target size guide lists settings per target.

Privacy

Every GIF is optimised by JavaScript in your own browser, whatever its size, and is never uploaded. There is no account and nothing is retained.

Frequently Asked Questions

What is the difference between optimising and compressing a GIF?

They describe the same outcome from different angles. Compressing means "make this smaller", usually via a preset. Optimising means choosing which of the five underlying techniques to apply and by how much, so you control exactly where the quality is spent. If you just want a smaller file, use the compressor; if you want to understand and direct the trade-off, use this page.

Which optimisation technique loses the least quality?

Removing duplicate frames, because it is effectively lossless - identical frames carry no new information. After that, scaling is the most forgiving relative to the size it saves. Heavy lossy compression and aggressive colour reduction are the most visible.

How many colours can I remove before a GIF looks bad?

GIFs from video tolerate a drop from 256 to 128 colours almost invisibly. Flat illustrations and gradients start to show banding below about 96 colours. Screenshots with text degrade fastest because anti-aliased edges need many intermediate shades.

Does removing frames change how long the GIF plays?

No. The frame delay is redistributed so total duration stays the same. What changes is smoothness - the animation plays at a lower effective frame rate.

Can I undo lossy compression?

No. Lossy compression permanently discards pixel data, which is why it is also called irreversible compression. Always keep the original file and re-optimise from that rather than from a previous output.

Why did my GIF barely get smaller?

Either it was already optimised, or it has heavy motion where every frame differs from the last so there are no duplicates to remove. In that case scaling and colour reduction are your only real levers.

Made With ♥ By   Pi7