Image Compressor
Compress images locally with quality and size controls.
Image Compressor shrinks JPEG, PNG, WebP, and GIF photos entirely in your browser. Tune quality, target size, and max dimensions, watch progress, then download the result—no uploads and no account required.
How it works
Choose a local image, set quality and size targets, then compress. The tool dynamically loads browser-image-compression (main-thread, fully offline), enforces ToolHub megapixel and byte limits, and returns a downloadable Blob with before/after sizes.
Benefits
- 100% client-side with dynamic library import
- Progress feedback for large photos
- Hard memory and file-size guards
- Works offline after the first load
Use cases
- Prepare images for blog posts and docs
- Shrink email attachments before sending
- Create lighter assets for static sites
- Batch-prep screenshots for tickets
Best practices
- Start around quality 0.75–0.85 for photos
- Set max edge to your display size needs
- Compare savings before overwriting originals
- Keep originals for archival masters
Common mistakes
- Expecting lossless results from JPEG re-encode
- Setting max size too low and causing muddy output
- Uploading huge panoramas beyond the megapixel guard
- Assuming GIF animation is preserved after compress
Privacy
Images are processed locally with Canvas and workers. ToolHub never receives your files. Clear downloads from your device when finished on shared computers.
Frequently asked questions
- Does the Image Compressor upload my photos?
- No. Compression runs entirely in your browser using Canvas and an optional Web Worker. Your files never leave the device.
- What file types can I compress?
- JPEG, PNG, WebP, and GIF are accepted as input. Output type follows what the compression library produces for your browser, usually JPEG or WebP.
- What are the file size limits?
- Uploads are capped at 25 MB, and decoded images cannot exceed 40 megapixels or an 8192px edge. These guards protect mobile memory.
- Why is there a progress bar?
- Large photos can take a few seconds on the main thread. Progress comes from the compression library so you know the job is still running instead of wondering if the tab froze.
- Will quality 1.0 keep every pixel identical?
- No. Re-encoding still applies lossy compression for JPEG/WebP. Use PNG conversion if you need lossless output, or keep the original file.
- What if my browser lacks Canvas support?
- The tool shows a clear unsupported message. Modern Chrome, Firefox, Safari, and Edge all support the required APIs.
Related tools
Image Resizer
image
Resize images by size or percent, locally.
- image
- resize
- scale
- dimensions
Image Format Converter
image
Convert images to PNG, JPEG, or WebP locally.
- image
- convert
- png
- jpeg
Image Cropper
image
Crop images with accessible numeric controls.
- image
- crop
- trim
- rectangle
SVG Viewer
image
Sanitize, preview, and clean SVG locally.
- svg
- viewer
- sanitize
- optimize
QR Code Generator
image
Create PNG/SVG QR codes locally—no API.
- qr
- qrcode
- generator
- svg
Color Picker
color
Sample image colors and copy hex/rgb locally.
- color
- picker
- palette
- hex