Resize an animated GIF

Drop GIF files here

or click to choose — animated or still, one or many, no size limit

New size
Look

Drop in one or more GIFs and choose a new size: half, a quarter, an exact width such as 128 pixels, or any width and height you type. The animation stays an animation — every frame and its timing are kept, transparency too — and the page shows the original and the resized GIF playing side by side with their sizes. Pixel art can be enlarged without blurring. It runs Gifsicle on your own device, so nothing is uploaded.

How to resize a GIF

  1. Drop one or more GIF files into the box above, or click it to choose them.
  2. Pick a size: 50%, 25%, a common width such as 128 px, or type your own width or height. With Keep proportions ticked, fill in one box and the other follows.
  3. Leave Look on Smooth for photos, video clips and drawings. Choose Sharp pixels for pixel art and game sprites.
  4. Compare the original and the resized GIF playing side by side, then download it. Several GIFs can be saved together as a ZIP.

Your original stays as it was. The new file is named after it with the new size added (dance-240x180.gif).

Why a resized GIF often stops moving

A GIF is a stack of frames with a delay after each one. Most image tools, including the resizer built into your browser’s drawing canvas, only ever see the first frame: they draw it, scale it and save it as a new picture. Our own Resize Image tool works that way too, which is fine for photos and is exactly why this separate page exists. Here every frame is resized inside the GIF itself, the delays are copied across, and after resizing the new file is read back so the line under the result can tell you the frame count and loop length it actually has, not the ones it was supposed to have.

What we measured

A GIF can only use 256 colours per frame. When it shrinks, two neighbouring pixels — say yellow and black at the edge of an emoji — blend into a colour the palette may not have. The engine we use, Gifsicle, normally snaps that blend to the nearest colour already in the palette. It can also be allowed to add the in-between colours. We resized five test GIFs to half their width both ways and compared every frame with a careful reference resize (Pillow’s Lanczos filter on the full-colour frames). The error is the average colour difference (ΔE) on every third pixel: under 1 is invisible, around 2 to 3 is the smallest difference most people can spot side by side.

Test GIFOriginalPalette onlyIn-between colours (this page)
Emoji on a transparent background, 128×128, 24 frames10.5 KBΔE 3.27 · 3.9 KBΔE 2.70 · 3.9 KB
Screen recording, flat colours, 480×270, 60 frames14.3 KBΔE 0.73 · 5.6 KBΔE 0.57 · 5.7 KB
Slow pan across flat colour blocks, 400×300, 30 frames101.7 KBΔE 0.42 · 27.4 KBΔE 0.33 · 26.4 KB
Interface animation with smooth text, 480×270, 40 frames74.3 KBΔE 0.54 · 26.0 KBΔE 0.54 · 24.1 KB
Noisy video clip, its own palette on every frame, 400×300, 40 frames2.21 MBΔE 4.02 · 680 KBΔE 4.02 · 681 KB

Allowing in-between colours helped most where it shows most: the transparent emoji and flat screen graphics, with 15 to 25 percent less colour error. On the video clip it made no difference, because that GIF already had a full palette on every frame. On its own the extra colours made files bigger (the emoji grew from 3.9 to 5.4 KB), so this page re-optimises each result afterwards, which brought the sizes back to what the palette-only version weighed. In every run, all frames and every delay came through unchanged.

Sharp pixels for pixel art

Blending is what you want for a photo and exactly what you do not want for a 32 pixel sprite, where each pixel was placed by hand. Sharp pixels copies pixels instead of blending them. Enlarged by a whole number it gives perfectly even blocks: our 128 pixel emoji at 300% matched a nearest-neighbour enlargement pixel for pixel, while the sharper-looking Lanczos and Catmull-Rom filters flipped 0.3 to 0.4 percent of all pixels between transparent and opaque along the outline. For shrinking pixel art, halving with Sharp pixels keeps every other pixel, so thin one-pixel lines can disappear; check the preview.

Common sizes

Where it is goingSize to aim forThen
Discord or Slack emoji128 px wide (square)If it is over the size limit, Compress GIF
Twitch emote112, 56 and 28 pxTwitch Emote Resizer makes all three at once
Reaction GIF in a chat or forum post320 to 480 px wideUsually small enough as it is
README, documentation or email640 to 800 px wideConsider GIF to MP4 where video is allowed

Need a different shape rather than a different size? Crop GIF cuts the frame to a square, 16:9 or any box first; then come back here for the exact pixel size.

Private by design

The GIF engine is Gifsicle, the open-source command-line tool many GIF websites run on their servers, compiled to run inside your browser. It is downloaded once, works in a separate worker, and your GIFs never leave your device. See where your files go for how every tool on this site handles files.

Frequently asked questions

How do I resize a GIF without losing the animation?

Use a tool that works on the GIF's frames rather than on a picture of it. Image editors and resizers that draw the GIF onto a canvas and save it again keep only the first frame, which is why a resized GIF so often comes out frozen. This page resizes every frame inside the GIF file itself, so the result has the same number of frames and the same timing; the line under the result says so, measured from the new file.

How do I resize a GIF without losing quality?

Make it smaller rather than larger, and leave Look on Smooth. Shrinking blends neighbouring pixels, and Smooth lets the GIF use new in-between colours for that, so edges stay clean instead of snapping to the nearest colour already in the palette. In our test that cut the colour error by 15 to 25 percent on flat graphics and transparent emoji, at the same file size. Enlarging can never add detail, so a GIF made bigger will look softer or blockier.

How do I resize a GIF to a specific size, such as 128 by 128?

Type 128 into Width and leave Height empty: the height follows the GIF's proportions. If you need exactly 128 by 128 and the GIF is not square, untick Keep proportions and fill in both boxes, which stretches it, or crop it to a square first with Crop GIF and then resize it, which keeps everything in proportion.

How do I make pixel art GIFs bigger without blurring them?

Choose Sharp pixels and enlarge by a whole number: 200%, 300% or 400%. Every original pixel then becomes an even 2×2, 3×3 or 4×4 block, with no new colours. We checked this on a 128 pixel sprite enlarged three times: the result matched a nearest-neighbour enlargement pixel for pixel. At an uneven factor such as 150%, some pixels have to become wider than others.

Does resizing make the GIF file smaller?

Usually by a lot. Halving the width leaves a quarter of the pixels; our 2.2 MB noisy video clip came out at 680 KB at half size. If you need a GIF under a hard limit, such as 256 KB for a Discord emoji, Compress GIF can search for the gentlest settings that fit, and scales down only as far as needed.

Is transparency kept?

Yes. Transparent areas stay transparent and the previews are drawn on a checkerboard so you can see the edges. GIF transparency is all or nothing for each pixel, so a soft, anti-aliased edge cannot be blended into the background; it stays as sharp as it was.

Are my GIFs uploaded?

No. The GIF engine (Gifsicle, compiled to run in browsers) is downloaded once and runs on your device in a separate worker. Your files are read from your disk, resized in memory and offered back as downloads. There is no size cap from us and no watermark.