Core tool

Image Compressor

Drag the quality slider, watch the real byte count come back, and keep the version that still looks right. Every number here is measured on the file you would actually download.

  • Lossy controlJPG and WebP, 30–100%
  • PNGLossless only
  • ComparisonPer-file byte delta

Drop product photos here

Or . JPG, PNG, WebP, GIF, BMP or AVIF — up to 20 images, 20 MB each.

Nothing leaves your device. Files are decoded and re-encoded in this browser tab.

Output targets

Pick one or several. Each gets its own folder in the ZIP.

Lower quality shrinks the file and can soften fine detail. 85–92% is the usual sweet spot for product photos; check the size comparison after processing.

Images in batch0
Source bytes0.00 MB

Settings apply to every image in the batch once you upload.

Export

0 source images × 1 target = 0 files

Platform check

The custom output target applies no marketplace rules. Select Amazon, Etsy or Shopify to see their size, format and file-size checks.

How it works

  1. Upload the images

    Source size is recorded on upload, so every comparison afterwards is against your original file, not against a previous compression pass.

  2. Set the quality level

    Start at 85% for product photos. Lower it in steps and re-prepare — each run produces fresh files and fresh measurements.

  3. Read the comparison

    The summary bar shows total source bytes versus total output bytes, and each result card shows its own percentage change.

What the quality slider really does

It is passed straight to canvas.convertToBlob({ type, quality }), which hands the number to the browser’s JPEG or WebP encoder. At 100% you still get a re-encode — the DCT is redone and chroma is resampled — so a 100% export is not byte-identical to the original even when the difference is invisible.

Below about 70%, JPEG starts to show blocking in smooth gradients and around high contrast edges. Product photography is full of both: white backgrounds next to dark product edges are the first place artefacts appear.

PNG is not compressible this way, and we say so

PNG uses DEFLATE, a lossless algorithm. There is no quality dial — the browser encodes the same pixels every time, so the output is usually the same size or slightly larger than a well-optimised original. The slider is disabled when PNG is the target instead of pretending to do something.

If you need a smaller file and do not need transparency, switch the output format to JPEG or WebP. If you need transparency and a small file, WebP is the only honest option among the formats every marketplace accepts.

Compression versus resizing

Most oversized product photos are oversized in pixels, not in compression. A 6000 px photo squeezed to 200 KB is still a 6000 px photo that the marketplace will downscale again. Resize to the platform’s recommended dimensions first, then compress — the file gets smaller and the image gets sharper on the storefront.

Questions

How much smaller will my files get?

It depends entirely on the source. A camera JPEG at 95% quality often drops 40–70% at 80% quality. An already-optimised 100 KB image may barely move. The tool shows the measured result instead of promising a number.

Is compression lossless?

No. JPEG and WebP at less than 100% quality are lossy by design, and even at 100% the image is re-encoded. Only PNG in this tool is lossless, and only in the sense that no pixel values are discarded.

Will compression strip my metadata?

Yes, and that is usually good. Canvas re-encoding does not carry EXIF over, so GPS coordinates, camera serial numbers and shooting notes do not travel with the exported file.

Can I compress to a target file size?

Not directly — you set quality and read the result. A binary search on quality would be possible, but it triples processing time and the quality-versus-size curve is not smooth enough for it to be reliable.

Does compressing hurt marketplace ranking?

Over-compressed images look soft on retina screens, and marketplaces recommend minimum dimensions for zoom. Compress after resizing to the recommended size, not instead of it.