Stack images into one animated GIF
Got a folder of frames and want them to play as a loop? Drop them in. Each image becomes a frame, and the frames stitch together into a single animated GIF you can download in a couple of clicks.
Works great for a quick logo animation, a before-and-after flip, a short product spin, or a meme you exported frame by frame. Anything that’s a sequence of still images can become a GIF here.
The whole thing runs in your browser. Your images get drawn onto a canvas, quantized to a 256-color palette with the gifenc library, and encoded into a GIF locally. No upload step. No server. The files never leave your machine, which matters when the frames are screenshots of an internal dashboard or photos you’d rather not hand to some random web service.
How to put one together
- Drop your images onto the box, or click to browse. Pick as many as you want.
- Drag the order around with the up and down arrows. Frame 1 plays first.
- Set the output width. The height follows the first image’s aspect ratio so nothing looks stretched.
- Pick a frame delay in milliseconds. 100ms is snappy, 1500ms feels like a slideshow.
- Hit Create GIF, check the preview, then Download.
Don’t like a frame? Remove it. Need to swap two? Use the arrows. The GIF rebuilds from whatever order is on screen when you click the button.
A few things worth knowing
Frame delay is per frame and applies to every frame equally. At 300ms each, ten images give you a three-second loop. Want it faster? Drop the number. Slideshow vibes? Crank it up.
There are two scaling modes. Crop to fill zooms each image so it covers the full frame, trimming the edges that hang over. Fit whole image shrinks the picture until it all fits and pads the gaps with white. Crop looks cleaner when your images are roughly the same shape. Fit is safer when they’re wildly different sizes.
Size is the thing that makes or breaks a GIF. The format caps out at 256 colors per frame and has no real compression for photos, so files balloon fast. A 640px wide, 30-frame GIF can easily hit several megabytes. Keep the width modest and the frame count reasonable if you’re posting it somewhere with limits.
Loop is on by default, so the animation repeats forever. Flip it to Plays once if you want it to stop on the last frame.
Questions people ask
Do my images get uploaded anywhere? Nope. Everything happens in your browser using canvas and the gifenc encoder. Nothing touches a server, so it works offline once the page has loaded.
What image formats can I use? PNG, JPG, WebP, and even static or single-frame GIFs. Mix and match freely. They all get redrawn onto the same canvas.
Why is my GIF so big? GIF is an old, inefficient format. Lots of frames, a wide output size, or photographic images all push the size up. Trim the frame count or drop the width to slim it down.
Can I set a different delay for each frame? Not yet. The delay is the same for every frame. For an even pace that’s usually what you want anyway.
How many images can I add? There’s no hard cap, but encoding happens on your device, so a few hundred high-res frames will take a moment and use real memory. For most loops you’ll want somewhere between 2 and 50 frames.
Does the order matter? Yep. Frames play top to bottom in the list. Reorder before you build, and the GIF follows that exact sequence.