GIF Maker

Drop in a batch of images, set the frame delay, and get an animated GIF back. Everything happens in your browser.

Click to choose images, or drag and drop them here.

Each frame's delay can also be edited individually above, in the frame strip, along with reordering (↑/↓) and removing frames one at a time.

How it works

Each image you add becomes one frame, shown as a thumbnail in the frame strip above. Frames play back in the order you add them, then loop. Every frame has its own delay, set the global delay and apply it to all of them, or fine-tune individual frames by editing their number right in the strip. Reorder with the ↑/↓ buttons or drop a frame entirely with ×. The first image you drop in sets the GIF's dimensions, any images with a different size or aspect ratio are automatically scaled to fit, so nothing breaks if your source images don't match.

Encoding runs in a Web Worker via gif.js, an open-source client-side GIF encoder, so the browser tab stays responsive even while assembling a larger GIF. Quality trades encode speed against file size: "Best" spends more time finding an accurate color palette per frame, "Fast" is quicker but can look slightly more banded on gradients.

Common questions

How many images can I use?

As many as your browser can comfortably hold in memory. A few dozen small images works fine; hundreds of large ones will slow things down since everything runs on your device.

Do the images need to be the same size?

No. Every frame is fit to the dimensions of the first image you add, so mismatched sizes are automatically scaled to match rather than breaking the GIF.

Are my images uploaded anywhere?

No, the GIF is assembled entirely in your browser using a Web Worker. Nothing leaves your device.