Image Compressor — Compress JPG, PNG, WebP Locally (No Upload)
Compress JPG, PNG, and WebP images in your browser. Two modes: fixed quality or target file size (KB). Batch supported. 100% local — no uploads, no watermark.
Last updated:
Drop images here, or
Compression happens in your browser — images are never uploaded.
Drop images and pick a quality or a target file size in KB. The tool re-encodes each image in your browser via Canvas — nothing is uploaded. Batch supported, no file-count limit.
What is Image Compressor?
Image compression is one of the top web-development chores: cut MB down to KB so pages load fast. Popular tools like TinyPNG and iLoveIMG do the job but they upload your images and cap the free tier around 20 files or 5 MB per file. This tool does exactly the same encoding, but in your browser, with no upload and no limits. You can pick a target JPEG/WebP quality (0-100%) or ask for a target file size in KB — for the latter, the tool binary-searches quality until the output is within a few percent of your target, so you can compress to fit any upload limit.
How to compress images online
- 1Drop one or many images into the drop zone.
- 2Pick output format (JPG, WebP, or PNG) and mode (fixed quality or target size).
- 3For fixed quality, choose 80-90% as a good default. For target size, enter the max KB you want.
- 4Click 'Compress all' — the tool re-encodes each image locally.
- 5Download individually or in one batch.
Use Cases
Meet a platform's upload limit
Twitter and many forums cap image uploads at 5 MB. Target-size mode gets you there in one pass.
Shrink hero images for the web
Compress 8 MB DSLR JPEGs to 200 KB at 85% quality — indistinguishable to the naked eye but 40× smaller.
Email attachments
Compress a folder of photos to fit under a mailbox size limit.
Batch prep for a CMS
Push tens or hundreds of photos through the same quality preset without an account or a paid plan.
Tips & Best Practices
- ▸WebP is usually 20-30% smaller than JPG at the same visual quality.
- ▸Target-size mode is not exact — expect ±5-10% of your target due to the non-linear relationship between JPEG quality and size.
- ▸For screenshots and text-heavy images, keep them as PNG or WebP-lossless. JPG's DCT compression looks bad on sharp edges.
- ▸The tool strips metadata (EXIF, GPS) as a side effect of re-encoding — a small privacy win.
Frequently Asked Questions
How is this different from TinyPNG or iLoveIMG?
Those tools upload your images to their servers, add a limit (usually 20 files or 5 MB free), and require an account for larger batches. This tool runs 100% in your browser — no upload, no cap on file count, no sign-up.
What does 'target file size' do?
Enter a size in KB (e.g. 200) and the tool binary-searches JPEG/WebP quality until the output lands within a few percent of your target. Great for meeting upload limits (Twitter, WhatsApp, forums).
Does PNG compression actually reduce size?
PNG is lossless — the tool re-encodes it while stripping metadata, so you gain a few percent at most. For real gains on photographic content, use JPG or WebP output.
Related Tools
EXIF Viewer
View EXIF metadata in JPEG, HEIC, TIFF, and PNG photos: camera model, GPS coordinates, exact timestamps, and more. Runs entirely in your browser — nothing is uploaded.
EXIF Remover
Remove EXIF, GPS, and other metadata from your photos before sharing. Two modes: precise (lossless JPEG) or full re-encode (any format). 100% local — the photo never leaves your device.
PNG → JPG
Convert PNG images to JPG in your browser. Adjustable quality, custom background color for transparent PNGs, batch download. 100% local — nothing is uploaded.
JPG → PNG
Convert JPG images to PNG in your browser. Lossless output — no re-compression artifacts. Batch download supported. 100% local.
WebP → JPG
Convert WebP images to JPG in your browser. Great for legacy tools and platforms that don't accept WebP. 100% local, batch supported, adjustable quality.
WebP → PNG
Convert WebP images to PNG in your browser without losing more quality than the WebP already had. Preserves transparency. 100% local.