Skip to main content
100% Offline · No Upload · Instant Results

Compress & convert
images instantly

Shrink images, change formats, resize — all in your browser. No file ever touches a server.

Zero server upload
Batch processing
Works offline
Fully private
ZIP download
Upload Images
Drag & drop or click — supports multiple files at once
Drop images here
or click to select — batch supported, process many at once
JPGPNG WEBPGIF BMPTIFF SVGAVIF
Compression Settings
Format, quality, resize — applied to all images
Output Format
Compression Level
Compress & Download
All processing happens locally in your browser
Processing… 0%
Starting…
Original Compressed
← drag to compare →
Original image before compression
Image after compression

Free Image Compressor — No Upload Required

This tool lets you compress and convert images directly in your browser using the HTML5 Canvas API. There's no server involved — your images never leave your device. Whether you're compressing a single photo or batch-processing dozens at once, everything happens locally and instantly.

Supports JPEG, PNG, WebP, AVIF, GIF, BMP, and ICO formats. You can also convert between formats — for example, converting PNG to WebP for smaller web-ready files, or JPEG to AVIF for next-gen image compression. A custom quality slider and resize controls give you full control over the output.

100% Private

Images never leave your device. All compression runs in your browser using the Canvas API — no cloud, no server, no tracking.

Batch Processing

Upload and compress multiple images in one go. Apply the same settings to all files and download them in a single ZIP archive.

Format Conversion

Convert between JPEG, PNG, WebP, AVIF, GIF, BMP, and ICO. Great for converting images to modern WebP or AVIF for the web.

Resize Dimensions

Optionally resize images to exact pixel dimensions. Aspect ratio is preserved if only width or height is specified.

Works Offline

Once loaded, no internet is needed. The tool works entirely offline — perfect for sensitive files or slow connections.

Before/After Preview

See a side-by-side visual comparison of original vs compressed, plus a savings bar showing exactly how much was reduced.

How to Compress Images

  1. Upload images — drag and drop your files into the upload zone, or click to browse. JPG, PNG, WebP, GIF, AVIF and more are supported.
  2. Choose output format — keep the original format or convert to a different one like WebP or AVIF for better compression on the web.
  3. Set compression level — pick a preset (Maximum, Balanced, Small, Tiny) or fine-tune with the custom quality slider from 1% to 100%.
  4. Optionally resize — enable the resize toggle and enter a target width or height. Aspect ratio is automatically preserved.
  5. Hit Compress — click the compress button and watch each file process in real-time. Download individually or grab all files as a ZIP.

Frequently Asked Questions

No — not at all. Everything runs inside your browser using the HTML5 Canvas API. Your images are never sent anywhere. This makes it safe for private or sensitive photos.
Input: JPG, PNG, WebP, GIF, BMP, TIFF, SVG, AVIF and most other browser-readable image types. Output: JPEG, PNG, WebP, AVIF, GIF, BMP, ICO. Note: AVIF output depends on browser support.
Yes! Select or drop as many images as you need. They'll all be compressed with the same settings, and you can download them all at once as a ZIP file.
For most web use, "Balanced" (80%) is a great starting point — good visual quality with significant size reduction. For thumbnails or previews, try "Small" (60%) or "Tiny" (35%). For archiving or print, use "Maximum" (92%).
WebP files are typically 25–35% smaller than equivalent JPEG/PNG at the same visual quality. AVIF is even more efficient but has slightly less browser support. Both are excellent for speeding up websites.
Yes — the Canvas API re-renders the image visually but does not carry over EXIF metadata (GPS, camera info, etc.). This is actually a privacy benefit: your compressed images won't contain location or device information.
Done!