Web Tools Box

All tools / Image Compressor

Image Compressor, Resizer & Privacy Editor

Upload an image to resize it, compress it to JPEG or WebP, and hide private details with a blur or mosaic — all right in your browser. Animated GIFs are supported too, and keep their animation after resizing and editing. The estimated file size updates live as you adjust the quality, so you can check the result before you download.

Drag & drop an image

or click to choose a file (JPEG, PNG, WebP, GIF, etc.)

Resize (keeps aspect ratio)
Quality0.80

Higher values give better quality and larger files.

Estimated file size—
Privacy filter
Filter type
Filter size (radius)40px

Click the preview on the right to add a circular filter centered on that spot.

Private by design: Your images are never uploaded — they're processed only on your device.

Preview
Upload an image to see the preview here.
No image uploaded yet

Security: how it works in your browser

Images you add to this tool are processed only by JavaScript (the HTML Canvas API) in your browser. Resizing, compressing, applying blur or mosaic, and creating the download file involve no communication with or storage on a server, so your images are never shared with third parties or with us.

Animated GIFs are also split into frames and rebuilt with JavaScript in your browser. Unlike the approach many video converters use (ffmpeg.wasm), this needs no special server setup and never sends your image anywhere.

Before posting a photo that shows faces, addresses, or license plates on social media or a blog, add a blur or mosaic here so you can share it with peace of mind.

Your image and edits are cleared from the browser when you close or reload the page.

How to use

  1. 1. Upload an image: Drag and drop an image onto the area on the left, or click it to choose a file. For GIFs, wait a moment while all frames are loaded.
  2. 2. Set the size and compression: Enter a width or height (the aspect ratio is kept automatically), then choose the output format and quality. The estimated file size updates live. Animated GIFs always export as GIF, and you can adjust the size with “Quality (colors)”.
  3. 3. Add blur or mosaic if needed: Pick a filter type (Blur or Mosaic) and size, then click the parts of the preview you want to hide. Use “Undo” or “Clear all” to start over. For GIFs, filters marked on the first frame are applied to every frame, and you can watch the result in the output preview.
  4. 4. Download: Click “Download image” to save a file with all your settings applied.

Frequently asked questions

Are my images uploaded to a server?
No. Loading, resizing, compressing, applying blur or mosaic, and creating the download file all happen in your browser (Canvas API and JavaScript). Your image data is never sent to any server — and that includes splitting and rebuilding animated GIFs.
Does it support animated GIFs?
Yes. When you upload a GIF, every frame is extracted and the resize and blur/mosaic edits are applied to all frames, keeping each frame's timing, before it's saved as a GIF again. You mark the spots to hide on the first frame. Because GIFs are limited to 256 colors, lowering “Quality (colors)” reduces the number of colors and makes the file smaller.
How do the blur and mosaic filters work?
Click the preview to add a circular filter centered on that spot. “Blur” applies a Gaussian blur (the Canvas 2D API blur filter), and “Mosaic” pixelates the area by scaling it down and back up without smoothing. “Undo” removes only the last filter, and “Clear all” restores the original image.
How is the estimated file size calculated?
Every time you change the quality or format, the tool actually exports the image with those settings and shows the resulting size. To avoid running this on every tiny change, it waits until you stop adjusting. For GIFs, the size comes from actually encoding every frame, and that result is used directly for the output preview and the download.
What are the resize presets for?
“Blog (1200px)” is a guideline for images in blog posts, and “Social media (800px)” is for social media posts. Clicking a preset sets the width, and the height is calculated automatically to keep the original aspect ratio.