Please stop making gifs at all. It's a terrible format that creates massive files that look like shit.
Webm is supported almost everywhere now and manages better quality at higher framerates and smaller file sizes.
This is a most excellent place for technology news and articles.
Please stop making gifs at all. It's a terrible format that creates massive files that look like shit.
Webm is supported almost everywhere now and manages better quality at higher framerates and smaller file sizes.
Counterpoint: GIFs loop by default in basically every app, WEBM doesn't
Can just use avif instead, it holds an AV1 stream and acts like gifs/images do WRT looping — also very broad support (more than AV1 in WebM containers).
Demonstration:

Edit: switched to an example with simpler decode requirements.
Your demonstration is a sluggishly loading static image on my end, so I guess support isnt that widespread :P
(Im using the app "Summit")
I checked that app's source code, and basically they're doing their own avif decode call instead of relying on a browser/webview to handle it. So essentially they forgot/don't know/don't intend to implement animated avif. Looks like they also use the aom reference decoder instead of using something faster like dav1d.
Static image, also Summit.
Static image, Eternity.
It's unfortunately not that simple. The AVIF doesn't load at Jerboa, for example :/
Works great as a static image. Would probably be better if it actually played...
(on Arctic on ios) the uploaded image displays as a static image for me. Even clicking on it and waiting, it doesn’t seem to animate :T
Edit: I checked again through the Voyager app, and it did indeed load, though it took around 45-60 seconds* for it to get through the entire animation before it started looping again, albeit at the same speed as the first playthrough.
I chalked it up to the outdated hardware, as you mentioned in your reply. Cheers! :)
Apple has limited support for AV1 streams (yes, even for software decode) unless on very recent hardware. Here's an AV1 stream inside a webm container for comparison, would be interesting to see if that works over the avif container on your stack.
Works for me Voyager Pixel 8 Pro
This doesn't work for me but the original one you posted does (Voyager, iPhone 14 pro)
Your example image doesn't work in boost while the gif above does :/
For the record, this is static in my Lemmy app (Summit).
Same here
I’ve honestly given up on support of new formats.
Here we are, 2026, and brand new software like Lemmy:
Doesn’t support AVIF
Doesn’t support JXL
Doesn’t support WebP
Won’t upload short, small videos either.
Meanwhile:
Many clients won’t play animated WebP
Most clients won’t play APNG
Many won’t load AVIF
Basically only Apple/Safari will load JXL
VP8/VP9/AV1 support in video isn’t universal
What am I supposed to do?
I used to send support requests over this, but I’ve given up. We are going to be stuck with SDR JPEGs and blocky GIFs forever, especially since media format literacy seems to be globally.
Maybe I overestimated how widespread support for alternatives is. The problem seems to be to be that while most apps will support an alternative, no single format is supported everywhere (xkcd). According to another comment US messaging apps don't support any alternatives, which is enough to keep GIF alive on its own.
Webm is supported almost everywhere now and manages better quality at higher framerates and smaller file sizes.
Anybody who has compared animated WebM vs animated JPEG XL?
I used to love optimising images in gif format. I would make like 4–30kb memes and animations for my friends in Photoshop CS2. It's actually extremely efficient and lightweight if you do it right… You have cool tools like transparency between frames and unbroken colour blocks don't take any additional storage space. There's nothing wrong with gif.
The problem is how people use them. We take a live action video file and shove it through an automated converter tool that doesn't give a shit about efficiency and will do a complete repaint between frames and use 256+ colour palette. Then you end up with an ugly dithered overcooked piece of shit 50mb 10 second animation. Gif was not designed for this…
Problem is the medium people use to send GIFs to each other doesn’t support any alternatives
"...massive files..."
I thought the file size was part of the format specification, no?

the same file without visual quality loss could be a 156.79 KiB webp file, saving energy, internet, and storage costs
Most people do this:
ffmpeg -i video.mp4 output.gif
...no, most people have never heard of ffmpeg and throw it in an online converter.
Which are probably just web front ends to the above?
Definitely, but then it's on whoever made the web tool. Still not "most people".
I just tested this with a 8-second, 35MB mp4 video.
The "don't do this" command made a crappy looking 316MB gif.
The suggested pair of commands, using the palette file, made a 57MB very nice looking gif.
Seems legit to me but I'm not, as you say, an expert.
that's still massive, an animated webm will probably be more useful
Thanks. This is going straight to my 'cool info to never be used' pile.
As much as everyone likes to trash on it, this is part of what webp is for. Animated, loopable images at super small sizes that display on just about anything that runs a browser.
Don't get mad at people for using logical command line switches.
Get mad at ffmpeg for trash defaults.

I wish the article had examples. It would be cool.
There is this older tutorial from 2015 that goes into more detail and includes examples.
ffmpeg <3 good info here, also give Gifsicle a look if you need help getting your gifs smaller
I always liked to use Photoshop with the 'save for web (legacy)' export. Gives you a handy preview of how big it will be and lots of options.
Really interesting and useful read, thanks.

Nope


Nobody: zzzzz
Me reading about 256 bit color conversion at 3 am: 🤔🥱🤓🤷💀🐩
A lot of that is mostly the fault of the technology. But we still like it anyway.
Gif is indeed a shit format for the purpose.
Video codecs are downright magical and everything down to your average toaster packs a hardware decoder for h264, so this is the bare minimum we should actually be using for this use-case.
I know that's hyperbole, but I'll be cold in the ground before a "smart" toaster is allowed in this house.