How to convert JPG to WebP on Mac (batch, offline, no upload)
macOS opens WebP but can't save it. Convert JPG to WebP on your Mac with Google's cwebp or Zumkor: whole folders, color profiles kept, nothing uploaded.
Convert your photos with Zumkor on your Mac — free for 7 days, then 5 files a day free or $19.99 once. Zumkor converts photos between HEIC, JPG, PNG, TIFF, WebP, and AVIF on your Mac. Everything is free for 7 days, then 5 files a day (25 a week) stay free — or unlock everything once for $19.99, no subscription. Needs macOS 14.0 or later on an Apple silicon Mac (Apple M1 or later).
Get Zumkor on the Mac App StorePageSpeed Insights has flagged your images again. The product photos, the blog headers, the gallery on your portfolio site: all JPGs, all heavier than they need to be, and the tool wants WebP. Or the request is more direct: a theme, a CMS plugin or a client’s web team asks for .webp files, and every photo you have came out of a camera, an iPhone export or a stock site as .jpg. You need to convert JPG to WebP on your Mac.
That’s where you find out the platform only works one way. macOS reads WebP everywhere and writes it nowhere. Preview opens a WebP like any other image, but its Export menu doesn’t offer WebP. The Finder Quick Action that converts images on right-click outputs JPEG, PNG and HEIF only. sips, the built-in command-line image tool, reads WebP and can’t write it. Those tools are fine for turning a WebP download back into a JPG. Going the other way, they’re no help.
This guide covers the two routes that work: Google’s free command-line encoder and a drag-the-folder app. Both run on your Mac with nothing uploaded. It also covers the two traps specific to JPG sources, which is why this isn’t the same job as converting PNGs to WebP.
In this guide9 sections
What converting JPG to WebP on a Mac actually gets you
WebP is Google’s image format for the web. For photographs, its lossy mode typically produces files around 25–35% smaller than a JPG of the same visual quality, and every current browser displays it, Safari included. On a page with twenty product photos, that’s a real cut in what each visitor downloads.
Two things are worth knowing before you convert a single file, because JPG sources behave differently from PNGs.
You’re re-encoding a lossy file. A JPG has already thrown detail away. Converting it to WebP compresses it a second time, and nothing can bring back what the first compression removed. The WebP will look the same as the JPG at a sensible quality setting, never better. If you still have the master files — the camera RAW, the iPhone HEIC, the full-size export from your editor — convert from those instead. You get a cleaner result and a smaller file.
Lossless WebP is the wrong mode for JPGs. Lossless sounds like the safe choice, and for logos and screenshots it is. For a JPG it’s a trap. Lossless mode keeps every pixel exactly, including every block and smear the JPG compression left behind, and photographs don’t compress well losslessly. The result is often bigger than the JPG you started with. “JPG to WebP without losing quality” in practice means lossy WebP at a quality high enough that nobody can see the difference: 75 to 85 for most photos, up to 90 for images with smooth gradients like skies or studio backdrops.
That leaves one decision, and it saves more bytes than the format change: size. A 4,032-pixel iPhone photo shown in an 800-pixel-wide column is mostly wasted data. Resize to roughly twice the size the page displays (enough for Retina screens), then convert. A resized WebP is often a small fraction of the original JPG’s weight.
Skip the upload-a-file converter sites
Search “jpg to webp” and the first page is converter websites. You upload your photos to someone else’s server, wait, and download them again, for a job your Mac finishes locally in a second. Free tiers cap the number of files, which is exactly the wrong limit for a job that usually means a whole folder. And the photos involved often shouldn’t travel: unreleased products, client shoots, pictures with location data still in them.
One honest exception: Google’s Squoosh web app converts images inside your browser rather than on a server, and it’s good for comparing quality settings side by side on a single image. It handles one image at a time, though, so it’s a preview tool rather than a batch tool. Both methods below run entirely on your Mac and work with Wi-Fi off.
Method 1: cwebp (free, command line)
The reference WebP encoder comes from Google, and Homebrew installs it:
brew install webp
That gives you cwebp, which reads JPG directly. One photo at quality 80:
cwebp -q 80 -metadata icc photo.jpg -o photo.webp
The -metadata icc part matters, and it’s the step most guides leave out. By default cwebp copies no metadata from the source, and that includes the color profile. Photos from recent iPhones are tagged Display P3, and some cameras save in Adobe RGB. Both are wider color spaces than the web’s default sRGB. Strip the tag and browsers read those colors as sRGB, so the WebP looks noticeably duller than the JPG: flatter skin tones, weaker reds and greens. -metadata icc keeps the color profile and still leaves out EXIF data such as GPS coordinates and camera details, which is usually what you want for a public web page.
Resize in the same step with -resize, where a 0 keeps the aspect ratio:
cwebp -q 80 -resize 1600 0 -metadata icc photo.jpg -o photo.webp
A whole folder, writing the results into a webp subfolder (this is for zsh, the default shell on a Mac):
cd ~/Pictures/site-photos
mkdir -p webp
setopt null_glob
for f in *.jpg *.jpeg *.JPG *.JPEG; do
cwebp -quiet -q 80 -metadata icc "$f" -o "webp/${f%.*}.webp"
done
setopt null_glob stops zsh from refusing to run the loop when one of the four patterns matches nothing, which is otherwise what happens if the folder has no .jpeg files. The four patterns cover the usual mix of extensions from cameras, phones and old exports.
cwebp is the complete free answer if you’re comfortable in Terminal. It’s the encoder that build pipelines and image CDNs wrap, it’s scriptable, and it does exactly what you tell it. The costs are the usual command-line ones: no preview, one setting for the whole loop, and you need to remember the metadata flag every time, because forgetting it fails silently. Every photo still converts, just with the wrong colors.
Method 2: Zumkor (drag the folder, pick WebP)
If converting photos for the web is a recurring job rather than a pipeline step, it’s the kind of batch Zumkor is built around: product photos before every store update, a client’s gallery, a monthly blog’s worth of headers. It needs macOS 14 or later on an Apple silicon Mac (M1 or later).
- Drag the JPGs, or the whole folder, into Zumkor. You can also right-click in Finder and choose Services → Add to Zumkor, or import straight from your Photos library.
- Open a row’s menu and pick WebP. “Apply to All” at the top of that menu sets the whole queue at once.
- If the photos are bigger than the page needs, pick a web size: “Web small” (1280 px) or “Web large”. Zumkor sizes pictures in words, not pixels, so there’s no width field to fill in.
- Check the rows. Each one shows the exact filename it will produce before you convert, so you can confirm
IMG_4021.jpgis about to becomeIMG_4021.webp. - Click Convert. Zumkor asks where to save, or uses the folder you set in Settings. The JPG originals stay where they are.
There’s no quality slider, because Zumkor doesn’t have sliders anywhere. You pick the format and the size; the encoding settings come with them. Color profiles are preserved, so Display P3 photos keep their color without any flag to remember. The queue takes up to 2,000 files, conversions keep running with the window closed, and nothing leaves the Mac.
Two extras that fit this job:
- Location data. If a photo still carries where it was taken and what took it, its row tells you before you convert. Pick “Privacy export” to strip it. That matters on a public website, where anyone can download the file and read its metadata. The guide to removing EXIF data covers what’s in there.
- Mixed folders. The same drag converts the iPhone HEIC photos, PNGs and TIFFs sitting in the folder alongside the JPGs, all to WebP, in one pass.
For hands-off automation, Zumkor’s “Convert Files” and “Resize Pictures” actions work in Apple’s Shortcuts app, so a shortcut can run the conversion as part of a larger workflow.
Pricing: everything is free for 7 days. After that you can keep converting 5 files a day (25 a week) for free, and pictures never carry a mark. The Full Version is a one-time $19.99 purchase: buy once and keep it forever, with no subscription and no account, shared with your family through Family Sharing.
The honest trade-off: for a build step, cwebp is free and exactly right. Zumkor earns its place when the batch is ad hoc, the formats are mixed, and you’d rather pick WebP once than keep a shell loop and a metadata flag in your head.
When WebP is the wrong answer
WebP is a format for web pages you control. Outside that, a JPG is usually still the better file to hand someone.
- Email and messages. Most mail apps and chat apps show WebP now, but some desktop mail clients and older apps still don’t. A JPG attachment always opens.
- Print. Photo labs, print kiosks and photo-book services expect JPG or TIFF. Send the original.
- Social uploads. Instagram, Facebook and similar platforms re-compress whatever you upload. Converting to WebP first just adds a third round of compression. Upload the best JPG you have and let them do their own encoding.
- Clients and colleagues. Someone who wants “the photos” wants files that open in anything, including older versions of Office and Photoshop. That’s JPG.
And whatever you convert, keep the JPG originals. WebP is a delivery copy. If you need a different size or quality next year, start again from the JPG or, better, from the master files. Converting WebP back to JPG works, but it adds another round of compression and gives back nothing.
WebP or AVIF?
If you’re already rebuilding your images for speed, AVIF is worth a look. It compresses photographs harder than WebP, often noticeably smaller at the same visual quality, and current browsers support it. The costs are slower encoding and the occasional upload form or CMS plugin that doesn’t accept it yet.
A practical policy for 2026:
- Photos on a site you build yourself: AVIF, served with WebP or JPG as a fallback through a
<picture>element if you care about older browsers. Zumkor’s “AVIF web” preset makes the AVIF copies from the same folder. - Photos going into a CMS, theme or store platform: WebP. It’s accepted nearly everywhere and has a decade of support behind it.
- Logos, icons and screenshots: lossless WebP from the PNG originals, not from JPGs. The PNG to WebP guide covers that half of the asset folder.
If AVIF files are landing in your own Downloads folder and refusing to open somewhere, that’s the reverse problem, and the AVIF to JPG guide covers it.
Getting the output right
- Resize before you convert. It’s the largest saving available. Aim for about twice the largest size the image is displayed at.
- Quality 75–85 for photos. Below about 70, fine textures start to smear; above 90 the file grows quickly for differences nobody sees in a browser.
- Never lossless for JPG sources. It locks in the JPG’s artifacts at a bigger file size.
- Check one photo with strong color. Put the JPG and the WebP side by side in Preview. If the WebP looks flat, the color profile was dropped; with cwebp, add
-metadata iccand convert again. - Update your references. Changing
.jpgto.webpchanges every image URL. On a hand-built site, update the HTML or templates; in a CMS, upload the WebP versions through the media library rather than replacing files on the server, so the CMS knows they exist. - Don’t convert WebP to WebP. To try a different quality, go back to the JPG each time. Each lossy pass stacks on the last.
Bottom line
- Built-in tools can’t do it. Preview, the Finder Quick Action and
sipsread WebP but don’t write it. - Terminal, free:
brew install webp, thencwebp -q 80 -metadata icc photo.jpg -o photo.webp, with-resizefor oversized photos and a loop for folders. Never skip the metadata flag. - A folder (or a habit), mixed formats, no scripts: Zumkor. Drag the folder in, pick WebP and a web size, and convert on your Mac with color profiles intact. Free for 7 days, then 5 files a day free, or a one-time $19.99 for everything.
- Before any of it: resize to what the page actually shows, keep the JPG originals, and stay with lossy mode.
The JPGs aren’t wrong. They’re just heavier than a web page needs, and fixing that takes one folder and a few minutes, without any photo leaving your Mac.
FAQ
Can a Mac convert JPG to WebP without extra software?
No. macOS opens WebP files everywhere, but nothing built in saves them: Preview’s Export menu has no WebP option, the Finder Quick Action converts only to JPEG, PNG and HEIF, and sips reads WebP without writing it. You need Google’s free cwebp encoder (installed with Homebrew) or a converter app such as Zumkor.
Does converting JPG to WebP lose quality?
A little, because you’re re-encoding an already lossy file. At WebP quality 75 to 85 the difference is invisible at web sizes and the file is usually noticeably smaller. Don’t use lossless WebP for JPGs: it preserves every JPEG artifact exactly and the result is often bigger than the JPG you started with.
How do I batch convert JPG to WebP on a Mac?
In Terminal, install cwebp with brew install webp and loop it over the folder with -metadata icc so color profiles survive. Or drag the folder into Zumkor, pick WebP and click Convert. It runs on your Mac with nothing uploaded, takes up to 2,000 files at once, and writes the WebP files to a folder you choose.