WebP to GIF converter

Drop your WebP here

or click to choose — animated or still WebP

Drop an animated WebP and get a GIF that plays at the same speed. Frame timing is carried over carefully, because GIF counts time in 10 ms steps and browsers slow down frames shorter than 20 ms. Transparent stickers stay transparent, with soft edges blended onto a colour you choose. Still WebP files work too. Nothing is uploaded; it all runs in your browser.

Why convert WebP to GIF at all

Animated WebP is smaller and sharper than GIF, and every current browser plays it. The trouble starts when the file leaves the browser. Many chat apps, forums, email clients, slide tools and older editors still accept animation only as GIF, and a WebP dropped into them either shows a single frozen frame or is refused. Stickers saved from messaging apps and clips downloaded from GIF sites are often WebP under the hood, which is why the question comes up so often.

Converting is simple to describe and easy to get slightly wrong. A GIF is a much older format with three hard limits, and each one changes your animation unless the converter handles it on purpose. This page is built around those three limits and tells you, for your file, what each of them did.

Limit 1: GIF keeps time in 10 ms steps, and browsers slow very short frames

WebP stores each frame’s duration in milliseconds. GIF stores it in hundredths of a second, so every duration has to be rounded. On top of that, browsers do not play GIF delays of 0 or 1 hundredth as written: they hold those frames for about 100 ms. We measured this in Chrome on 3 October 2026 with GIFs whose first frame was 10, 20 and 50 ms long. On screen, the 10 ms frame stayed up longer than the 50 ms one.

That turns ordinary files into wrong-speed GIFs. These are the totals for common WebP frame rates when each frame is rounded on its own, compared with what this tool produces:

WebPReal lengthRounded frame by frameThis tool
30 frames at 33 ms (30 fps video)0.99 s0.90 s, 9% fast0.99 s
60 frames at 16–17 ms (60 fps)1.00 s1.20 s, 20% slow1.00 s
24 frames at 42 ms (24 fps)1.01 s0.96 s, 5% fast1.01 s
20 frames at 10 ms (fast sticker)0.20 sabout 2 s in a browser, 10× slow0.20 s

The fix is to round the running clock instead of each frame. A 33 ms animation becomes 30, 30, 40, 30, 30, 40 ms and so on, and the total stays right. Frames that would end up shorter than 20 ms are skipped by default. The frames around them still arrive at their original moments, so the speed holds, and at 50 frames a second nobody sees the gap. If you need every single frame, choose “Keep every frame, play slower”. The report then says how much longer the GIF runs.

Limit 2: transparency is all or nothing

A WebP pixel can be partly see-through: the soft edge of a sticker, a drop shadow, antialiased text. A GIF pixel is either fully transparent or fully solid. A converter has to decide what happens to every in-between pixel, and the usual result is a jagged edge or a grey fringe around the artwork.

Here, pixels that are at least half opaque are blended onto an edge colour and become solid. The rest become fully transparent. Set the edge colour to whatever the GIF will sit on (white for most pages and light chat themes, a dark grey for dark mode) and the edge looks the way it did in the WebP. The report tells you what share of the visible pixels were half-transparent: in our test sticker, a red disc with a soft outline, it was 22%, all of it along the edge. If the GIF will always sit on one background, choose “Fill with the colour below” to drop transparency altogether.

Limit 3: 256 colours for the whole animation

A GIF has one palette of at most 256 colours. A WebP made from video can use tens of thousands. The palette here is built from samples of every frame rather than the first one, so a scene that changes colour halfway through is not squeezed into the opening palette. Dithering mixes neighbouring palette colours to imitate the missing ones; keep it on for photos and gradients, and turn it off for flat cartoons, pixel art and screen recordings, where it only adds noise and file size.

Getting the GIF smaller

Expect the GIF to be larger than the WebP, often several times. GIF compression dates from 1987. After converting, the frames are passed through gifsicle, which stores only the part of each frame that changed. If the result is still too big for where it is going, these help most, in order:

  1. Width. Halving the width cuts the pixel count to a quarter.
  2. Colours. 128 or 64 colours are usually invisible on stickers and cartoons.
  3. Dither off for flat artwork.
  4. Then Compress GIF, which can drop frames and use lossy compression down to a target size.

How the frames are read

An animated WebP is a list of frames, and most of them cover only part of the picture. Each one comes with an offset, a duration and two flags that say whether it is blended over the previous picture and whether its area is cleared afterwards. This page reads each frame from the file, decodes it with your browser’s own WebP decoder, and puts the frames together by those rules. We checked the result against the reference WebP library on four test animations (85 frames, lossy and lossless, with transparency and partial frames), and every sampled pixel matched exactly.

Going the other way? GIF to PNG and video to GIF are next door, and WebP to PNG keeps every colour of a still WebP.

Frequently asked questions

Does this convert animated WebP files?

Yes, that is what it is built for. Every frame is read from the WebP file with its own duration and position, put together exactly as a browser would show it, and written to the GIF. A still WebP becomes a one-frame GIF.

Why does my converted GIF play slower or faster than the WebP?

GIF stores frame times in hundredths of a second, and browsers play any frame of 0 or 10 ms at about 100 ms. A WebP made from 60 fps video has 16 to 17 ms frames; rounding each one on its own gives 20 ms, so it runs 20% slow. 30 fps (33 ms) rounds to 30 ms and runs 9% fast. This tool rounds the running total instead, so the GIF keeps the WebP's timing.

Can a GIF keep the transparency of my WebP?

Partly. A GIF pixel is either fully transparent or fully solid, while WebP has 256 levels. Fully transparent areas stay transparent. Half-transparent pixels, such as soft edges and shadows, are blended onto an edge colour; set it to the colour of the page or chat the GIF will sit on and the edges look clean.

Why is the GIF bigger than the WebP?

GIF compression is from 1987 and much weaker than WebP's. A GIF of the same animation is often several times larger. To shrink it, choose a smaller width or fewer colours here, untick Dither for flat cartoons, or run the result through Compress GIF.

Will the GIF lose quality?

Some colour, yes. A GIF can hold 256 colours for the whole animation, while a WebP frame can have millions. Dithering hides most of the banding in photos and gradients. Cartoons, stickers and screen recordings with few colours convert with little visible change. The report shows how many colours your WebP used.

Is my file uploaded?

No. The WebP is read and converted inside your browser and never leaves your device. There is no account, no watermark and no limit on the number of files.