GIFMaker
Open Studio

Resize GIF β€” Exact Pixels or Percent, Ratio Locked

Set a new width and height in pixels or scale by percentage, keep the aspect ratio locked, and let a quality-preserving resampler scale every frame without the blur.

Need to resize GIF dimensions to an exact width and height β€” or scale the whole thing by percentage β€” without it turning soft? Type new pixel dimensions or a scale percent, keep the aspect ratio locked, and a quality-preserving resampler redraws every frame sharp. Below: the three-step resize flow, how scaling actually changes a GIF's resolution, how resize differs from crop, and how to downscale or upscale without losing quality.

Drop a file or choose

How to resize a GIF to new dimensions

  1. 1

    Load your GIF into the resizer

    Drag an animated GIF onto the drop zone, or click to browse. It opens straight in the browser through WebAssembly β€” nothing is uploaded β€” and the resizer reads its current width, height, and frame count so you can see the original dimensions before you change them.

  2. 2

    Set new pixels or a scale percentage

    Type an exact width in pixels and the height follows automatically with aspect ratio locked, or scale the whole GIF by percentage to downscale or upscale proportionally. Unlock the ratio only if you mean to stretch β€” the output renders at the new resolution when you export.

  3. 3

    Export the resized GIF

    When the dimensions read where you want them, click to save. The quality-preserving resampler scales every frame, and the resized GIF downloads with its loop, timing, and animation intact β€” no watermark, no signup, no upload.

Why GIFMaker

  • Exact pixel or percentage sizing

    Set the new width and height in precise pixels when you need to hit a spec, or scale by percentage when you just want the GIF proportionally smaller or larger. Either way you control the exact dimensions instead of picking from a fixed SD/HD preset.

  • Aspect ratio lock

    Lock the aspect ratio and the height recalculates the instant you change the width, so the GIF scales proportionally and never distorts. Unlock it only when you deliberately want to stretch or fit the frame to a different shape.

  • Quality-preserving resampler

    A Lanczos-quality resampler rebuilds each pixel from its neighbors as it scales, keeping edges sharp instead of blocky. Downscaling stays clean and upscaling avoids the jagged stair-stepping that crude nearest-neighbor scaling leaves behind.

  • Every frame scaled, loop intact

    The resampler runs across all frames in sequence, so the animation, frame timing, and loop flag carry straight through. You change the resolution of the whole GIF at once, not one frame, and the motion plays back exactly as it did.

  • In-browser WebAssembly, no upload

    FFmpeg compiled to WebAssembly runs the resize on your own machine, so the GIF never leaves your device. There's no upload step and no file-size limit beyond your browser's available memory.

How do you resize a GIF to exact dimensions?

Type the width you want in pixels and, with the aspect ratio locked, the height fills in automatically so the GIF scales proportionally to your target resolution. If you'd rather not do the math, switch to percentage and scale the whole frame by a single number β€” say 50% to halve every dimension.

The resizer reads the original width and height the moment you load the GIF, so you always size against a known starting point. Lock the ratio for clean proportional scaling, or unlock it to stretch the frame to an exact width and height that don't match the original shape. Because the work runs through WebAssembly in your browser, every frame is scaled locally, and the output renders at the new dimensions when you export. If you want the file lighter after resizing, optimize the GIF's palette on the smaller canvas β€” fewer pixels per frame means less for it to encode.

What is the difference between resizing and cropping a GIF?

Resizing scales the entire frame to a new width and height, so every pixel of the picture stays in shot β€” just smaller or larger β€” while cropping cuts pixels away from the edges to change what's actually in the frame. Resize keeps the whole composition; crop reframes it.

Reach for resize when the GIF is simply the wrong size for where it's going and you want to keep all of it. Use crop the GIF instead when you need to cut away borders or reframe an off-center subject. The two pair well: crop to the region you want, then resize that region to its final dimensions. Both, along with the palette and file-size tools, live in the same in-browser edit-and-optimize toolkit, so the GIF stays on your device the whole way through.

How do you resize a GIF without losing quality?

Scale with a quality-preserving resampler and keep the aspect ratio locked so the GIF never stretches β€” distortion, not size change, is what usually reads as lost quality. The Lanczos-quality resampler samples surrounding pixels as it redraws each frame, keeping edges sharp whether you downscale or upscale.

Downscaling is the friendlier direction: you're throwing pixels away, and a good resampler averages them cleanly, so a smaller GIF generally looks crisp. Upscaling has to invent detail that was never captured, so push it modestly and the resampler will smooth the new pixels rather than leave them blocky. One thing scaling can't fix is file weight β€” a GIF's 256-color palette still bloats it. If the resized GIF is still heavy, send it to the GIF compressor to hit a target size after the dimensions are set.

Can you resize an animated GIF without breaking the animation?

Yes β€” the resampler scales every frame in the sequence, not just one, so the frame count, timing, and loop flag all carry through and the animation plays back exactly as before, only at the new resolution. Nothing about the motion changes; only the pixel dimensions of each frame do.

That's the difference between resizing a still image and resizing a GIF: a GIF is a stack of frames, and a proper resize redraws the whole stack at the new width and height in one pass. Because the scaling runs locally through WebAssembly, the loop you started with is the loop you download β€” same animation, smaller or larger frame.

Make GIFs on your iPhone

Get the GIFMaker app for offline GIFs on the go.

Download on the App Store

Frequently asked questions