Free Image Compressor and Resizer — Browser Tool, No Upload

🖼️ Image Compressor and Resizer

Compress · Resize · Convert — everything runs in your browser. No uploads, no cloud, no tracking.

📂

Drag & drop images here

or click to browse

PNG · JPEG · WebP · GIF · BMP


Free Image Compressor and Resizer — Browser Tool, No Upload

The fastest way to compress and resize images without installing anything or sending your files to a third-party server. This browser-based image compressor and resizer runs entirely on your device using the Canvas API — drag in your files, adjust quality and dimensions, and download. No accounts, no watermarks, no uploads.

I built this tool because every time I needed to compress and resize images for a blog post or a homelab dashboard, I kept landing on sites that were half unusable on mobile or came with a 3-image free tier. So here it is — open, clean, and fully client-side.

⚠️ Third-party libraries used: This tool loads JSZip 3.10.1 (MIT License) from the Cloudflare CDN. It is used exclusively for the “Download ZIP” feature. All image processing uses native browser APIs (Canvas, FileReader, Blob) — no other external code is involved. If you don’t use ZIP download, no external resources are called at all.


What This Image Compressor and Resizer Does

If you need to compress and resize images regularly, having a local, no-install option matters. When you compress and resize images with this tool, you get full control over three independent operations: quality reduction, dimension scaling, and format conversion. Here’s what each one covers:

  • Format conversion — output as Original (keeps source format), JPEG, PNG, or WebP. Useful for converting legacy BMP and GIF files to modern formats.
  • Quality slider — adjust JPEG and WebP compression from 1% to 100%. PNG is always lossless so the slider disables automatically.
  • Resize with aspect lock — enter a target width or height and the 🔒 button keeps proportions. Provide both dimensions and the tool fits the image within the box without cropping.
  • Before / after thumbnails — each card shows the original and the processed result side by side so you can judge the visual difference before downloading.
  • File size comparison — every processed card displays the output size and the savings as a percentage, making it easy to dial in the quality/size tradeoff.
  • Batch ZIP download — process multiple images and grab them all in one ZIP via JSZip.
  • EXIF orientation correction — phone-shot JPEGs often store orientation in metadata rather than pixels. The tool reads and applies EXIF orientation automatically so output is always right-side up.
  • URL hash state — selected format and quality are saved to the URL hash so you can bookmark your preferred settings.

How to Compress and Resize Images — Step by Step

Here’s the full workflow to compress and resize images from start to finish:

  1. Drop your images into the drop zone or click “click to browse.” Multiple files are supported.
  2. Pick an output format — JPEG, PNG, WebP, or Original.
  3. Set the quality using the slider. For most web photos, 75–85% WebP hits the sweet spot.
  4. Enter resize dimensions if needed. Width, height, or both. With aspect lock on, changing one auto-fills the other based on the first image in the queue.
  5. Click ⚡ Process All. A progress bar tracks the batch. Each card updates with before/after previews and size comparisons.
  6. Download — use the per-file ⬇ button or 📦 Download ZIP to get everything at once.

🎛️ Quality Settings Guide

Understanding quality settings helps you compress and resize images more effectively. The quality slider only affects JPEG and WebP output. PNG is lossless regardless of the slider value.

JPEG — 85–95% is near-lossless for photos. 70–82% is the standard web range where compression is only visible at 100% zoom. Below 50% is aggressive, best for thumbnails only.

WebP — compresses better than JPEG at the same quality setting. You can typically drop 5–10 points versus an equivalent JPEG and still get a cleaner result. If you’re optimizing images for a website, WebP is the better default for any browser made after 2020.

PNG — use when you need pixel-perfect output: screenshots, diagrams, transparent images. Larger than JPEG/WebP for photos, but always lossless.


Practical Use Cases 🧰

🌐 Web optimization — When you need to compress and resize images before uploading to WordPress or a static site, this tool handles batches without touching each file individually. A 6MB DSLR photo at 80% WebP typically lands under 200KB.

📱 Homelab dashboards — Displaying custom images in Home Assistant dashboards or other self-hosted UIs? Smaller images load faster. Resize to your tile dimensions before uploading.

💾 Format migration — Batch-convert a folder of PNGs or BMPs to WebP for storage savings. Useful when archiving screenshots from older projects.

🖼️ Blog post images — I use this tool before every upload to vahac.com. Resize to the column width, export WebP at 80%, done. No Photoshop, no Lightroom, no subscription.

🔧 Media servers — If you self-host Jellyfin, Nextcloud, or Immich, consistent image dimensions and smaller file sizes keep your library clean and thumbnails fast. That starts with a reliable way to compress and resize images before ingestion.

📦 Storage efficiency — Reducing image sizes is one of the most accessible storage wins. The ideas overlap with the ZFS and LVM setups I use on my home server — see the OneDrive sync on Proxmox LXC guide for how I manage large file collections efficiently.


Privacy, Ads, and Data Policy 🔒

When you compress and resize images with this tool, your files stay on your machine.

  • 100% free — no account, no registration, no paywall
  • No uploads — the Canvas API processes everything locally; nothing reaches any server
  • No watermarks — output files are clean, no branding added
  • No tracking — no analytics scripts; the only external resource is JSZip from Cloudflare CDN, loaded only for ZIP export

Open Source and Self-Hosting

The tool is a single folder: index.html, style.css, script.js. No build step, no package manager, no framework. Drop it on any static host and it works.

You’ll find this and other free browser tools at vahac.com/tools. If you’re interested in the self-hosted infrastructure behind this site, the Proxmox VE install guide and Docker hardening walkthrough are good starting points. Building things you actually control beats renting them from someone else.

Found a bug or want a feature? Leave a comment below.