Research notes

Animated GIF to WebP: how much smaller, and what breaks

We converted eleven animated GIFs to WebP and back, compressed them as GIF, and turned a NASA clip into both, measuring every file.

Updated 24 September 2026

Converting an animated GIF to WebP saved between 45% and 84% on ten of the eleven GIFs we tried. The eleventh, a 728-byte loading spinner, came out 52% larger. Every file kept its exact running time, to the millisecond.

We ran eleven animated GIFs from Wikimedia Commons through our GIF to WebP tool at its default settings on 24 September 2026, in Chromium 153 on a laptop: stickers, an emoji, two screen recordings, photo loops and a spinner. The same files went through our GIF compressor, which keeps them as GIF, and back from WebP to GIF, to see what the return trip costs.

Eleven GIFs, three ways to make them smaller

File sizes, WipeTheAI GIF to WebP (quality 80, lossy and lossless both tried, the smaller kept) and Compress GIF, Chromium 153, 24 September 2026 (n=11 Wikimedia Commons GIFs)
GIFFramesOriginalAs WebPWhich WebP wonCompress GIF, OffCompress GIF, Medium
Codespell terminal screencast, 1024×76819420 KB91 KB (−78%)Lossless278 KB (−34%)278 KB (−34%)
OpenRefine screencast, 806×779130244 KB109 KB (−55%)Lossless217 KB (−11%)215 KB (−12%)
Durian sticker, 1080×1080504.62 MB2.55 MB (−45%)Lossy4.54 MB (−2%)4.54 MB (−2%)
“Citation needed” sticker, 408×408332.6 KB17.5 KB (−46%)Lossy30.3 KB (−7%)26.9 KB (−17%)
Noto animated emoji, 512×51220472 KB121 KB (−74%)Lossy439 KB (−7%)422 KB (−10%)
Apple blossom cinemagraph, 640×36424878 KB346 KB (−61%)Lossy868 KB (−1%)641 KB (−27%)
Melting ice cubes, 280×450493.39 MB688 KB (−80%)Lossy3.28 MB (−3%)1.86 MB (−45%)
Muybridge galloping horse, 300×20015568 KB88.8 KB (−84%)Lossy574 KB (+1%)441 KB (−22%)
Rotterdam harbour at night, 400×2629388 KB127 KB (−67%)Lossy189 KB (−51%)67.3 KB (−83%)
Northern lights time-lapse, 500×331985.05 MB1.20 MB (−76%)Lossy5.05 MB (0%)2.57 MB (−49%)
Eight-bar spinner, 20×208728 B1,104 B (+52%)Lossless692 B (−5%)692 B (−5%)

Lossless WebP won on exactly the three files made of flat colour: both screen recordings and the spinner. Every photo, sticker and emoji came out smaller as lossy WebP, which is why our tool encodes both and keeps whichever is smaller rather than asking you to choose.

Two results go against the usual advice. The Rotterdam file, nine frames of the harbour at night shown for up to 2.5 seconds each, was smallest as a GIF: 67 KB with Medium, against 127 KB as WebP. And a 20-pixel spinner is better left alone: there was nothing for WebP to save, and it came out 376 bytes bigger.

Timing survived everywhere. We read every frame’s time back from each output and the total matched the original in all eleven, including the Rotterdam file, whose frames run from 0.03 to 2.5 seconds. Frames that were exact copies of the one before were folded into it, their time added on: the northern lights went from 98 frames to 78 with the same 3.92 seconds.

Our own tool made two of them bigger, until we fixed it

On the first run that morning, the OpenRefine screencast came out of our GIF to WebP tool at 1.15 MB, 4.7 times the 244 KB GIF. The cinemagraph grew from 878 KB to 1.24 MB. Both GIFs store most frames as small rectangles, only the part that moved: 127 of the screencast’s 130 frames and 23 of the cinemagraph’s 24. Our WebP writer saved every frame whole, so a mouse pointer moving across a still page cost a full screenshot each time.

It now stores only the rectangle that changed, as the GIF did. That took the screencast to 109 KB and the cinemagraph to 346 KB, the numbers in the table. If a converter hands you a WebP bigger than the GIF, this is the likely reason.

What happens when you turn WebP back into GIF

Lossy WebP invents colours. A middle frame of the cinemagraph had 255 colours as a GIF and 48,981 after conversion; the “Citation needed” sticker went from 251 to 5,573. GIF allows 256 per frame, so going back means squeezing thousands of near-identical shades into a palette again, and the file pays for the noise.

