Skip to content

Convert Video to GIF

Turn a few seconds of video into a looping GIF for a chat, an issue tracker or a slide — no watermark, no account, and nothing stored. Choose the stretch, the smoothness and the width, and see what it will weigh before you save.

  • Never stored
  • No queue, no waiting
  • No signup, no watermark

How it works

1

Add your video

Drop an MP4, MOV, WEBM, AVI or any other video. A strip of frames appears.

2

Pick the seconds

Set the start and end, then the frame rate and width. Ten frames a second at 480 pixels suits most chats.

3

Download the GIF

It loops for ever, and the file size is shown before you save.

What a GIF can hold, and what it costs

Frames are sampled at fixed moments rather than blended together: ten a second means the nearest decoded frame at every tenth of a second, so a 30 fps source has two frames in three discarded. Motion that was smooth strobes a little, and there is no way around it short of raising the rate — which raises the file in direct proportion, because a GIF pays for each frame separately.

Colour is where the format shows its age most plainly. Each frame is reduced to 256 colours chosen from that frame, and nothing is dithered, so a sky, a gradient or a skin tone arrives in visible bands — and because the palette is recomputed for every frame, those bands shift slightly from one frame to the next, which reads as a faint shimmer across the loop. Flat material has no such trouble: a screen recording, a terminal session or line animation often contains fewer than 256 colours to begin with and comes out exact.

Timing is stored as a delay per frame in hundredths of a second, so only some frame rates are exactly representable. Ten a second is 10 hundredths exactly; fifteen would be 6.67, so frames alternate between 7 and 6 with the rounding carried along, which keeps the whole loop the length you asked for instead of letting it drift short.

When you want something else

ffmpeg makes better GIFs than this does, and on photographic material it is not close: its palettegen and paletteuse filters build one palette for the whole clip and then dither against it, which removes the banding and the shimmer that per-frame palettes cause. gifsicle will optimise the result further, and its lossy setting further still. Neither is reachable from a browser, and if you make GIFs regularly they are worth the two commands.

Frequently asked questions

Why is my GIF so big?

GIF is from 1989: no motion compression, and 256 colours a frame. A three-second clip at 480 pixels and 10 fps is usually 1–3 MB, and doubling the width roughly quadruples that. The width and the frame rate are the two dials that matter — drop one of them before you drop the length.

What frame rate should I choose?

10 fps looks fine for screen recordings and reads as smooth for most action; 15 fps is noticeably smoother and half again as large; 25 fps is for short, fast clips where the motion is the point.

How long can the GIF be?

Up to a minute, though anything past ten seconds is usually better as a video. The limit is there because a longer GIF is tens of megabytes — slower to load than the video it came from.

Is my video stored anywhere?

No. Frames are drawn and the GIF is built here, with no watermark on the result.

Why do colours look banded?

A GIF frame can hold only 256 colours, so gradients, skies and skin tones get banded. Each frame is given its own best-fitting palette, which is as good as the format allows.

Does it keep the sound?

A GIF cannot hold sound at all. If the sound matters, keep the video and use Compress Video instead.

Good to know: At most 60 seconds and 900 frames per GIF. Transparency is not carried over. Every frame is stored in full, so the file size grows with the length, the width and the frame rate.

Put this tool on your website

Free for any blog, class page or help article. Paste one snippet and your visitors can use it right on your page.