Logo

MonoCalc

/

GIF Maker

Media

Drag images here or paste from the clipboard. JPEG, PNG, WebP, GIF, AVIF and BMP (HEIC in Safari). Up to 150 frames, added in filename order.

Everything happens in this tab. Images are never uploaded; the only download is this site's GIF encoder, the first time you create a GIF.

Size and fit

Output: 480 × 270 px. GIF suits sizes up to 1280 px; for anything larger, a video format is the better choice.

Pixelated keeps pixel art crisp when it is enlarged.

Timing and playback

100 ms · 10 fps

Colour and compression

One palette for the whole GIF: no colour flicker and no per-frame table cost.
Ordered (Bayer 8×8): a fixed fine pattern, so unchanged areas stay identical from frame to frame. No shimmer.

Unchanged pixels are stored as transparent, and identical frames are merged into one longer frame. Images with 256 or fewer colours are kept exactly.

About This Tool

GIF Maker – Build an Animated GIF from Images in Your Browser

This GIF maker turns a set of still images, such as screenshots, photos, sprite frames or slides, into an animated GIF. Put the frames in order, choose how long each one stays on screen, preview the real timing, and download the file. Decoding, colour reduction and encoding all run in your browser, so your images never leave your device.

How an animated GIF is built

A GIF file is a short header followed by a list of images. Each image can carry a few extra details that turn a picture into an animation:

  • Colour tables. Every pixel is an index into a palette of at most 256 colours. A global table can be shared by every frame, or each frame can bring its own local table, which costs up to 768 bytes per frame.
  • Frame delay. The Graphic Control Extension stores how long a frame stays on screen, in hundredths of a second. A 125 ms request is stored as 13 and plays as 130 ms.
  • Disposal method. This tells the viewer what to do with a frame before drawing the next one: leave it in place (1) or clear it to the background (2). Leaving it in place lets later frames store only the pixels that changed.
  • The NETSCAPE2.0 loop block. This optional block holds the loop count. 0 means loop forever. Leaving the block out means the GIF plays once.

Frame rate, delays and the 50 fps ceiling

Because delays are stored in hundredths of a second, the shortest useful delay is 20 ms, or 50 frames per second. Chrome, Firefox and Safari all play a delay of 10 ms or less as 100 ms, so a GIF set to "as fast as possible" often plays slower than a 20 ms one. Common video rates do not divide evenly: 24 fps (41.7 ms) is stored as 40 ms and plays at 25 fps. The timeline under the preview shows each frame as wide as its played delay, so a frame held for two seconds is easy to spot.

Hold a frame without extra bytes
To pause on one image, either give it a custom delay or duplicate it. With "Only store changed pixels" on, identical neighbouring frames are merged into one longer frame, so duplicates cost almost nothing.

Colours, dithering and file size

When every frame uses 256 colours or fewer, such as pixel art, UI screenshots or flat graphics, the tool keeps the colours exactly and the GIF is lossless. Photos have far more colours, so a palette is built from a sample of every frame and each pixel is matched to the nearest entry. Ordered dithering adds a fixed fine pattern that hides banding and stays still from frame to frame. Floyd–Steinberg spreads each pixel's rounding error to its neighbours. It looks smoother on a single frame, but the noise moves between frames, so backgrounds shimmer and files grow.

GIF compresses each frame with LZW and has no motion compression, so size grows with the square of the width and with the number of frames. Halving the width cuts the pixel count by about 75%. Storing only changed pixels helps a lot with screen recordings, where most of the frame stays still. The bytes-per-frame chart shows which frames cost the most.

GIF compared with MP4 and animated WebP

For long or full-colour clips, MP4 and animated WebP are often five to ten times smaller than a GIF of the same content. Many social platforms quietly convert uploaded GIFs to video for this reason. GIF is still the format that plays everywhere without a video player: in email, chat apps, README files, issue trackers and older software. That makes it a good fit for short loops, reaction images and product demos.

Accessibility: flashing, motion and alt text

WCAG 2.3.1 asks that content not flash more than three times in any one-second period, because fast flashing can trigger seizures in people with photosensitive epilepsy. The tool runs a rough brightness check on the preview and warns when a sequence looks risky. It is a heuristic, not a compliance test, and it does not detect red flashes. The preview starts paused when your system asks for reduced motion. When you publish a GIF, give it alt text that describes what happens in it, for example alt="Dragging a file onto the upload area", not just "animation".

Transparency is all or nothing
A GIF pixel is either fully transparent or fully opaque. Soft edges are blended onto the matte colour, so pick a matte that matches the page the GIF will sit on to avoid a light or dark halo.

Credits

Encoding uses gifenc by Matt DesLauriers (MIT licence), loaded the first time you create a GIF. Palette matching, dithering and frame differencing are this site's own code and also run in your browser.

Frequently Asked Questions

Is the GIF Maker free?

Yes, GIF Maker is totally free :)

Can I use the GIF Maker offline?

Yes, you can install the webapp as PWA.

Is it safe to use GIF Maker?

Yes, any data related to GIF Maker only stored in your browser (if storage required). You can simply clear browser cache to clear all the stored data. We do not store any data on server.

How does this GIF maker work, and are my images uploaded?

Nothing is uploaded. Your images are decoded, drawn, colour-reduced and encoded into a GIF inside this browser tab. The only download is this site's own GIF encoder code the first time you press Create GIF, so the tool keeps working offline after that.

What is the fastest frame rate a GIF can play at?

About 50 fps. GIF stores each frame's delay in hundredths of a second, so 20 ms is the shortest useful step. Browsers play any delay of 10 ms or less as 100 ms, so a GIF set to 100 fps actually plays at 10 fps. The tool shows the delay each frame will really play at.

Why is my GIF so big, and how do I make it smaller?

GIF compresses each frame with LZW and has no motion compression, so file size grows with width squared and with the number of frames. Photos and dithering noise compress poorly. Reduce the width, keep every second frame, use ordered dithering instead of Floyd–Steinberg, and leave 'Only store changed pixels' on.

Why do my photos look grainy or banded in the GIF?

A GIF can only use 256 colours per frame. With dithering off, gradients show bands. Ordered dithering adds a fixed fine pattern that stays still between frames. Floyd–Steinberg gives the smoothest single frame but its noise shimmers in animations and makes files larger.

Can a GIF have a transparent background?

Yes, but each pixel is either fully transparent or fully opaque. Pixels below the alpha threshold become transparent, and soft edges are blended onto the matte colour. Set the matte to the colour of the page the GIF will sit on so the edges don't show a halo.

Can I turn a video into a GIF here?

No. This tool builds a GIF from still images such as screenshots, photos or exported frames. Video files aren't supported here. Export the frames you want as images first, or use a dedicated video to GIF converter.