This page's code did not start.

Opening index.html directly from a folder blocks JavaScript modules, so nothing will happen when you choose images. Serve the folder over http instead:

powershell -ExecutionPolicy Bypass -File serve.ps1

Then open http://localhost:8080/.

GIF Maker — images into an animated GIF

Turn a set of pictures into one animation.

Language: English
View source
Your images are processed in your browser. No processing upload.

Every frame is drawn, quantized and compressed by your own browser, and the finished GIF is assembled in memory on this machine. There is no server on the other end of this page to send a picture to even if anything here wanted to.

Live check: checking…

Offline: checking…

Don't take our word for it: open DevTools, watch the Network tab, and make a GIF. Not one request carries an image, a thumbnail, or a filename. Or unplug from the internet and make one anyway.

1 Choose images

2 GIF settings

Colours Fewer colours, smaller file, more banding.

Dithering Turn it off for logos, line art and screenshots.

Add images to see a preview

Frames
—
Runs for
—
Frame size
—
Plays
—

3 Make the GIF

View as Markdown

How to make a GIF from images

  1. Choose your images. Drop a folder onto the picker, or select the files by hand. They are read straight off your disk by the browser; nothing is sent anywhere while you do it.
  2. Put them in the order they should play. Drag by the handle, or use the arrows. "Sort by name" counts the way you would expect, so frame_2 lands before frame_10.
  3. Set how long each frame is held. Half a second each is a slideshow; a twentieth is animation. Give every frame the same hold time at once, or set one of them apart to linger.
  4. Pick a size, and how the colours are chosen. A GIF grows with its area and its frame count and there is no quality slider to bring it back down, so the size is the setting that matters most. 256 colours per frame is the best-looking default; one shared palette is smaller and steadier.
  5. Make the GIF and download it. It is built on your own hardware, so how long it takes depends on your machine rather than on a queue. The finished animation plays on the page before you save it.

The longer version

How to make an animated GIF from images Turn a set of pictures into one animated GIF: how fast a GIF can really play, what the palette setting changes, and the three things that actually make the file smaller.

Questions

Are my images uploaded anywhere?

No. Your images are read, drawn, quantized and compressed by your own browser on your own hardware. There is no server side to this tool, and the page's Content-Security-Policy names every address it may contact — none of them belongs to this site. Unplug from the network and it still makes GIFs.

Which image formats can I use?

Any still image format your browser can decode, which in practice means JPG, PNG, WebP, GIF, AVIF and, on Apple devices, HEIC. There is no separate list to keep up to date here, because the decoding is the browser's job rather than ours.

Why is my GIF so large?

Because a GIF stores every frame as whole pixels. There is no motion compensation, nothing is stored as "the same as last time but shifted", and there is no quality dial: the size is roughly the area times the number of frames, and only three things bring it down.

Make it smaller — halving the size quarters the file. Use fewer frames, or hold each one for longer. Drop to 64 or 32 colours, and turn dithering off, which costs less than it sounds like on flat artwork and a great deal on photographs. If it still will not fit, the honest answer is that the thing you are making is a video, and an MP4 of it will be perhaps a tenth of the size.

How fast can a GIF play?

Not as fast as the number suggests. The format stores each frame's delay in hundredths of a second, and browsers have clamped anything under two of them to a tenth of a second since the 1990s — a rule written for the spinning globes of the time and never removed. So a delay of 0.01s does not play at 100 frames a second; it plays at 10. This tool will not offer you anything under 0.02s for that reason, and 0.05s (20 frames a second) is about as fast as it is worth asking for.

What does the palette setting change?

A GIF frame holds at most 256 colours, and something has to choose them.

Best colours for each frame picks 256 for every picture separately, which looks sharpest and is the right answer for a set of unrelated photographs. One palette for the whole GIF builds a single table from every frame at once. It makes a smaller file, and it stops the flicker you get when the palette lurches between frames of the same scene — so it is what to reach for when the frames are a sequence rather than a collection.

Can I keep a transparent background?

Yes, if your images have one: switch "Transparency" to "Keep transparent areas". One thing to know before you do. GIF transparency is a single bit — a pixel is either invisible or fully painted, with nothing in between — so anti-aliased edges, soft shadows and anything faded get a hard edge instead. If your animation is going onto a background you know the colour of, flattening it onto that colour will look better.

Is there a limit on how many images I can use?

There is no limit built into the tool. The practical ceiling is your own machine's memory and your patience with the file that comes out: the pictures are read one at a time, so a hundred frames is fine, but a hundred frames at 640 px is also a very large GIF. See "Why is my GIF so large?" above.

Is it free, and do I need an account?

It is free, and there is no account, no sign-in and no trial. There is no watermark on the output either. The site carries advertising, which is what pays for it; the ads are not given anything about your images.

Does it work offline?

Yes. Load the page once, then disconnect from the internet and it keeps working. That is also the simplest way to prove nothing is being uploaded: a tool that sent your images away to be processed would stop the moment you unplugged.