Image converter

Convert and shrink as many images as you like, without an upload.

Or drop them here, or paste. PNG, JPEG, WebP, GIF, AVIF or SVG, any number. Nothing is uploaded.

Options

Convert to

Smallest of the three almost always. Universally supported since 2020. Re-encoding also removes EXIF metadata, including GPS coordinates.

0.82

Lower makes a smaller file and a softer image. It starts at 0.82.

More optionsFull size, nothing resized

Add an image, or try the sample, to start.

What client-side image converter is

A converter that decodes and re-encodes images using the browser’s own codecs, so the file is never transmitted. The consequence that matters is economic rather than technical: there is no per-file cost to the operator, so there is no reason for a file-count cap.

What this tool does that others do not

  • No batch limit, because there is nothing to meter

    Images are processed one after another rather than in parallel, which is what keeps a phone from exhausting its memory and losing the tab. The practical ceiling is your own device.

    Squoosh has no batch mode at all; Caesium caps a session at ten files; TinyPNG’s web tool stops at twenty.

  • Three output formats, with the reasoning

    WebP for almost everything — smaller than both JPEG and PNG at equivalent quality, universally supported since 2020. JPEG when something downstream refuses WebP, accepting that it has no transparency. PNG only for flat graphics, screenshots and hard edges, because it is lossless and therefore the wrong choice for a photograph.

  • EXIF and GPS removed as a side effect

    The canvas holds pixels, not metadata, so re-encoding drops the lot. That removes the GPS coordinates phones embed by default, which is the main privacy risk in sharing a photograph — and it removes the copyright and camera fields too, which is worth knowing in the other direction.

  • Files that got bigger are reported as bigger

    Converting a flat graphic to a lossy format, or a small PNG to JPEG where the overhead exceeds the saving, produces a larger file. The per-file figure shows a positive number when that happens. A converter that only ever reports savings is not measuring anything.

How to use it

  1. Add every image at once

    Choose them, drop them anywhere on the page or paste them. There is no count to watch: each becomes a card, the queue converts one file at a time, and each card shows its result as it lands.

  2. Pick WebP unless something downstream refuses it

    It is the default for a reason, and the exceptions are specific rather than general.

  3. Resize on the way through if the images are oversized

    Open More options and cap the longest edge. Resizing is almost always a bigger saving than any quality setting, because area scales with the square of the dimension.

  4. Check each card, then download

    Every card shows its size before and after; one that grew says “larger” in red. Keep the originals for those, then take the rest with Download all as one .zip, or each with its own Download.

Worked example

Real input, real figures.

A conversion that costs bytes instead of saving them

You give it

A small flat-colour PNG converted to JPEG.

You get

JPEG overhead exceeds any saving on a small image with hard edges, so the file grows. The delta is shown as a positive number rather than suppressed, and the right answer is to keep the PNG.

Against an uploading converter

AspectThis toolAn uploading converter
Files per batchUnlimited10 to 25, or one
Daily limitNoneCommon without an account
Your fileNever sentStored for 1–2 hours
OfflineWorks with the connection offDoes not run
Size increasesReported per fileNot shown

Guide

What it will not do

  • No AVIF output. No browser can encode AVIF from a canvas — decoding is widely supported and routinely confused with it. A WebAssembly encoder would cost roughly a megabyte of download and a broader Content-Security-Policy for a format WebP largely covers.
  • Canvases are capped at 8,192 pixels a side and about 16.7 million pixels in total, in every browser, because that is the oldest iPhones’ ceiling. Oversized images are scaled to fit, and the card shows the size they came out at, rather than the blank image a canvas hands back past the ceiling.

The limit nobody else removes

"Nothing is uploaded" has stopped being a differentiator — most of the good image tools run locally now. What none of them removed is the file count. Squoosh, the reference implementation of the idea, still handles one image at a time. Caesium caps a session at ten. TinyPNG's web tool stops at twenty, because behind it there is a server being paid for.

We have no server in this path, so the cap has no reason to exist. The honest framing is not "no limits" but your device's limits rather than ours — which is why images are processed one after another instead of in parallel. Decoding several large photographs at once is the fastest way to exhaust a phone's memory and lose the tab.

What it will not do

No AVIF encoding, because no browser offers it from a canvas. No PDF, no video, no OCR — each of those needs either a large WebAssembly payload under a copyleft licence or a server, and both would break something we would rather keep true. The size limits that do apply are your browser's: canvases are capped at 8,192 pixels on a side and about 16.7 million pixels in total (the oldest iPhones' ceiling, applied in every browser), and oversized images are scaled to fit, with the size they came out at on their card, rather than silently returning a blank file.

Questions people ask

Straight answers. Each one links directly: copy the address after opening it.

Is there a limit on how many images I can convert?

No. Nothing is uploaded, so there is no server time to meter and no reason to cap you. The practical ceiling is your own machine’s memory, which is why the queue processes images one at a time rather than all at once. For comparison, the well-known client-side tools do cap: Squoosh has no batch mode at all, Caesium stops at ten files per session, and TinyPNG’s web tool stops at twenty.

Which format should I choose?

WebP for almost everything — it beats both JPEG and PNG on size at equivalent quality and has been universally supported since 2020. JPEG when something downstream refuses WebP, accepting that it has no transparency. PNG only for flat graphics, screenshots and anything with hard edges; it is lossless, which makes it the wrong choice for photographs where it can easily be several times larger than the alternatives.

Why is AVIF not offered?

Because no browser can encode AVIF from a canvas. Decoding is widely supported and often confused with encoding in articles on this subject; the Chromium issue for canvas AVIF encode is still open. We could ship a WebAssembly encoder, but that means roughly a megabyte of extra download and a broader Content-Security-Policy, and WebP gets you most of the way. We would rather not offer it than offer a version that quietly does something else.

Does converting remove EXIF data?

Yes, as a side effect of re-encoding — the canvas holds pixels, not metadata. That includes GPS coordinates, which phones embed by default and which are the main privacy risk in sharing a photograph. Worth knowing in both directions: if you needed the copyright or camera fields preserved, they will not survive.

Why did one of my files get bigger?

Usually converting a flat graphic or screenshot to a lossy format, or a small PNG to JPEG where the JPEG overhead exceeds the saving. The per-file figure shows a positive number when that happens rather than hiding it — a converter that only ever reports savings is not measuring anything.