How to convert JPG to WebP comes down to one choice: a browser tool for a quick job, or a command line for a repeatable one. Either route drops a photograph roughly a quarter smaller at the same visual quality, because WebP packs a photo more efficiently than JPEG does. The catch is the quality setting, which can quietly undo the whole point.
Converting a JPG to WebP is almost never fixing something broken. It is a deliberate move: a smaller image loads a page faster, costs less to serve at scale, and scores better on the page speed checks that search engines and hosting dashboards both watch. WebP reads in every current browser, so a photo that has been a JPG for years can become a WebP today and nothing breaks for the person viewing it. For the wider picture on where WebP and AVIF each win, see the guide to WebP and AVIF.
Why Convert JPG to WebP?
You convert JPG to WebP to make the file smaller without a visible drop in quality. Google's own figures put lossy WebP at 25 to 34 percent smaller than a comparable JPEG at the same structural quality (Google Developers, WebP). On a busy site that saving compounds across every image on every page load.
The size win is the main reason, but not the only one. A lighter page is a faster page, and page speed feeds directly into both search rankings and the bounce rate you see in analytics. If you run a store or a blog, converting a folder of product or post images from JPG to WebP is one of the cheapest speed improvements available, because it touches the bytes without touching the layout.
WebP also plays directly into Core Web Vitals, the loading and stability scores Google folds into ranking. Largest Contentful Paint, the moment your biggest image finishes drawing, is usually the number a heavy hero photo drags down, and shaving a quarter off that file moves it without any layout work. I have watched a product page's Lighthouse score climb several points from nothing more than swapping a folder of JPGs for WebP at quality 80.
There is a storage and bandwidth angle too if you host your own images. Serving a quarter fewer bytes on every image request is a direct cut to egress costs on a busy site, and it shortens the transfer on slow mobile connections where the difference is felt most. The visitors most likely to bounce are the ones on the worst connections, so the smallest file helps exactly the people who need it.
There is a compatibility floor worth knowing. WebP is supported in every major browser now, so publishing it on your own site is safe. Off your own site, support is patchier, which is the whole subject of the "when it does not help" section below. If you want to know exactly how WebP stacks up against JPG before you commit, that comparison covers the tradeoffs format by format.
How to Convert JPG to WebP on Any Device
There are four honest routes, and which one fits depends on whether the job is a one-off or a habit. The browser tool suits a single file or a quick batch. The command line suits scripts and large folders. A desktop editor suits the app you already have open. A build pipeline suits a site that rebuilds its images on every deploy.
| Method | Best for | Quality control | Where it runs |
|---|---|---|---|
| Our browser tool | One file or a batch, no install | Quality 80 default, adjustable | Any browser |
| cwebp command line | Scripts, one-time folders | -q flag, 0 to 100 |
Terminal |
| Preview, Paint, GIMP, Photoshop | An app you already have open | Export dialog slider | Desktop |
| Imagemin plugin | Automated build pipelines | Set once in config | Node build |
The rest of this section walks each route with the real commands and menu paths, so you can pick one and be done.
Convert JPG to WebP Online in the Browser
Drop the JPG into our JPG to WebP converter, which already has WebP set as the output format, and download the result. No install, no signup for files up to 25 MB, batches up to 30 images at once, and the EXIF metadata, the hidden GPS coordinates and camera model your phone writes into every photo, gets stripped on the way through.
The conversion runs at quality 80 by default, the setting used across every job on this site, tuned to look identical to the source at normal zoom. This is the exact operation behind the homepage demo: a 497 KB JPG goes in and a 214 KB WebP comes out, a 56.9 percent cut, with no visible change. A free account raises the ceiling to 100 images a month with a usage dashboard, and Pro is 12 dollars a month flat for 10,000 images, files up to 50 MB, and batches of 100.
Convert With cwebp, Google's Command Line
For a one-off file or a script, cwebp is the official command-line encoder, part of Google's open-source libwebp package, and it does the same job the browser tool does without a browser. A single file looks like this (web.dev, Use WebP images):
cwebp photo.jpg -o photo.webp
Set the quality with -q, a number from 0 to 100:
cwebp -q 60 photo.jpg -o photo.webp
To batch convert JPG to WebP across a whole folder in one pass, loop over it:
for file in images/*.jpg; do cwebp "$file" -o "${file%.jpg}.webp"; done
By default cwebp encodes lossy, which is what you want for a photo. Add -lossless only for graphics with flat color and sharp edges, and expect the file to grow, since a photographic source carries too much detail for lossless to compress well.
Converting a JPEG source to lossy WebP is what Google calls a "safe" conversion, meaning it will not surprise you with a bigger file the way pushing an already-compressed source into WebP lossless sometimes can (Google WebP FAQ). The one way to trip that wire is the quality flag, covered in the measured section.
Convert in Preview, Paint, GIMP, or Photoshop
If you would rather not touch a terminal, the app already on your machine can probably export WebP. To convert JPG to WebP on Mac, open the JPG in Preview, choose File then Export, and pick WebP from the Format dropdown. On Windows 11, Microsoft's free PowerToys adds a right-click "Resize pictures" option that can output WebP, and Paint reads and writes WebP natively on current builds.
For an editor with more control, GIMP has read and written WebP since 2018 and Photoshop added WebP export in 2022 (PCWorld). In either one, use Export As or Save a Copy, choose WebP, and set a quality value the same way you would for a JPEG. IrfanView (since 2011) and Paint.NET (since 2019) handle WebP export too, if either is already installed.
Convert in a Build Pipeline
For a site that rebuilds its images automatically, a pipeline beats converting files by hand. The Imagemin WebP plugin drops into a Webpack, Gulp, or Grunt config in about ten lines and converts every image that passes through the build. Treat cwebp as the right tool for a single file or a one-time folder, and Imagemin as the right tool for images that get regenerated every time the site deploys.
Convert JPG to WebP on a Phone
Neither iOS nor Android ships a built-in JPG to WebP export in the photo app, so on a phone the browser tool is the honest route. Open the converter in Safari or Chrome, add the photo from your camera roll, and download the WebP straight back to the phone. It is the one method that does not care which device you are on, because the work happens in the page rather than in an installed app.
How Much Smaller Does WebP Get? The Measured Numbers
At quality 80 a JPG usually lands about a quarter smaller as WebP, but the quality setting swings that result hard in both directions. To show it rather than assert it, I converted a real photograph, a 60 KB JPEG at 512 by 600 pixels, to WebP at three settings with libwebp, the same encoder behind both cwebp and this tool, on 2026-07-17.
| Setting | File size | Change vs source JPG |
|---|---|---|
| Original JPG | 60 KB | baseline |
| WebP quality 60 | 27 KB | 54 percent smaller |
| WebP quality 80 | 44 KB | 26 percent smaller |
| WebP quality 90 | 73 KB | 21 percent larger |
Two things stand out. Quality 60 cut the file by more than half and still looked fine at normal size, and quality 80, the default, landed at 26 percent smaller, right inside Google's 25 to 34 percent range. Quality 90 went the other way and came back 21 percent larger than the JPG we started from. That is the "surprising" conversion the WebP FAQ warns about: the source was already a lossy JPEG, and asking WebP for near-lossless quality made it re-encode every artifact at high fidelity, which costs bytes. None of the tool pages ranking for this query show that number, and it is the single most useful thing to know before you batch a folder at maximum quality.
The practical lesson for a batch job is to set the quality explicitly and keep it in the 60 to 80 band. A folder pushed through at the encoder's highest setting can come out heavier than it went in, which defeats the reason you started. When I convert a set of images, I run one file at 60, 75, and 80 first, pick the setting that holds up, then apply it to the whole folder in a single pass rather than trusting a default I have not checked.
What Quality Setting Should You Use?
Stay between 60 and 80 for anything headed to the web, and reach past 85 only when fine detail genuinely matters. The default of 80 is visually lossless on an ordinary photograph while still cutting the file well below the JPEG original, which is why it is the setting behind every conversion on this site. Below 60 the softening starts to show on flat areas like skies. Above 85, as the table shows, the savings shrink and can flip negative on a JPEG source.
WebP quality runs 0 for worst to 100 for best, and it offers both lossy and lossless modes (web.dev, Use WebP images). For converting photos, you want lossy; lossless is for graphics with hard edges and flat color, and it is the mode most likely to produce a bigger-than-JPEG result. The reason 80 works as a default is that JPEG and WebP both discard the fine detail your eye notices last, and at 80 that discarded detail stays below the threshold most people can see on a normal screen. Drop to 60 and you start cutting into detail a careful eye might catch on a large display, which is fine for a thumbnail and risky for a hero image. When in doubt, convert one representative image at 60, 75, and 80, look at all three, and keep the smallest one you cannot tell apart from the source.
When Converting to WebP Does Not Help
Skip the conversion when the destination cannot read WebP. Some older office software, a handful of print vendors' intake systems, and a few upload forms still expect a JPG or PNG specifically and will reject or mishandle a WebP. Email is the same story: most clients render WebP inconsistently or not at all inside the message body, so an image meant to display inline in an email is safer left as JPG.
If the image is going onto your own website, the fix is not to avoid WebP, it is to serve both. A <picture> element with a WebP source and a JPEG fallback lets every browser take the smaller file it can read, and nothing breaks for the rare visitor on something ancient (MDN, Image file types). That fallback markup belongs to your site or CMS, not to a converter, which only produces the file.
Before you convert a folder destined for someone else's system, send one test file and confirm it opens on their end. That quick check saves a re-export later. And if a file arrives as WebP where you needed a JPG, the trip runs both ways: converting WebP back to JPG uses the same apps and takes the same minute.