GIF Maker

Drop in your pictures, set the speed, and get an animated GIF back — built on your own device.

Drop your pictures here or click to choose several · they become the frames, in the order you add them

Nothing is uploaded. The animation is built by your own browser.

🔒 Runs entirely in your browser — nothing you type is uploaded or stored on a server.

Add the pictures you want as frames, put them in order, choose how long each one is on screen, and press Make the GIF. The animation is built by your browser and appears on the page, playing, before you download it.

Also on Txtset: lay them out side by side instead · caption a single picture instead.

Nothing is uploaded. The GIF encoder — palette, dithering, compression and all — is plain JavaScript running on this page. Your pictures are never sent anywhere, there is no queue, no account and no watermark burned into the corner.

A GIF can only hold 256 colours in total, which is the single fact that decides how yours will look. The tool picks those colours from your actual pictures rather than from a fixed table, so a sunset gets the oranges it needs instead of a generic spread. Dithering then scatters the small remaining errors so gradients read as smooth instead of banded — it makes photographs look considerably better and the file somewhat larger, which is why it is a checkbox and not a decision made for you.

Every frame in a GIF shares one canvas size, so pictures of different shapes are fitted inside it and the spare space is filled with the letterbox colour. That is a deliberate choice: cropping part of somebody's photo away without saying so is the worse of the two failures. If you want them trimmed to match exactly, crop them to the same shape first.

How to use

  1. Drop several pictures on the box, or click to choose them. Each one becomes a frame.
  2. Reorder the frames with the arrows, or remove any you do not want. The order in the list is the order they play in.
  3. Set the frame delay — 400 ms is a comfortable slideshow, 100 ms is a brisk animation.
  4. Pick a width and a number of colours. Fewer colours makes a noticeably smaller file.
  5. Press Make the GIF, watch it play, and download it.

Examples

A short slideshow
Six holiday photos at 800 ms each makes a twelve-second loop small enough to send in a chat.
A step-by-step demo
Screenshots of a process, in order, at 1.5 seconds a frame — it explains a workflow without anyone pressing play.
A flipbook animation
Frames drawn by hand and exported as PNGs, at 80 ms each, loop into a smooth little animation.

Frequently asked questions

Are my pictures uploaded?
No. Every part of this runs in your browser: decoding the pictures, choosing the palette, compressing the frames and writing the file. There is no server involved, and you can turn off your internet connection once the page has loaded.
Can I make a GIF from a video?
Not on this page. It builds an animation from still pictures you supply. Pulling frames out of a video file is a genuinely different job, and claiming to do it here when the page cannot would be worse than saying so plainly.
Why does my GIF look grainy or banded?
Because the format allows at most 256 colours in the whole animation, and a photograph contains far more than that. Turn dithering on — it hides the steps by scattering the error between neighbouring pixels. Raising the colours setting back to 256 helps too.
Why is the file so large?
GIF compression is from 1987 and was designed for flat graphics, not photographs. Dithering makes it worse, because the scattered pixels are exactly the noise its compression cannot squeeze. Fewer colours, a smaller width, or fewer frames are the three levers, in that order of effect.
What happens to pictures of different shapes?
They are fitted inside one shared canvas and the spare space is filled with the letterbox colour you picked. Nothing is cropped away without telling you.
Why does my very fast animation play slower than I set?
GIF stores each delay in hundredths of a second, and browsers treat anything under about two hundredths as a full tenth of a second instead — a rule inherited from very old animated adverts. Twenty milliseconds is the real floor, whatever number you type.
Can I set a different delay for each frame?
Not yet — one delay applies to every frame. Adding the same picture twice in a row is the usual way to hold on a particular frame for longer.
Does it strip the photo metadata?
Yes, completely. GIF has nowhere to put EXIF, so the location and camera data your phone records simply do not travel into the animation.
How many frames can I use?
Up to 60. Past that the file gets impractical to share and the browser has to hold every frame in memory at once, so the page keeps the first 60 and says so.