Why the default format matters
Every time you press Cmd+Shift+3 or Cmd+Shift+4, macOS saves a screenshot in PNG format by default. PNG is lossless and supports transparency, but it produces large files — a single Retina screenshot can easily hit 5–10 MB. If you take dozens of screenshots per day for documentation, bug reports, or sharing with AI coding assistants, those files add up fast.
Changing the default format lets you optimize for your workflow. JPG files are dramatically smaller (often 70–80% smaller) at the cost of slight quality loss. HEIC offers even better compression with near-lossless quality. PDF is ideal when you need screenshots that embed cleanly into documents. The right choice depends on what you do with your screenshots after capturing them.
Change screenshot format with Terminal
The fastest way to change the screenshot format is a single Terminal command using the defaults system. Open Terminal and run one of these:
# Change to JPG (smallest file size, slight quality loss)
defaults write com.apple.screencapture type jpg
# Change to HEIC (small file size, near-lossless quality)
defaults write com.apple.screencapture type heic
# Change to PDF (vector-friendly, embeds in documents)
defaults write com.apple.screencapture type pdf
# Change to TIFF (lossless, large files, print-quality)
defaults write com.apple.screencapture type tiff
# Change to GIF (limited colors, small file size)
defaults write com.apple.screencapture type gif
# Change back to PNG (the default)
defaults write com.apple.screencapture type png
After running any of these, restart the screenshot service so the change takes effect immediately:
killall SystemUIServer
That's it. Every screenshot you take from now on will use the new format. The change persists across reboots — you only need to run the command once.
Check your current screenshot format
Not sure what format you're currently using? Run this command:
defaults read com.apple.screencapture type
If it returns an error saying the domain/default pair doesn't exist, you're using the system default (PNG). Otherwise, it will show the format you've set — jpg, heic, pdf, etc.
Format comparison: which one should you use?
| Format | File size | Quality | Transparency | Best for |
|---|---|---|---|---|
| PNG | Large (5–10 MB) | Lossless | Yes | UI design, detailed documentation, pixel-perfect work |
| JPG | Small (0.5–2 MB) | Lossy | No | Sharing in Slack/email, blog posts, casual screenshots |
| HEIC | Very small (0.3–1.5 MB) | Near-lossless | Yes | Storage-conscious users, Apple ecosystem workflows |
| Medium (1–5 MB) | Vector-capable | Yes | Embedding in documents, printing, presentations | |
| TIFF | Very large (10–20 MB) | Lossless | Yes | Print production, archival, professional graphics |
| GIF | Small (0.5–2 MB) | 256 colors max | Yes (binary) | Simple UI elements, icons, limited-color content |
The HEIC question: compatibility vs. compression
HEIC (High Efficiency Image Container) offers the best compression-to-quality ratio of any format macOS supports. A HEIC screenshot is typically 30–50% smaller than the equivalent JPG at comparable visual quality, and it supports transparency and lossless compression modes.
The catch is compatibility. HEIC works natively across Apple devices and recent versions of macOS, iOS, and iPadOS. But it can cause friction in cross-platform workflows:
- Slack: Renders HEIC inline on macOS/iOS clients, but Windows users may see a broken file
- GitHub: Does not render HEIC images in issues, PRs, or README files
- Browsers: Safari supports HEIC natively; Chrome and Firefox added support recently but older versions don't
- AI coding assistants: Most accept HEIC, but JPG and PNG are more universally supported
- WordPress/CMS: Many require a plugin or server-side conversion for HEIC uploads
If you work entirely within the Apple ecosystem and value storage space, HEIC is an excellent choice. If your screenshots go to GitHub, cross-platform teams, or web publishing, stick with JPG or PNG.
Convert screenshots between formats
You don't have to commit to a single format. macOS includes sips (Scriptable Image Processing System) for quick command-line conversions:
# Convert a single PNG to JPG
sips -s format jpeg screenshot.png --out screenshot.jpg
# Convert with quality control (0-100, lower = smaller file)
sips -s format jpeg -s formatOptions 80 screenshot.png --out screenshot.jpg
# Convert PNG to HEIC
sips -s format heic screenshot.png --out screenshot.heic
# Batch convert all PNGs in a folder to JPG
for f in *.png; do sips -s format jpeg "$f" --out "${f%.png}.jpg"; done
# Convert HEIC back to PNG (for sharing with non-Apple users)
sips -s format png screenshot.heic --out screenshot.png
You can also convert using Preview: open the screenshot, go to File → Export, and choose your target format from the Format dropdown. Preview gives you a quality slider for JPG and HEIC exports.
Automate format conversion with Shortcuts
If you want to keep PNG as your default but automatically convert screenshots for specific workflows, macOS Shortcuts can help:
- Open the Shortcuts app
- Create a new shortcut
- Add Get Selected Files in Finder or Receive Input
- Add Convert Image and set the target format (JPG, HEIC, etc.)
- Add Save File to choose the output location
- Optionally assign a keyboard shortcut or add it to Finder's Quick Actions
This gives you the best of both worlds: lossless PNG captures by default, with one-click conversion when you need smaller files for sharing.
Set JPG quality for screenshots
When you switch to JPG format, macOS uses a default quality level that balances file size and visual fidelity. You can't directly control the JPG quality through defaults write — the system uses a fixed quality setting.
For more control over compression, capture in PNG (lossless) and then convert with a specific quality level:
# High quality JPG (90%) - minimal visible compression
sips -s format jpeg -s formatOptions 90 screenshot.png --out screenshot.jpg
# Medium quality JPG (70%) - good balance of size and quality
sips -s format jpeg -s formatOptions 70 screenshot.png --out screenshot.jpg
# Low quality JPG (50%) - small files, visible artifacts on gradients
sips -s format jpeg -s formatOptions 50 screenshot.png --out screenshot.jpg
For most screenshot workflows, 70–80% quality is the sweet spot. Text remains sharp, UI elements look clean, and file sizes drop by 80%+ compared to PNG.
Disable screenshot shadow before changing format
macOS adds a drop shadow to window screenshots by default. This shadow adds transparent pixels around the image, which increases file size — especially in PNG and TIFF formats. If you're switching formats to save space, consider also disabling the shadow:
# Disable window screenshot shadows
defaults write com.apple.screencapture disable-shadow -bool true
killall SystemUIServer
This pairs well with a JPG or HEIC format change, since the shadow is lost in JPG conversion anyway (JPG doesn't support transparency). Removing it beforehand gives you cleaner images with predictable dimensions.
Reset everything to defaults
If you want to undo all screenshot format customizations and return to the factory settings:
# Reset format to PNG
defaults delete com.apple.screencapture type
# Re-enable shadows
defaults delete com.apple.screencapture disable-shadow
# Apply changes
killall SystemUIServer
LazyScreenshots captures, compresses, and converts screenshots in one step — no Terminal commands needed. Choose your output format per screenshot, not per system setting. $29 one-time.
Try LazyScreenshots — $29 one-time