Tested field guide · 28 August 2026

How to make a GIF smaller

Compression is only one lever. We compared resizing, cropping, color reduction, and fewer frames across 32 recorded/tested states from four original GIFs—then mapped each trade-off to the right tool.

The short answer

Remove pixels before you remove quality.

If the GIF will be displayed smaller, resizing usually gives a predictable reduction. If the edges contain expendable space, crop first. Use stronger compression only when you can accept lower dimensions, fewer frames, or more visible texture loss. In our already-efficient samples, Light compression saved effectively nothing—proof that a preset cannot guarantee a smaller file.

01 · Decision table

Choose the constraint you cannot break

Start with the requirement that matters most. The best method is the one that removes data you do not need.

Keep width, height, and timing

Try a light re-encode

It preserves geometry, but may save little or nothing when the source is already efficient.

Try Light compression →
Display at a smaller size

Resize the canvas

At 50% width and height, our four samples saved 52.2% to 65.7% while keeping frame count and duration.

Resize a GIF →
Unused space around the subject

Crop before compressing

Crop only expendable edges. Savings varied from 11.3% to 41.0% because the removed regions had different complexity.

Crop a GIF →
Maximum reduction matters most

Trade resolution and smoothness

Strong compression saved 65.8% to 69.7% in this set, but also reduced dimensions and halved the frame count.

Compare compression levels →
02 · What controls size

Why GIF files get large

Canvas area

Every frame has a pixel grid. Cutting both width and height to 50% leaves one quarter as many pixel positions per full frame.

Frame count

More frames can produce smoother motion, but each frame adds image data and timing information.

Visual complexity

Texture, gradients, noise, and large moving regions are harder to represent compactly than flat, repeated shapes.

Palette decisions

GIF uses indexed color. Reducing colors can help, but may introduce banding or dithering in photographic material.

Changed regions

An animation where most pixels change from frame to frame usually needs more data than one with a small moving element.

03 · Same sources, different trade-offs

What Strong compression changed

Each pair uses the same original animation. Strong outputs are shown at the same visual card size, so check the labels for their actual dimensions and frame counts.

GIF-UIFlat UI motion

Simple shapes, a small palette, and moving interface elements.

Original flat UI test animationOriginal · 116.32 KB · 800×450 · 40 frames
Flat UI animation after Strong compressionStrong · 39.38 KB · 560×315 · 20 frames
GIF-PHOTOTextured photo motion

Gradients, deterministic texture, and a moving foreground object.

Original textured photo test animationOriginal · 2.13 MB · 640×360 · 50 frames
Textured photo animation after Strong compressionStrong · 659.52 KB · 448×252 · 25 frames
GIF-STICKERTransparent sticker

A moving transparent-background sticker with hard graphic edges.

Original transparent sticker test animationOriginal · 54.18 KB · 512×512 · 30 frames
Transparent sticker after Strong compressionStrong · 18.54 KB · 358×358 · 15 frames
GIF-TEXTText and line motion

Fine rules, document-like text lines, and a moving cursor.

Original text and line test animationOriginal · 181.85 KB · 960×540 · 60 frames
Text and line animation after Strong compressionStrong · 61.38 KB · 672×378 · 30 frames
04 · Complete test results

All 32 recorded/tested states

Percentages compare each output with its own original. These results describe this fixed test set, not a guaranteed rate for every GIF.

SampleMethodSettingFile sizeSavedDimensionsFrames
GIF-UIOriginalOriginal116.32 KB—800×45040
GIF-UICompressLight116.32 KB0.0%800×45040
GIF-UICompressBalanced97.45 KB16.2%680×38340
GIF-UICompressStrong39.38 KB66.2%560×31520
GIF-UIResize75%84.72 KB27.2%600×33840
GIF-UIResize50%55.24 KB52.5%400×22540
GIF-UICrop10% per edge101.68 KB12.6%640×36040
GIF-UICombinedCrop → 50% → Balanced40.79 KB64.9%272×15340
GIF-PHOTOOriginalOriginal2.13 MB—640×36050
GIF-PHOTOCompressLight2.13 MB0.0%640×36050
GIF-PHOTOCompressBalanced2.06 MB3.1%544×30650
GIF-PHOTOCompressStrong659.52 KB69.7%448×25225
GIF-PHOTOResize75%1.73 MB18.4%480×27050
GIF-PHOTOResize50%746.56 KB65.7%320×18050
GIF-PHOTOCrop10% per edge1.42 MB33.3%512×28850
GIF-PHOTOCombinedCrop → 50% → Balanced396.92 KB81.8%218×12250
GIF-STICKEROriginalOriginal54.18 KB—512×51230
GIF-STICKERCompressLight54.18 KB0.0%512×51230
GIF-STICKERCompressBalanced45.62 KB15.8%435×43530
GIF-STICKERCompressStrong18.54 KB65.8%358×35815
GIF-STICKERResize75%39.94 KB26.3%384×38430
GIF-STICKERResize50%25.92 KB52.2%256×25630
GIF-STICKERCrop10% per edge48.07 KB11.3%410×41030
GIF-STICKERCombinedCrop → 50% → Balanced19.64 KB63.7%174×17430
GIF-TEXTOriginalOriginal181.85 KB—960×54060
GIF-TEXTCompressLight181.85 KB0.0%960×54060
GIF-TEXTCompressBalanced150.18 KB17.4%816×45960
GIF-TEXTCompressStrong61.38 KB66.2%672×37830
GIF-TEXTResize75%132.23 KB27.3%720×40560
GIF-TEXTResize50%85.76 KB52.8%480×27060
GIF-TEXTCrop10% per edge107.23 KB41.0%768×43260
GIF-TEXTCombinedCrop → 50% → Balanced43.45 KB76.1%326×18460

Method: Four project-owned GIFs were processed by the current Tanumi GIF worker. Every output was decoded independently with ffprobe. Light outputs kept dimensions and frame count and scored 0.999999–1.0 SSIM against the originals. Geometry-changing outputs were reviewed at their intended display size instead of being ranked with cross-size SSIM.

05 · A practical sequence

Crop → resize → compress

When more than one change is acceptable, use the least destructive order.

  1. 01

    Remove only expendable edges

    Do not crop important action merely to chase a percentage. Cropping works best when the perimeter is genuinely unused.

  2. 02

    Match the real display dimensions

    A 960-pixel GIF displayed at 480 pixels spends bytes on detail the viewer will not see.

  3. 03

    Choose the lightest acceptable compression

    Inspect fine text, gradients, motion, and transparent edges. Move stronger only if the output still misses your limit.

Choose your next action

Change only what you can afford to lose.

Compress GIFCompare Light, Balanced, and Strong →Resize GIFMatch the actual display size →Crop GIFRemove expendable canvas edges →