Where GIFs come from and why WebP is the usual replacement
Most GIFs that people want to convert today are not animations at all. They are logos, buttons, banner slices and icons saved twenty years ago when GIF was the only widely supported format with transparency. The format limits every frame to 256 palette colours and compresses with LZW, which is fine for flat artwork and terrible for photographs. WebP, released by Google in 2010, handles both: it stores full 24-bit colour, keeps an 8-bit alpha channel, and at the same visual quality produces files that are usually a fraction of the size.
The trade is that WebP on this page is lossy. The encoder in the worker is the WebAssembly build of libwebp from the jSquash project, driven by the quality slider you see above. There is no lossless toggle here. If you need a pixel-exact copy, use GIF to PNG instead.
Animated GIFs become a single still
WebP can hold animation, but this tool does not produce animated WebP. The GIF is decoded by the browser into one bitmap, and that bitmap is the first frame. Every later frame is discarded before encoding begins. This is a hard limit of the decoding path, not a setting. A looping sticker of 40 frames comes out as one frame in WebP, which is often exactly what someone wants for a preview image, but it is not a way to shrink animations.
What the lossy step does to palette artwork
A GIF decoded into memory is just RGBA pixels, and the encoder does not know they came from a palette. Two things follow from that. First, transparency survives: WebP supports alpha even in lossy mode, so a transparent background stays transparent. Second, the encoder's DCT-style compression treats hard pixel edges like any other detail. At quality 80, the default, text and outlines in a typical logo look clean. Below about 50, thin lines soften and a faint halo appears around sharp colour boundaries. Dithered GIFs are the awkward case: the dither pattern looks like noise to the encoder, costs bytes to preserve, and looks worse when partly smoothed away. For dithered files, either accept a higher quality or go to PNG.
Picking a quality and what size to expect
The slider runs from 20 to 95. For flat graphics and logos, 85 to 90 is a safe range where the difference from the source is hard to spot. For old photographic GIFs, 70 to 80 is plenty because the picture was already reduced to 256 colours and has no fine detail to lose.
As a worked example, a 500x500 transparent logo GIF of 45 KB typically lands between 12 and 25 KB as WebP at quality 80. A 800x600 photographic GIF of 350 KB usually becomes 40 to 70 KB. A 2 MB animated GIF turns into a first-frame WebP of a few tens of kilobytes, because the other frames are gone rather than compressed. Treat these as ballpark numbers; the actual result depends on how much flat colour the picture contains.
Compatibility and when to keep the GIF
All current browsers, WordPress, most social networks and modern desktop viewers open WebP. Some older software does not: the classic Windows Photo Viewer, a few email clients that render inline images, and older versions of Photoshop without a plugin. If the file is headed somewhere like that, GIF to JPG is the more conservative choice, at the cost of transparency.
Keep the GIF when the animation matters, or when the source is a tiny palette image of a few kilobytes where WebP gains nothing. Everything on this page runs locally in a Web Worker; multiple files are processed in order and each result is downloaded on its own. For a broader look at where WebP sits against AVIF and JPEG, read WebP vs AVIF vs JPEG.