Guide

How to Convert Screenshots Between PNG, JPG & WebP on Mac

Change screenshot file formats using Preview, the terminal, or a faster built-in converter.

PNG vs JPG vs WebP: when to use each

macOS saves screenshots as PNG by default. PNG is not always the best choice. Here is when to use each format:

PNG (Portable Network Graphics)

  • Lossless compression — no quality loss
  • Supports transparency (alpha channel)
  • Best for: UI screenshots, text-heavy captures, anything where sharp edges and readability matter
  • Downside: large file sizes, especially for complex images

JPG (JPEG)

  • Lossy compression — smaller files but slight quality loss
  • No transparency support
  • Best for: photos, screenshots with lots of gradients or images, sharing in contexts where file size matters
  • Downside: text and sharp edges can look blurry at low quality settings

WebP

  • Both lossy and lossless modes available
  • Supports transparency
  • Typically 25–35% smaller than PNG for lossless, and smaller than JPG for equivalent quality lossy
  • Best for: web publishing, blog posts, documentation sites
  • Downside: not universally supported in older tools and email clients

Rule of thumb: Use PNG for screenshots you are sharing in dev tools and AI chats (quality matters, size does not). Use WebP for screenshots going on websites or documentation. Use JPG when you need the smallest file and can tolerate some quality loss.

Convert using macOS Preview

  1. Double-click the screenshot to open it in Preview.
  2. Go to File > Export (not “Save As”).
  3. Click the Format dropdown and choose JPEG, PNG, HEIC, or TIFF.
  4. For JPEG, adjust the Quality slider. 80% is a good balance of size and quality.
  5. Click Save.

Note: Preview does not natively export to WebP. To convert to WebP, you need the terminal or a third-party tool.

Preview works fine for one-off conversions. For batch conversions or frequent use, it is too many clicks per file.

Convert using the terminal with sips

macOS includes sips (Scriptable Image Processing System), a command-line tool for image conversion.

Convert PNG to JPG

sips -s format jpeg screenshot.png --out screenshot.jpg

Convert PNG to WebP

sips does not support WebP natively. Use cwebp from the WebP tools package instead:

brew install webp

cwebp -q 80 screenshot.png -o screenshot.webp

Batch convert all PNGs in a folder

for f in *.png; do sips -s format jpeg "$f" --out "${f%.png}.jpg"; done

The terminal approach is fast and scriptable, but requires comfort with the command line. Most developers can use this, but it is not practical mid-workflow when you just want to change a format and paste.

Convert with LazyScreenshots

LazyScreenshots includes a built-in format converter in the screenshot editor. After capturing with Cmd+Shift+2, you can change the output format before pasting or saving.

  • Switch between PNG, JPG, and WebP with one click
  • Adjust quality for lossy formats
  • No external tools or terminal commands needed
  • The converted image auto-pastes into your AI tool

This is especially useful when you need a smaller file — for example, when pasting into a tool with upload size limits, or when saving screenshots for web documentation.

File size comparison

For a typical 1920×1080 screenshot of a code editor:

  • PNG: ~800 KB – 1.5 MB (lossless, sharp text)
  • JPG (80% quality): ~150 – 300 KB (slight blur on text edges)
  • WebP (80% quality): ~100 – 200 KB (similar quality to JPG, smaller file)
  • WebP (lossless): ~500 – 900 KB (same quality as PNG, smaller file)

For screenshots that will be viewed at full resolution (bug reports, AI context), PNG is the safest choice. For screenshots going on the web, WebP gives you the best size-to-quality ratio.

Convert formats without leaving your workflow

LazyScreenshots lets you capture, convert, and paste in one flow. No terminal commands, no opening Preview, no extra steps.

  • One-click format switching: PNG, JPG, WebP
  • Quality slider for lossy formats
  • Auto-paste to Claude, Cursor, ChatGPT, and more
  • Annotations, pixelation, and AI editing included
Try LazyScreenshots — $29 one-time