AVIF is the best image codec shipping in browsers today. It's also the one your accountant's email client doesn't recognize. Convert to JPG whenever compatibility beats compression.
or drag and drop your image here
Supports JPG, JPEG, PNG, WEBP, SVG, GIF, HEIC, HEIF, BMP, TIFF, HDR, JP2, RAF, PSD, CR3, DNG, APNG, AVIF, AVI, ESP, EXR, J2C, J2K, JXL, PFM, PNM, PPM, PSB, SGI, MPEG, PDF
Drop AVIF files downloaded from modern websites or exported from AV1-capable tools. Lossy, lossless, and HDR AVIFs all decode.
Decoded pixels compose against a white background (JPG has no alpha). Wide-gamut color maps to sRGB. The result encodes as JPG at quality 90.
Output works in every JPG-capable app — every OS, every version, every legacy tool. Filenames preserved with .jpg extension.
Convert images between these related converters
Convert AVIF to JPG for better compatibility and optimization
Improved file compatibility and optimized performance
Professional-grade conversion with quality preservation
excellent for photos with advanced JPG encoding
Perfect for photography, web images, social media
Handles next-gen compression, excellent quality, HDR support from AVIF files
AVIF decoder runs in your browser, no uploads needed
convert a folder of AVIFs to JPGs in one batch
Trade file size for compatibility where compatibility wins
Microsoft Audio/Visual Interleaved
Joint Photographic Experts Group JFIF format
Note, JPG is a lossy compression. In addition, you cannot create black and white images with JPG nor can you save transparency. Requires jpegsrc.v8c.tar.gz. You can set quality scaling for luminance and chrominance separately (e.g. -quality 90,70). You can optionally define the DCT method, for example to specify the float method, use -define jpeg:dct-method=float. By default we compute optimal Huffman coding tables. Specify -define jpeg:optimize-coding=false to use the default Huffman tables. Two other options include -define jpeg:block-smoothing and -define jpeg:fancy-upsampling. Set the sampling factor with -define jpeg:sampling-factor. You can size the image with jpeg:size, for example -define jpeg:size=128x128. To restrict the maximum file size, use jpeg:extent, for example -define jpeg:extent=400KB. To define one or more custom quantization tables, use -define jpeg:q-table=filename. These values are multiplied by -quality argument divided by 100.0. To avoid reading a particular associated image profile, use -define profile:skip=name (e.g. profile:skip=ICC).
Compression loss, transparency, HDR, and why AVIF isn't universally accepted yet.