Photos taken with an iPhone are 2-4 MB each; hundreds of them take up 1-2 GB.
Trying to compress them reveals some tutorials convert to JPG, making files bigger, while others barely shrink.
The issue is that HEIC is already a very efficient format. To make it smaller, you must use the right method.
First Understand HEIC: Why It Is 'Uncompressible'
HEIC (HEIF container + HEVC encoding) is Apple's default photo format since iOS 11; you select it in "Settings → Camera → Format → Most Compatible".
It uses H.265 intra-frame compression technology, typically taking up about half the size of JPEG for the same quality. So:
- Converting HEIC to JPG will not make it smaller, and it often becomes larger. Converting to JPG is for compatibility, not for saving space.
- HEIC captured by iPhone is already compressed once, so re-encoding it with "similar quality" saves very little space.
To make HEIC significantly smaller, there are only three paths: reduce encoding quality, reduce resolution, remove extra data. Each method below is essentially one of these three.
Before Batch Compression: Do Not Modify Photos Directly in the 'Photos' App
The 'Photos' App library is a database package (Photos Library.photoslibrary). Do not directly compress or replace files inside it, or the library index may become corrupted.
The correct approach is to export first: select photos in 'Photos', File → Export → Export Unmodified Originals, export to a normal folder, and then batch process that folder.
Method 1: sips Command Line (Built-in, Controllable Quality)
macOS's built-in sips can batch re-encode HEIC and specify quality (0-100) via formatOptions:
bash
mkdir -p ~/Desktop/heic-out
sips -s format heic -s formatOptions 50 ~/Desktop/heic-in/*.HEIC --out ~/Desktop/heic-out/
We tested this with an iPhone photo (4032×3024, original 3.6 MB):
| Quality | Output Size | Change |
|---|---|---|
| 80 | 3.6 MB | Slightly larger |
| 50 | 1.2 MB | Saved about 2/3 |
This shows two things: if quality is set too high, re-encoding doesn't save space and can even make it larger; the real space saving comes from reducing quality below the original. How much quality loss is acceptable is up to you to check by comparing images.
Combined with parameters like -Z 2048 to limit long-edge pixels, you can make it even smaller—provided you don't need original resolution.
Method 2: 'Shortcuts' App or Finder 'Quick Actions' (GUI)
- Finder Right-click → Quick Actions → Convert Images: Can batch convert to HEIF/JPEG/PNG and select image size (Small/Medium/Large/Actual Size). Good for "reduce resolution" needs, but fine-tuning quality is not possible.
- 'Shortcuts' App: Use the "Convert Images" action to set format, quality, and whether to retain metadata, then combine with "Resize Image" to create a reusable batch workflow.
Both methods generate new files; the originals remain untouched, and you need to organize and replace them yourself.
Method 3: Batch Export in 'Preview'
Open multiple photos in 'Preview', select all in the thumbnail sidebar, File → Export Selected Images, and choose a format to batch export. Suitable for occasional small batches with fewer options than the previous two.
Method 4: ImgZilla (In-place Batch Compression, Originals to Trash)
ImgZilla is a macOS image compression tool we developed, supporting HEIC/HEIF. Its difference from the methods above is:
- In-place compression: Filename, path, and format remain unchanged;
IMG_1234.HEICstaysIMG_1234.HEICafter compression, no need to organize an output directory. - Drag an entire folder: Recursively scans subdirectories and processes HEIC along with JPG, PNG, WebP, etc.
- Originals moved to Trash by default: Right-click "Put Back" if you're not satisfied.
- Does not force-compress uncompressible files: Files with less than 0.4% compression are labeled "Already Minimal" and kept as-is, without deducting free quota.
- Runs locally: No photos are uploaded to any server.
However, there are a few points regarding HEIC:
- It re-encodes with system ImageIO at fixed quality (0.75), does not significantly lower quality or change resolution. For iPhone-native HEIC, the space saved is usually small; many already-processed HEICs are directly labeled "Already Minimal". If your goal is to "shrink photos to one-third of the original", the sips method above is more suitable.
- EXIF is removed by default (shooting time, location, camera info, etc.). If needed, enable "Keep EXIF Information" in settings.
- Current version does not preserve iPhone photo HDR gain maps. Newer iPhone photos include a gain map for HDR display; this data is lost after compression, and photos will display at normal brightness on HDR-capable screens. For photos requiring HDR effects, it is recommended not to compress with ImgZilla, or to keep the originals.
So ImgZilla is better for conveniently compressing an entire folder mixed with various formats, rather than a tool specifically for "slimming down" iPhone photos.
Summary Table
| Method | How Much Can Be Saved | Control Quality | What Happens to Originals | Best For |
|---|---|---|---|---|
| sips command line | Depends on quality parameters; can be a lot | ✅ 0-100 | Export to new directory | Want to significantly shrink; willing to use commands |
| Shortcuts / Quick Actions | Mainly by reducing resolution | Shortcuts allows | Generate new files | GUI, fixed workflows |
| Preview batch export | Limited | Fewer options | Generate new files | Occasional small batches |
| ImgZilla | Usually little for iPhone originals | Fixed, no tuning | In-place replacement; originals go to Trash | Conveniently compressing mixed-format folders |
Final Tips
- The biggest space saver is not compression, but curation. Deleting burst shots, duplicates, and blurry photos is more effective than any compression.
- To significantly reduce size, accept quality loss. HEIC is already efficient; "almost no quality loss while saving half the size" basically does not apply here.
- Backup originals for important photos first. Regardless of the method, re-encoding is lossy, and the original quality cannot be recovered after compression.
ImgZilla currently only supports macOS (12.3 and above) and can be downloaded from the Mac App Store. The free version compresses 10 images per day; only successful compressions count toward the quota.
