Compress WebP images

Drop WebP files below and get smaller ones back. This helps most with WebPs exported at a high quality by an editor or a CMS. Up to 16 MB a file as a guest or 32 MB with a free account. Free. No account, no watermark.

  • Stays a WebP
  • Transparency kept
  • Original returned if nothing is smaller
Compression Level
None
No compression, only apply settings on image
Lossless
Without any visual change in the image quality
Ultra
Max compression with some quality loss
Smart
Balance between the image quality and compression
Change Format Will allow you to convert images to different extensions
Resize Will allow you to change the width, height or scale of images
Keep EXIF Will allow you to preserve meta data in images
Maximum file size is 16 MB per image and supported formats are: PNG, JPG, JPEG, WEBP, GIF, HEIC, HEIF, TIFF, TIF
Guests get 20 images a day, 20 left today. A free account gets 50 a day.
Delete this image?
The image and its optimized copy will be removed from storage. This cannot be undone.

Rename this image
Choose the name the optimized image downloads with. Its format stays the same.

Uploaded as

Rename the selected images
Each image gets this name and a number, counted in the order they were uploaded. Their formats stay the same.

Share this image
Choose the compression level that suits your images
Level What it promises What happens Pick it when
Lossless
Not one pixel changes in a JPEG, PNG or GIF The file is repacked, never re-encoded. JPEGs get an optimised Huffman table and progressive scan, PNGs a tighter deflate pass, GIFs a lossless gifsicle run. A lossy WebP has no repack step, so it is re-encoded at the highest quality the level allows. A sideways phone JPEG is rotated losslessly on the way through and keeps its colour profile. The one exception to the promise is a PNG or WebP tagged with a wide-gamut profile such as Display P3: its colours are converted to sRGB, so the values change but the picture doesn't. Logos, line art, anything you'll edit again, or when the file is evidence.
Smart
No visible change, targets 40 dB PSNR and a perceptual score of 70 A quality search runs per image and stops at the lowest quality that still clears the PSNR target. That answer is then scored on the SSIMULACRA 2 scale, because an average over every pixel lets a mostly flat picture through at a quality its detail doesn't deserve, and when it falls under 70 the search moves back up until it doesn't. Photos and graphics end up at different qualities because they need different ones; an image that cannot reach the targets inside the quality ceiling is encoded at the ceiling. Almost everything on a website. This is the default for a reason.
Ultra
Smallest file, targets 34 dB PSNR and a perceptual score of 50 The same two-stage search with lower targets. Fine texture softens a little; edges and text stay sharp. Thumbnails, backgrounds, email images, anything shown small or blurred anyway.
None
No compression at all Only the resize, conversion or metadata setting you chose is applied. An untouched upload comes back byte for byte. You only wanted to resize or convert, and quality is someone else's decision.

Measured, not estimated

What compression did to a real WebP

One file, and an honest one: a product shot exported from an editor at quality 92, which is how most oversized WebPs come to exist.

Sample Original Lossless Smart Ultra
Coffee, WebP 1800 by 1200 59 KB WEBP 19 KB 67.9% smaller 16 KB 73.3% smaller 13 KB 77.5% smaller

Showcase product shot, 1800 by 1200. Even the Lossless column is a re-encode here, because a lossy WebP has no lossless repack step. It's encoded at quality 75, the ceiling for a WebP source.

What to expect

A WebP is already compressed. Sometimes too little.

A JPEG can be repacked without touching its pixels. A lossy WebP can't; there's no equivalent trick. So every level here decodes your WebP and encodes it again with cwebp, at its most thorough setting (-m 6 with ten passes) for all but very large images.

Whether that helps depends on how the file was made. Editors and site builders often export WebP at quality 90 or more, far above what the picture needs. Those files shrink a lot. A WebP that a CDN already squeezed to quality 70 won't, and then Iminify gives you your original back instead of a bigger file.

A WebP source is never re-encoded above quality 75. Anything higher spends bytes preserving the first encode's artefacts, not the picture.

What survives

What a WebP keeps when it's compressed

  • Transparency

    The alpha channel is kept at every level.

  • EXIF, when you switch it on

    Stripped by default; attached to the new file when Keep EXIF is on.

  • Exact pixels, even at Lossless

    A lossy WebP is re-encoded at every level. If your WebP is a lossless one and must stay exact, leave it as it is.

  • Animated WebP isn't touched

    Iminify doesn't decode animated WebP. The file comes back unchanged.

When not to

When to leave a WebP alone

  • It came from a CDN or an image service. It has been optimised already, and a second lossy pass costs quality for almost nothing.
  • You still have the original JPG or PNG. Compress or convert from that instead; one generation of loss beats two.
  • It's a lossless WebP of a logo or UI asset. Re-encoding it lossily defeats the point.

How to

Compress a WebP in three steps

  1. 1

    Drop your WebP files

    Change Format stays off, so you get WebP back.

  2. 2

    Pick Smart or Ultra

    Both search for the lowest quality that still matches your file, against different targets.

  3. 3

    Compare, then download

    If a row says the original was kept, nothing smaller could be made at that level.

Questions

WebP compression questions

From the blog

Trim your oversized WebPs

Drop a file. If nothing smaller can be made, you keep your original and lose nothing.