# Install guetzli with Homebrew, apk, apt, MacPorts, Nix, pacman, scoop

Perceptual JPEG encoder. Version 1.0.1 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:guetzli
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install guetzli
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install guetzli
```

  Evidence: MacPorts ports tree: graphics/guetzli/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add guetzli
```

  Evidence: Alpine Linux edge package indexes: guetzli from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install guetzli
```

  Evidence: Debian stable package indexes: guetzli from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#guetzli
```

  Evidence: nixpkgs package indexes: pkgs/by-name/gu/guetzli/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S guetzli
```

  Evidence: Arch Linux sync databases: guetzli from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

### Windows

- Scoop (92%):

```sh
scoop install main/guetzli
```

  Evidence: Scoop official bucket manifest trees: bucket/guetzli.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:guetzli
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/guetzli>
- **Version:** 1.0.1
- **Source summary:** Perceptual JPEG encoder
- **Homepage:** <https://github.com/google/guetzli>
- **Repository:** <https://github.com/google/guetzli>
- **Upstream docs:** <https://github.com/google/guetzli#readme>
- **License:** Apache-2.0
- **Source archive:** <https://github.com/google/guetzli/archive/refs/tags/v1.0.1.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- guetzli (cli)
- guetzli (alias)

## Dependencies

- libpng

## Build dependencies

- pkgconf

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.0.1
- Local data: ok
- Upstream repository: https://github.com/google/guetzli
- Upstream latest detected: v1.0.1 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

Guetzli is Google's perceptual JPEG encoder for producing smaller sequential JPEG files at high visual quality. It belongs to the same family of format-compatible compression experiments as Zopfli: spend more CPU time during encoding while keeping output compatible with existing decoders.

### Project history

Google announced Guetzli as open source on 2017-03-16. The announcement described it as a JPEG encoder for digital images and web graphics that targeted file-size reductions while remaining compatible with existing browsers, image-processing applications, and the JPEG standard.

The repository README says Guetzli-generated images are typically 20-30 percent smaller than libjpeg images of equivalent quality, and that Guetzli emits sequential, non-progressive JPEGs. The implementation uses a psychovisual approach focused on quantization decisions, with Butteraugli-related perceptual modeling present in the repository.

### Adoption history

Guetzli was quickly packaged because it offered an easy experiment for web image optimization: a single CLI that reads PNG or JPEG input and writes optimized JPEG output. The official README documents Homebrew and MacPorts installation paths, and the input metadata records packaging across Alpine, Homebrew, Debian, MacPorts, Nix, Arch, Scoop, and Ubuntu.

Its adoption was bounded by cost. The README warns that it uses about 300 MB of memory per megapixel and roughly one minute of CPU per megapixel, making it better suited to offline asset pipelines than interactive image conversion.

### How it is used

The CLI usage is direct: `guetzli [--quality Q] [--verbose] original.png output.jpg` or the same with JPEG input. The README recommends high-quality, preferably uncompressed input and notes that PNG alpha is flattened onto black because JPEG has no alpha channel.

Guetzli assumes sRGB input with gamma 2.2 and ignores color-profile metadata. That assumption is important in package notes because it affects whether the tool is appropriate for a given image workflow.

### Why package nerds care

Guetzli is a package-nerd favorite because it embodies a clear tradeoff: excellent density for legacy JPEGs, paid for with CPU and memory. It is a compact command-line artifact from a major research organization, easy to package, easy to benchmark, and easy to compare against libjpeg, MozJPEG, Zopfli, WebP, JPEG XL, and later Jpegli work.

Google's later Jpegli announcement explicitly places newer JPEG work in relation to earlier Guetzli-style heuristics, making Guetzli part of the historical path from high-effort JPEG optimization toward faster modern JPEG-compatible encoders.

### Timeline

- 2017-03-16: Google Open Source Blog announces Guetzli.
- 2017-03-21: GitHub release metadata shows the release series around the public launch window.
- 2017: README documents POSIX, Windows, macOS, Homebrew, MacPorts, and Bazel build paths.
- 2024: Google's Jpegli announcement discusses faster heuristics developed after earlier Guetzli-style approaches.

### Related projects

- Guetzli is related to libjpeg, MozJPEG, Butteraugli, Zopfli, WebP, JPEG XL, Brunsli, and Jpegli. Its distinguishing trait is staying inside the legacy JPEG format while using a slower perceptual search to improve compression density.

### Sources

- <https://github.com/google/guetzli>
- <https://opensource.googleblog.com/2017/03/guetzli-new-open-source-jpeg-encoder.html>
- <https://opensource.googleblog.com/2024/04/introducing-jpegli-new-jpeg-coding-library.html>
- <https://raw.githubusercontent.com/google/guetzli/master/README.md>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** guetzli
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - guetzli - 1.0.1-2: normalized package name match | Debian stable package indexes: guetzli from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | perceptual JPEG encoder | https://github.com/google/guetzli
- Nix - guetzli: normalized package name match | nixpkgs package indexes: pkgs/by-name/gu/guetzli/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - guetzli - 1.0.1-1build3: normalized package name match | Ubuntu 24.04 LTS package indexes: guetzli from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | perceptual JPEG encoder | https://github.com/google/guetzli
- apk - guetzli - 0_git20191025-r3: normalized package name match | Alpine Linux edge package indexes: guetzli from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Perceptual JPEG encoder that aims for excellent compression density at high visual quality | https://github.com/google/guetzli
- apk - guetzli-dev - 0_git20191025-r3: normalized package name match | Alpine Linux edge package indexes: guetzli-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Perceptual JPEG encoder that aims for excellent compression density at high visual quality (development files) | https://github.com/google/guetzli
- pacman - guetzli - 1.0.1-5: normalized package name match | Arch Linux sync databases: guetzli from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Perceptual JPEG encoder | https://github.com/google/guetzli
- MacPorts - guetzli: normalized package name match | MacPorts ports tree: graphics/guetzli/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/guetzli: normalized package name match | Scoop official bucket manifest trees: bucket/guetzli.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Archive and compression packages](https://www.automicvault.com/pkg/archive-compression-tools/) - Matched archive or compression metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [libpng](https://www.automicvault.com/pkg/brew/libpng/) - Runtime dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [caesiumclt](https://www.automicvault.com/pkg/brew/caesiumclt/) - Shares av.db curated category or tags: cli, image-compression, media.
- [minidjvu](https://www.automicvault.com/pkg/brew/minidjvu/) - Shares av.db curated category or tags: cli, image-compression, media.
- [jbig2enc](https://www.automicvault.com/pkg/brew/jbig2enc/) - Shares av.db curated category or tags: cli, encoder, image-compression, media.
- [jpeg-archive](https://www.automicvault.com/pkg/brew/jpeg-archive/) - Shares av.db curated category or tags: cli, image-compression, jpeg, media.
- [jpeg-xl](https://www.automicvault.com/pkg/brew/jpeg-xl/) - Shares av.db curated category or tags: cli, encoder, image-compression, media.
- [aften](https://www.automicvault.com/pkg/brew/aften/) - Shares av.db curated category or tags: cli, encoder, media.
- [darkice](https://www.automicvault.com/pkg/brew/darkice/) - Shares av.db curated category or tags: cli, encoder, media.
- [djvulibre](https://www.automicvault.com/pkg/brew/djvulibre/) - Shares av.db curated category or tags: cli, encoder, media.
- [grokj2k](https://www.automicvault.com/pkg/brew/grokj2k/) - Both packages work with overlapping file formats or content types. Shared terms: cli, compression, image, image-compression, jpeg.
- [libavif](https://www.automicvault.com/pkg/brew/libavif/) - Both packages work with overlapping file formats or content types. Shared terms: cli, encoder, image, jpeg, libpng.

## Combined YAML source

View the package source record on GitHub. [combined/guetzli.yml](https://github.com/automic-vault/db/blob/main/combined/guetzli.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
