Skip to content
Plaintools

Image compressor

Select an image file from your device to compress it locally using your browser's HTML5 Canvas engine. Adjust quality percentages, choose between JPEG, WebP, or PNG formats, scale dimensions, and inspect before-and-after file sizes in real time. Your photos and images never leave your machine.

Client-Side OnlyImage files never leave your device · Compression runs in browser RAM

Selected: sample.jpg

Supports JPEG, PNG, WebP, GIF, BMP · Never uploaded to a server

Choose target file type

Lower = smaller file, higher = clearer

Scale down dimensions to save more space

Image compressor example

2.4 MB camera photo to 380 KB WebP

A 2.4 MB JPEG photo compressed to WebP at 75% quality yields a 380 KB file (-84% size reduction) with crisp visual fidelity, ready for instant download.

Image compressor how-to

  1. Stay on this page. Image compressor runs in the tab.
  2. Enter or drop your input here. The file or text is not posted to a server.
  3. Copy or download the result when it appears.

Related guides

Related tools

Convert

HEIC converter

Convert iPhone HEIC/HEIF photos to JPEG or PNG in the browser.

Convert

GIF compressor

Compress animated and static GIFs in your browser by downscaling dimensions, quantizing colors, and dropping frames.

Convert

PDF to JPG converter

Convert PDF pages into high-resolution JPG images client-side. Download single pages or a multi-page ZIP.

Convert

Video compressor

Compress and shrink MP4, MOV, and WebM videos client-side using WebAssembly. Files never leave your device.

Convert

Picture to text converter

Extract text from images using optical character recognition (OCR) client-side with Tesseract.js. Files never leave your device.

Convert

PDF to PNG converter

Convert PDF pages into high-resolution, lossless PNG images client-side. Download single pages or a multi-page ZIP.

Convert

WebP converter

Convert PNG, JPG, and GIF images to WebP, or convert WebP to PNG/JPG in your browser using canvas. Files never leave your device.

People also use

Convert

Audio converter

Convert audio files to MP3, WAV, AAC, OGG, and FLAC client-side using WebAssembly. Files never leave your device.

Convert

PNG to JPG converter

Convert PNG images to JPG/JPEG in your browser using canvas. Quality slider, background color for transparency, zero server upload.

Convert

JPG to PNG converter

Convert JPG and JPEG images to lossless PNG in your browser using canvas. Client-side, privacy-first, no uploads.

Convert

FLAC to MP3 converter

Convert lossless FLAC audio files to high-quality MP3 (320k, 256k, 192k) client-side using WebAssembly FFmpeg. Zero file uploads.

Image compressor FAQ

Are my uploaded photos or images sent to a server?
No. All image decoding, canvas resizing, and re-compression occur 100% client-side in your browser RAM using the HTML5 Canvas API. No bytes ever leave your device.
Which image formats are supported?
You can load JPEG, PNG, WebP, GIF, and BMP files. Output compression is supported for JPEG, WebP, and PNG formats.
Why does WebP provide smaller file sizes than JPEG?
WebP uses modern predictive block encoding algorithms developed by Google, allowing it to achieve roughly 25% to 35% smaller file sizes than JPEG at comparable visual perceptual quality.
Can I resize image dimensions as well as compression quality?
Yes. Use the dimension scale slider or maximum width/height constraints to downscale image pixel dimensions, which drastically reduces file size for web publishing and email attachments.
How do I compress an image in the browser without this page?
Create an Image object: img = new Image(); img.src = URL.createObjectURL(file). On load, create canvas: c = document.createElement('canvas'); c.width = targetW; c.height = targetH. Draw image: ctx = c.getContext('2d'); ctx.drawImage(img, 0, 0, targetW, targetH). Call c.toBlob(callback, 'image/webp', quality) where quality is 0.01..1.00. Create a download link using URL.createObjectURL(blob). Revoke URLs when finished.
Does converting a transparent PNG to JPEG keep transparency?
No. The JPEG specification does not support an alpha transparency channel. When you convert a PNG or WebP with transparent regions to JPEG, Plaintools automatically fills the transparent background with solid white to avoid ugly black artifacts.
Does compressing images in the browser strip EXIF metadata?
Yes. When images are decoded and redrawn onto an HTML5 Canvas element before re-encoding, camera metadata like GPS coordinates, capture dates, and camera serial numbers are omitted. This protects your privacy and trims unnecessary header bytes.