Compress images on your device. Nothing gets uploaded.

fileo Compress is a workshop for photos that are too heavy for a page, a chat, or a product grid. You drop files here; the browser re-encodes them. We never see the pixels.

Drop JPEG, PNG, WebP, or GIF here

Or click to browse · paste from the clipboard · up to 20 files, 8 MB each

Compression runs on this device. Open DevTools → Network if you want to verify there is no upload.

Compress JPEG, PNG, and WebP without a server

Most “online compressors” send the file to a machine you do not control, wait on a queue, then promise to delete it later. That model is fine for a quick meme. It is a poor fit for a passport scan, a client’s unreleased product shot, or a screenshot that still has a phone number in the EXIF thumbnail.

This tool redraws the image onto a canvas in your tab. Drawing to canvas drops EXIF, GPS, and camera serials. Encoding with JPEG or WebP quality of about 80 is the same trade photographers have used for web export for years: a little quantization, a lot less weight. PNG is different — the browser cannot magically run pngquant — so photographs in PNG usually want WebP or JPEG, while logos should stay PNG so the edges stay crisp.

There is a cap: 20 files, 8 MB each, edges downscaled if a side exceeds 8,192 pixels. That is not a paywall. It is the point where a laptop tab starts to freeze. If a file is larger, shrink it locally first or split the batch.

Compare original vs compressed before you save

Each card shows the original next to the result, with byte counts on both. If the after-image looks chalky, raise quality or skip the target-KB field. If it still looks identical at 200 KB, keep the smaller one. Do not trust marketing percentages; trust the pair of previews from your file.

How JPEG quality and PNG palettes actually shrink files

JPEG quality is not a percent of pixels kept. It is a scale on quantization tables. At 80, most photographs hide the 8×8 block artifacts unless you zoom into a sky or a wall. At 50, hair and type start to ring. WebP uses a similar slider and usually lands 20–35% smaller than JPEG at the same visual stop. PNG stores exact pixels (plus a zip-like pass). Re-saving PNG from a canvas often grows a photo. That is why the format menu exists: pick JPEG/WebP for cameras, PNG for UI and type.

What we strip and what we keep

We strip metadata because the canvas never copies it. We keep pixels, alpha (if you stay on PNG or WebP), and the filename stem. We do not keep GPS. We do not write a watermark. We do not log the files — they never arrive.

JPEG compressor

Photographs, quality 80 as a default, optional target size in KB.

PNG compressor

When to keep PNG, when converting to WebP saves the page.

WebP compressor

Smaller than JPEG for most photos in current browsers.

Questions people actually type

Is this image compressor safe?

Safety here means the file does not go to fileo.me. Watch the Network panel while you compress. You should see no image POST. If your threat model includes a compromised laptop, no website can help you.

Will quality 80 ruin my photo?

On a phone-sized display, rarely. On a 6K print, yes — do not use this as a print pipeline. Export a full-quality master elsewhere and compress a copy for the web.

Why did my PNG get larger?

Canvas PNG is not pngquant. Convert photographs to JPEG or WebP. Keep PNG for screenshots with text and flat color if you need lossless edges.

Do you support AVIF or HEIC?

HEIC usually fails in the browser decoder. AVIF encode is still patchy; we output WebP/JPEG/PNG so the download opens everywhere. Convert HEIC on the phone first.

Is there a file limit?

20 images per batch, 8 MB each. Compress another batch after you download. There is no daily quota because we are not paying for your CPU.

Read the longer notes: JPEG vs PNG vs WebP, what quality 80 means, and EXIF and GPS.