How to convert JPG to WebP without uploading it
Every "free" online JPG converter you've used uploads your photos to a company server, converts them there, and — in several documented cases — keeps a copy or a live download link for days. For personal photos, client work, and anything you wouldn't post publicly, that's an unnecessary risk. The safer approach is to convert the file where it already is: on your own device.
This tool does exactly that. When you drop a JPG here, your browser:
- Decodes the JPG natively — every browser includes a JPG decoder, so there is no decoder file to download and no waiting for a library to load.
- Reads the image's EXIF orientation data and stores the output upright, so a portrait phone photo doesn't come back sideways — and says so on the file card when it did.
- Resizes it to the width you picked (800 px by default), keeping the aspect ratio. JPG has no transparency, so there is nothing to flatten onto a background.
- Encodes it as WebP with libwebp, the reference WebP encoder, running as WebAssembly in your browser — lossy at the quality you pick, or truly lossless with the Lossless toggle on. Your original file is never modified.
Lossy or lossless — which should you pick?
Pick lossy (the default, quality 85) when the image is going on a website, into a blog post, or onto Discord or a forum: it is the small file that loads fast, and at quality 85 it looks identical to the original for almost every photo — typically 25–35% smaller than the JPG. Pick lossless when every pixel has to survive exactly — a master you will edit further, or an image with razor-sharp edges. Lossless files are bigger, sometimes bigger than the JPG for photos, because lossless cannot throw detail away — and remember it preserves the JPG's existing pixels only; it cannot recover detail the JPG already removed when it was first saved. Either way, keep the JPG as your master copy and publish the WebP.
Why is WebP smaller than JPG?
JPG compresses by throwing away detail in 8×8 blocks, a technique from 1992. WebP's lossy mode predicts neighbouring pixels far better and encodes the difference more efficiently, so the same photo typically comes out 25–35% smaller at quality 85 with no visible difference. That is why Google, WordPress and most image CDNs serve WebP by default, and why switching a site's JPGs to WebP is one of the cheapest PageSpeed wins there is. The saving is real but not magic: a JPG that was already saved at low quality has little left to squeeze, and lossless WebP cannot beat JPG by much.
Why won't my JPG load fast enough on my site?
JPG is the web's default for photos, but a JPG straight from a phone camera can weigh several megabytes, and every kilobyte is time your visitor waits — especially on a phone. WebP keeps the picture looking the same while cutting the weight, which is what Core Web Vitals and PageSpeed measure. If the destination has a size limit, pick a destination preset and the converter will aim for it: website heroes aim for under 300 KB, blog images under 150 KB, Discord or forum uploads under 256 KB.
Honest limitations
Lossy by default
Unless Lossless is on, the output discards some detail. Quality 85 is visually identical to the original for most photos, but quality 100 is near-lossless, not pixel-perfect. Keep the JPG as your master copy.
Lossless cannot recover JPG detail
Lossless WebP preserves the JPG's existing pixels exactly — but the JPG already threw detail away when it was first saved, and no encoder can bring that back. A lossless WebP of a JPG is only ever as good as the JPG.
Lossless can be larger than the JPG
Lossless WebP cannot throw detail away, so for photos it can come out bigger than the JPG it came from. If the file comes out bigger, the card says so — use lossy mode for publishing instead.
JPG has no transparency
Every JPG pixel is fully opaque, so there is no see-through area to carry over — and no background picker on this tool. If you need transparency, start from a PNG.
Not every app accepts WebP yet
Every modern browser displays WebP, and Discord, Slack and most forums accept it — but a few older upload forms and apps still only take JPG or PNG. Check the destination first, or convert to PNG instead.
Metadata is stripped
Camera metadata (EXIF, including location) is dropped on re-encode, and colour profiles are not carried over. Orientation is applied — the output is stored upright.
Very large images depend on your device
The encoder runs entirely on your device, so a 50-megapixel JPG needs hundreds of megabytes of memory while it converts. A desktop handles that; a low-memory phone may not. Files over 25 MB are refused outright.