Skip to main content

GIF Maker

Turn multiple images into an animated GIF with custom frame delay.

Reviewed by · Last reviewed

What You Should Know

A GIF maker combines several still images into one animated GIF. Drop your images in, arrange the frame order, set the delay between frames, pick an output size, and the animation is encoded entirely in your browser - your photos are never uploaded anywhere. The result loops forever, has no watermark, and downloads as a standard GIF that works in chats, README files, and anywhere else images are accepted.

Runs 100% in your browser - your data never leaves your device

Drop images here or click to upload

JPG, PNG, WebP, BMP. Up to 50 frames, 20 MB each. Everything stays in your browser.

Rate this tool
Be the first to rate

Using the GIF Maker

  1. Drop in your images - JPG, PNG, WebP, BMP, or single frames from other GIFs. Select several at once or add them in batches, up to 50 frames.
  2. Arrange the order with the Up and Down buttons; the list order is the playback order. Remove any frame that does not belong.
  3. Set the frame delay in milliseconds (500 ms is a comfortable slideshow pace) and pick a maximum output size.
  4. Click Create GIF, watch the per-frame progress, preview the looping result, and download it.

What Happens Under the Hood

Each frame is drawn onto a canvas sized from the first image's aspect ratio, capped at your chosen dimension. The canvas pixels are quantized to a 256-color palette - the GIF format's hard limit - using a pairwise-nearest-neighbor quantizer, mapped to palette indices, and written into the GIF stream with your delay and an infinite loop flag. The encoder yields back to the browser between frames so the page stays responsive and the progress indicator can update. The finished bytes become a Blob you download directly; nothing is transmitted.

Good Uses for an Image-Based GIF

  • Turning a sequence of UI screenshots into a short product demo for a README or pull request.
  • Animating a before/after pair (two frames, 800 ms delay) for design reviews.
  • Building a slideshow of photos for a chat where video embeds are clumsy but GIFs autoplay.
  • Assembling sprite renders or chart snapshots into a quick motion preview.

Limits Worth Knowing

  • 256 colors per frame - inherent to GIF; flat graphics look perfect, photos show banding.
  • File size grows fast - GIF is an inefficient format by modern standards. If the output is too heavy, reduce the max size or the frame count, or use the video tools for an MP4.
  • Mixed dimensions are fine - frames are letterboxed onto the first frame's aspect ratio with a white background.

Frequently Asked Questions

Are my images uploaded to a server?

No. The frames are read with local object URLs, drawn onto an in-memory canvas, and encoded to GIF by a JavaScript encoder running in your browser tab. There is no upload, no queue, and no server-side copy of your images - the Network tab in DevTools stays quiet during encoding. This is different from our video-to-GIF converter, which needs a server because video decoding requires FFmpeg.

How is this different from the Video to GIF converter?

This tool starts from still images (photos, screenshots, rendered frames) and animates them. The video-to-GIF converter starts from a video file and extracts its frames on our server because browsers cannot decode arbitrary video codecs reliably. If your source is a set of images, use this tool and nothing leaves your device.

What frame delay should I use?

The delay is the time each frame stays on screen, in milliseconds. For a slideshow feel use 500-1000 ms. For smooth motion from a burst of photos use 50-100 ms. Note that browsers clamp very small values: delays under about 20 ms are rendered at roughly 100 ms by most browsers, so the tool enforces a 20 ms minimum.

Why does my GIF look grainy compared to the source photos?

The GIF format is limited to 256 colors per frame. The encoder builds an optimized palette for each frame with pairwise-nearest-neighbor quantization, which works well for screenshots, charts and flat graphics but visibly bands smooth photographic gradients. For photo-heavy animations a video format like MP4 or WebM preserves quality at a fraction of the file size.

Is there a watermark or a frame limit?

No watermark, ever. The tool accepts up to 50 frames at up to 20 MB per image. The practical limit is file size: a 50-frame GIF at 800 px can reach tens of megabytes, so start with 480 px and increase only if you need the detail.

Do all frames need to be the same size?

No. The output canvas takes its aspect ratio from the first frame, capped at your chosen maximum size. Every other frame is scaled to fit inside that canvas, centered, with white filling any leftover space. For the cleanest result, crop your images to the same aspect ratio first - our image cropper does that in a few clicks.

Related tools

More Image Tools

Support ZeroUtil