GIF to WebP and back to GIF with WipeTheAI WebP to GIF (256 colours), Chromium 153, 24 September 2026
GIFOriginal GIFWebPBack to GIF
Apple blossom cinemagraph878 KB346 KB1.14 MB
Durian sticker4.62 MB2.55 MB5.54 MB
“Citation needed” sticker32.6 KB17.5 KB32.2 KB
Northern lights time-lapse5.05 MB1.20 MB3.66 MB
OpenRefine screencast244 KB109 KB (lossless)226 KB

So keep your original GIF. A GIF made from a lossy WebP is usually bigger than the one you started with and looks no better. The screencast, stored losslessly, came back at 226 KB, close to its original, because nothing was added on the way. Transparent stickers lose their soft edges too: a GIF pixel is either see-through or solid.

When you have to stay with GIF

If the place you are posting to only takes GIF, our GIF compressor does two things. With Ignore small changes set to Off it rewrites the file so each frame stores only pixels that changed, and changes nothing you can see: the terminal screencast lost 34% that way. Medium also treats pixels that shift by a tiny amount as unchanged, which is where photo loops shrink: the melting ice cubes went from 3.39 MB to 1.86 MB, the northern lights from 5.05 MB to 2.57 MB. When we pushed the threshold a little past Strong, the northern lights sky turned blotchy in the frames we checked, so we wouldn’t go that far on photos.

Our longest test file, a 41.2 MB screen recording of 982 frames at 1438×761, is too big to hold in memory whole. The compressor opened it at 359×190, which it says on screen, and made a 2.11 MB GIF of 533 frames (frames with no visible change were merged into the one before) running the same 40.93 seconds; as WebP the same frames were 1.32 MB.

Video to GIF: the size table

For a clip we used NASA’s public-domain video of Hurricane Erin seen from the International Space Station, starting 20 seconds in, through our Video to GIF tool’s own code.

Clip from NASA's Hurricane Erin video (1920×1080 WebM), WipeTheAI Video to GIF, Chromium 153, 24 September 2026. GIF with 256 and 64 colours, animated WebP at quality 75
ClipFramesGIF, 256 coloursGIF, 64 coloursWebP
2 s, 320 px wide, 10 per second20412 KB244 KB63.8 KB
2 s, 480 px, 10 per second20787 KB463 KB107 KB
5 s, 320 px, 10 per second501.02 MB604 KB159 KB
5 s, 480 px, 10 per second501.98 MB1.14 MB267 KB
5 s, 480 px, 15 per second752.85 MB1.69 MB399 KB
5 s, 640 px, 10 per second503.07 MB1.70 MB378 KB
10 s, 480 px, 10 per second1003.99 MB2.25 MB531 KB

WebP was 6.4 to 8.1 times smaller than the 256-colour GIF in every row. Going from 10 to 15 frames a second cost 44% more as GIF; widening from 480 to 640 pixels cost 55%. A 5-second, 480-pixel GIF of real video lands near 2 MB, which is already over the limit some sites set, so if the destination accepts WebP or video, use that.

Sources

  1. Wikimedia Commons: Codespell screencast (GFDL 1.3)
  2. Wikimedia Commons: OpenRefine data extension screencast (CC BY-SA 4.0)
  3. Wikimedia Commons: Wikimania 2023 animated sticker, Durian (CC0)
  4. Wikimedia Commons: Wikipedia iOS sticker, Citation Needed (MIT)
  5. Wikimedia Commons: U+1FADC Noto Emoji Color Animated (CC BY-SA 4.0)
  6. Wikimedia Commons: Cinemagraph de fleur de pommier, 640px (CC BY-SA 3.0)
  7. Wikimedia Commons: Melting icecubes (public domain)
  8. Wikimedia Commons: Muybridge race horse animated (public domain)
  9. Wikimedia Commons: Rotterdam harbour by night (attribution)
  10. Wikimedia Commons: Northern Lights timelapse (CC BY-SA 4.0)
  11. Wikimedia Commons: Throbber, eight bars (public domain)
  12. Wikimedia Commons: Screen recording of Vector 2022 skin (CC BY-SA 4.0)
  13. Wikimedia Commons: Hurricane Erin seen from the International Space Station, NASA (public domain)