b2KIT

GIF Crop & Resize

Crop and resize animated GIFs while preserving all frames and animation timing.

Tested tool guide Tested browser tools Checked August 16, 2026

What GIF Crop & Resize does, with a checked example

GIF Crop & Resize changes the visible canvas and pixel dimensions of an animated GIF without turning it into a still image. You select one crop rectangle, apply it across the complete frame sequence, and resize that cropped area to the required width and height. Processing occurs in the browser, so the source GIF is not uploaded. The important surprise is that cropping is spatially fixed: a subject that moves outside the selected rectangle in later frames will be partly or completely cut off.

Worked example

A concrete input and expected output from the current implementation.

Input

Source GIF: 320 x 240 pixels, 12 frames, 100 ms per frame. Crop: x 40, y 20, width 200, height 160. Resize: 100 x 80 pixels.

Expected output

A 100 x 80 animated GIF containing all 12 frames, with a 100 ms delay per frame and a total frame-cycle duration of 1.2 seconds.

The 200 x 160 crop is reduced by one-half in both dimensions, producing 100 x 80 pixels without changing its aspect ratio. Twelve delays of 100 ms total 1,200 ms, or 1.2 seconds.

How the result is produced

1

Crop the animation canvas

The crop rectangle identifies the same fixed region of the GIF canvas in every frame. Pixels outside that rectangle are excluded from the result, while pixels inside it retain their positions relative to the new upper-left corner. Because the rectangle does not follow moving content, the full sequence should be checked before choosing a tight crop.

2

Resize every retained frame

After cropping, the selected region is mapped to the requested output width and height for each frame. Using dimensions with the crop's aspect ratio avoids geometric stretching. The resulting GIF keeps the source frame sequence and frame delays. Its file size may increase or decrease because dimensions, image content, palette choices, and frame-to-frame changes all affect GIF encoding.

Good uses

  • Remove unused borders from an animated reaction GIF and reduce its dimensions for a chat attachment.
  • Create a consistently sized animated product detail from one fixed area of a larger GIF.
  • Resize a looping interface demonstration to fit a documentation column without discarding its animation frames.

Limits and checks

  • Inspect later frames as well as the first one. A crop that initially surrounds the subject may clip it after it moves.
  • Confirm that the crop and output dimensions use the same aspect ratio if preserving shapes and proportions matters.
  • Expect possible color or edge changes after resizing. GIF color tables contain at most 256 entries, so gradients and softened resize edges may require color reduction.

Common questions

Can the crop follow a moving subject through the GIF?

No automatic subject tracking is implied. The chosen crop is a fixed rectangle applied to the animation canvas across all frames. If the subject changes position, choose a rectangle large enough to contain its complete path. A different crop for each frame would require frame-level editing rather than one fixed animated crop.

Does preserving timing guarantee identical playback everywhere?

No. Preserving timing means the output retains the GIF's frame-delay sequence, but viewers can handle very short delays differently. Loop behavior is also distinct from per-frame timing, so verify the exported GIF in the intended browser or application when an exact loop count or unusually rapid animation matters.

References and verification

The example and behavioral notes were checked against the browser implementation. Standards and primary references below define the relevant format, formula, or platform behavior.

Related Tools