Gifski
Turns video into GIFs that do not look like GIFs — thousands of colours instead of 256.
Homebrew formula Mac App Store
What it does
The GIF format allows 256 colours per frame. Every naive encoder picks one palette for the whole animation, which is where the banding and the muddy gradients come from. Gifski runs pngquant per frame, so each frame gets its own palette, and dithers across frames so the result stays temporally stable rather than shimmering.
The cost is time and file size — it is slower than ffmpeg and the output is usually larger, because it is spending those bytes on colour.
# from a video, 20fps, 800px wide
gifski -o out.gif --fps 20 --width 800 in.mp4
# from a sequence of frames
gifski -o out.gif --fps 20 frame_*.png
# smaller, at some quality cost
gifski -o out.gif --fps 15 --width 640 --quality 80 in.mp4Notes
- The Homebrew formula depends on
ffmpeg, which is what gives it video input. The App Store app is the same encoder with a drag-and-drop window. --widthmatters more than--qualityfor file size: halving the dimensions quarters the pixel count.- For a screen recording that is mostly flat UI,
ffmpegwithpalettegenis usually good enough and much faster. Gifski earns its time on real video — gradients, skin tones, motion.
Alternative to
| Alternative | Type | Trade-off |
|---|---|---|
ffmpeg with palettegen | Open source | One palette for the whole clip, far faster, smaller files |
| GIF Maker, GIF Editor | Free | A GUI with trimming and editing, ordinary output quality |
| CleanShot X | Paid | Records straight to GIF, no separate conversion step |
| ezgif.com | Free | No install, fine for one-off edits |
| An mp4 or WebM | — | Better quality at a fraction of the size, wherever a video tag is allowed |
Install
brew install gifski