JPG to AVIF, in your browser
Drop a JPG. Get an AVIF up to 50% smaller. The encoder runs in your tab and is SHA-256 pinned.
Loading...
Files stay on your device. Nothing uploads.
Why convert JPG to AVIF?
AVIF compresses photos around 50% smaller than JPG at the same visible quality. For a website, that translates directly to faster page loads and lower CDN bills. For an archive, it means more photos per gigabyte.
This is the first FileForge converter that runs a real WASM module: the AVIF encoder from Squoosh, repackaged by the jSquash project. The runtime fetches that WASM, verifies its SHA-256 against the published manifest, and only then hands the bytes to the encoder. Open the "How do I know" widget after a conversion to see the exact hash that ran.
Picking a quality
AVIF quality ranges from 1 (smallest, ugly) to 100 (lossless, huge). The sensible photo range is 50-70; the default is 60 because AVIF holds detail well even at lower numbers. For graphics with flat colors, push quality up to 80-90 to avoid edge ringing.
Speed and memory
AVIF encoding is computationally heavy. A 12 MP photo takes 5-15 seconds on a modern laptop. Memory usage scales with image area; very large images may exhaust browser memory. The "memory budget" hint in this converter's manifest reflects that.
Frequently asked questions
- Why is AVIF encoding so much slower than WebP?
- AVIF compresses harder, which means more CPU work. The trade-off is smaller files. We use the single-threaded encoder for compatibility; multi-thread arrives in a later release.
- How can I be sure the WASM is what you say it is?
- Compare the SHA-256 in the "How do I know" widget against the value in /manifests/jpg-to-avif.json. They match because the runtime refuses to run any module that does not.
- Does it preserve transparency?
- JPG has no alpha to preserve, but if your input were PNG or WebP, transparent regions encode cleanly into AVIF.