How it works

ShrinkLocal is for people who need to compress large images (often 5MB, 10MB, or more) without sending files to a cloud service. You can process multiple files in parallel and download them individually or as a ZIP.

  1. You choose or drop one or more images. Files stay on your device.
  2. You pick an output format: JPEG (MozJPEG) or WebP.
  3. Web Workers load encoders (WebAssembly) from this website — up to several images at once.
  4. Each worker decodes your image, optionally scales very large dimensions, then encodes to your chosen format.
  5. You download files one by one or as a ZIP archive. Nothing is stored on our servers.

Verify no upload (Chrome / Edge / Firefox)

  1. Open ShrinkLocal.
  2. Open Developer Tools → Network tab.
  3. Enable Preserve log. Filter by Fetch/XHR (optional).
  4. Compress one or more images.
  5. Inspect requests: you should see loads for .js, .wasm, and HTML — not multi‑megabyte POST bodies of your photos.

Your image bytes are processed inside the browser. We have no API that accepts image uploads.

Output formats

JPEG (MozJPEG)

WebP

For both formats: if either side exceeds 8192px, the image is scaled down proportionally first.

Batch & ZIP

Recommended browsers

Latest Chrome, Edge, or Firefox on desktop. Large files (50MB+) need enough RAM; mobile may struggle with very large batches.

Technology

Encoders come from jSquash (MozJPEG and libwebp, same family as Google’s Squoosh). WASM modules are self-hosted on this domain.