The problem with GIF in 2026
GIF was designed in 1987 for 256-color palettes and compresses with LZW — a scheme older than the web itself. Three decades of improvements later, an animated GIF is typically 3–8× larger than the same animation in WebP or APNG at equal visual quality. It also can't do partial transparency (pixels are either opaque or hole-punched) and tops out at 256 colors, which is why gradients band.
Head-to-head
| GIF | Animated WebP | APNG | |
|---|---|---|---|
| Colors | 256 | 16.7M | 16.7M |
| Transparency | 1-bit | Full alpha | Full alpha |
| Typical size (5s, 480px) | 4–8 MB | 0.8–1.5 MB | 1.5–3 MB |
| Browser support | Everything | ~97% | ~95% |
| Loop control | Basic | Full | Full |
| Frame timing precision | 10ms steps | 1ms | Flexible |
When each format still wins
- GIF: maximum-compatibility contexts — old chat clients, some email clients, ancient embeds. Or when the retro 256-color look is the aesthetic.
- Animated WebP: the default choice for web animation. Smallest files, full color, works everywhere modern. Convert existing GIFs with GIF to WebP and watch them shrink 60–80%.
- APNG: when you need PNG semantics — e.g. iOS contexts, or when tooling expects a .png extension but you want motion. GIF to APNG upgrades GIFs to full color.
Making animations from scratch
From a video clip
The Video to GIF tool seeks through the video in your browser (no upload), captures frames at your chosen fps, and encodes them. Practical settings:
- Chat reactions: 2–4 s, 10–12 fps, 320–480 px, 128 colors → 1–3 MB GIF.
- Product demos: 6–10 s, 12–15 fps, 480–640 px — prefer Video to WebP to keep it under 2 MB.
- Documentation: use Video Frame Extractor to pull key frames as PNGs instead of animating.
From a sequence of images
GIF Maker stitches photos into a GIF (delay, size and color controls); APNG Maker does the same for full-color APNG. Slideshow-style animations at 500–1000 ms per frame are their sweet spot.
Trimming, reversing and speeding up
Existing GIFs can be edited locally too: GIF Trimmer cuts sections, GIF Speed Changer re-times, GIF Reverser plays backwards (or boomerangs), and GIF Optimizer cuts colors and drops frames to shrink files.
How the offline part works
Decoding GIFs runs through a JavaScript parser (omggif) that handles interlacing, local palettes and frame disposal. Encoding uses gifenc — a pure-JS encoder with pairwise-nearest-neighbor color quantization. WebP encoding uses Google's libwebp compiled to WebAssembly. All of it executes in your tab; a 5-second 480p clip encodes in a few seconds on a normal laptop, with the network cable unplugged if you like.