Quick answer
Mac: drag your HEIC folder onto Automator's 'Convert to JPEG' Quick Action — built into macOS. Windows: install iMazing HEIC Converter (free) and drag a folder onto it. Linux/scripted: ImageMagick `magick mogrify -format jpg *.heic` converts every HEIC in a folder. All preserve EXIF metadata.
Method 1: Convert HEIC to JPG online (free, in your browser)
- 1
Open the FormatDrop image converter
Open formatdrop.com/image-converter in your browser. The converter handles batch HEIC→JPG locally — drop a folder of HEIC files, get a ZIP of JPGs back. EXIF metadata preserved. No upload to any server.
Go to converter - 2
Drop multiple HEIC files at once
Drag a folder or multi-select hundreds of .heic files. The converter processes them in parallel using your computer's CPU. A folder of 1000 HEIC files typically converts in 2-5 minutes (depending on photo size and CPU).
- 3
Choose JPG output settings
JPEG quality slider: 85% is standard (visually lossless, smaller files), 95% for archival. Resolution: leave at original (HEIC is already at sensor resolution). 'Preserve EXIF' should be enabled by default.
- 4
Download as ZIP
Multi-file batches download as a ZIP archive. Each JPG keeps the original filename pattern (IMG_1234.heic → IMG_1234.jpg). EXIF metadata transfers — capture date, camera, GPS, all preserved. Drop the ZIP into your photo library, Dropbox, or wherever the photos need to go.
Method 2: Build a macOS Automator Quick Action (free, native)
macOS has a built-in HEIC-to-JPG converter via Automator's 'Change Type of Images' action. Set up once, runs from Finder right-click forever.
- Open Automator (Spotlight: ⌘Space → 'Automator').
- Choose 'Quick Action' as document type.
- Set 'Workflow receives current' to 'image files' in 'Finder'.
- Drag 'Change Type of Images' action into the workflow. Set type to 'JPEG'.
- Optional: drag 'Move Finder Items' below to keep originals separate.
- Save as 'HEIC to JPG'. Now in Finder, right-click any folder of HEICs → Quick Actions → HEIC to JPG. All convert in place.
Note: Automator preserves EXIF metadata automatically. Works on Apple Silicon and Intel Macs. The first run after creation may take a moment to warm up; subsequent runs are instant.
Method 3: iMazing HEIC Converter on Windows (free, drag-and-drop)
iMazing HEIC Converter is the simplest free Windows batch tool. Free download, drag-and-drop interface.
- Download iMazing HEIC Converter from imazing.com (free, no account).
- Open the app. Drag your HEIC folder (or multi-select files) onto the window.
- Choose output: JPEG or PNG. Set quality slider (90% is standard).
- Click Convert. iMazing processes every file, preserving EXIF and capture dates.
- Output saves to the same folder by default; configurable to a separate output folder.
Note: Free for unlimited batch conversion. Doesn't require Apple ID or any account. Microsoft Store also has free 'HEIC Image Viewer' apps but iMazing's batch UI is the most polished.
Method 4: ImageMagick batch (cross-platform, scriptable)
ImageMagick handles HEIC natively (newer builds) and is the right tool for scripted batch conversion across any OS.
- Install. Mac: `brew install imagemagick`. Linux: `apt install imagemagick`. Windows: download from imagemagick.org.
- Verify HEIC support: `magick -list format | grep HEIC` should show HEIC in the list.
- Convert every HEIC in a folder: `magick mogrify -format jpg *.heic`. Output: same filenames with .jpg extension, originals untouched.
- Set JPEG quality: `magick mogrify -format jpg -quality 90 *.heic`.
- Convert recursively across subfolders: `find . -name '*.heic' -exec magick {} {}.jpg \;` (Mac/Linux).
- Resize while converting: `magick mogrify -format jpg -resize 50% *.heic` produces half-size JPGs.
Note: ImageMagick is the most flexible batch tool — full control over resolution, quality, color space, and naming. For 10,000+ photos, it's the fastest option.
Method 5: Python script (best for custom batch logic)
Python with pillow-heif is the right tool for custom batch processing — sort by date, filter by GPS location, rename based on EXIF, etc.
- Install: `pip install pillow pillow-heif`.
- Basic batch script: `from PIL import Image; from pillow_heif import register_heif_opener; import glob; register_heif_opener(); for f in glob.glob('*.heic'): img = Image.open(f); img.save(f.replace('.heic', '.jpg'), 'JPEG', quality=90, exif=img.info.get('exif'))`.
- Process subdirectories: replace `glob.glob('*.heic')` with `glob.glob('**/*.heic', recursive=True)`.
- Sort by capture date: read EXIF DateTimeOriginal, sort filenames, rename like 2025-04-29_001.jpg.
- Filter by GPS: parse EXIF GPSInfo, only convert photos taken in specific locations.
Note: Python is the right tool for repeatable workflows with custom logic. For one-time bulk conversion, Automator (Mac) or iMazing (Windows) is faster.
When you need to convert HEIC to JPG
- 1
Migrating an iPhone photo library to a Windows PC
After a few years on iPhone, your library can have 10,000+ HEIC photos. Bulk-convert to JPG before importing to Windows Photos, Adobe Lightroom for Windows, or any non-Apple photo manager.
- 2
Uploading photos to platforms that don't accept HEIC
Some real estate listing sites, school portals, and old e-commerce platforms reject HEIC. Bulk-convert your iPhone shots to JPG before upload.
- 3
Sharing a vacation album with non-iPhone family
Convert your AirDrop-friendly HEICs to email-friendly JPGs in one batch. Aunts and uncles on Windows or Android can open the photos without installing anything.
- 4
Backing up to a cloud service that doesn't support HEIC
Some older cloud backup services (Carbonite, Backblaze) display thumbnails for JPG but not HEIC. Convert before backup so you can preview/restore reliably.
- 5
Preparing photos for printing at a third-party print shop
Many print shops still expect JPG specifically. Bulk-convert before submitting an order to avoid the shop's own (often lossy) HEIC conversion.
Troubleshooting common HEIC to JPG problems
ImageMagick says 'no decode delegate for this image format'
Your ImageMagick build doesn't include HEIC support. Mac: reinstall via Homebrew with `brew install imagemagick` (default Homebrew build includes HEIC). Linux: install libheif and rebuild ImageMagick. Windows: download a 'full' build from imagemagick.org with HEIC enabled.
EXIF data is missing after conversion
Some tools strip EXIF by default. ImageMagick preserves EXIF unless you pass `-strip`. Python pillow-heif requires explicitly passing `exif=img.info.get('exif')` (shown in Method 5). iMazing and Automator preserve EXIF automatically. Verify by checking a sample with `exiftool image.jpg` or Mac's Get Info.
Photos appear rotated incorrectly after batch convert
iPhones store orientation in EXIF; HEIC and JPG handle it slightly differently. Some converters apply rotation, others preserve EXIF orientation tag. To force consistent results: ImageMagick `magick input.heic -auto-orient output.jpg` applies rotation and clears the EXIF tag. Or use a tool that preserves the EXIF orientation tag (most modern viewers respect it).
Batch process is very slow (an hour for 1000 photos)
ImageMagick's `mogrify` is single-threaded by default. Speed up with parallel processing: GNU parallel: `find . -name '*.heic' | parallel 'magick {} {}.jpg'`. Or Python multiprocessing: `from multiprocessing import Pool; with Pool() as p: p.map(convert_one, glob.glob('*.heic'))`. Apple Silicon Macs convert ~5× faster than Intel for HEIC due to hardware accelerator.
Why convert HEIC to JPG?
Modern iPhones produce HEIC photos by default — saving storage but creating compatibility problems with Windows, older software, and many web platforms. For occasional photos, manual conversion is fine. For library migrations and bulk uploads, batch tools are essential.
Mac users have Automator built in. Windows users get the simplest experience from iMazing HEIC Converter. Cross-platform power users use ImageMagick. Customizable workflows go through Python. The browser tool covers everyone who doesn't want to install anything.
All preserve EXIF metadata correctly with default settings. The conversion is lossy (HEIC → JPG always recompresses), but at 90% quality the difference is imperceptible.
Your files never leave your device
FormatDrop runs the conversion engine entirely inside your browser using WebAssembly. No file upload. No server. Nothing stored. You can verify this by opening DevTools → Network tab and watching: zero upload requests.
Frequently asked questions
Is batch HEIC to JPG conversion free?
Will batch conversion preserve EXIF data?
How long does batch conversion take?
Best Windows batch HEIC converter?
Can I batch convert HEIC to JPG on iPhone or iPad?
Does ImageMagick support HEIC?
No account. No upload. Works in any browser.