HEIC Batch Converter — Convert Many HEIC Photos at Once
Convert multiple HEIC and HEIF photos to JPG, PNG or WebP at once. The libheif decoder runs in your browser and the outputs are bundled into a single ZIP for one-click download.
Drop your HEIC / HEIF files hereTap to select files
Supports HEIC, HEIF, up to 200MB each
What to do next
Related tools
HEIC to JPG
Convert Apple HEIC photos to JPG format.
imageHEIC to PNG Converter
Convert iPhone HEIC / HEIF photos to universally compatible PNG, lossless and ready for any app, website, document, or email — even those that reject HEIC outright. Runs entirely in your browser; your photos never leave your device.
imageHEIC to PDF Converter
Convert HEIC/HEIF images (Apple photo format) to PDF. Decoded in-browser using heic-to.
pdfCompress Image
Reduce image file size while preserving visual quality.
imageResize Image
Resize images to exact dimensions or percentages.
imageImage to WebP
Convert images to the modern WebP format.
imageAbout HEIC Batch Converter
Apple started defaulting iPhone cameras to HEIC in 2017 and has not looked back. The format saves about half the storage of a JPEG at the same visual quality and supports advanced colour pipelines that JPEG cannot. The downside is that practically every non-Apple ecosystem still treats HEIC as a foreign format — Slack chokes, Windows Photos refuses, half the print-on-demand sites reject the upload. The HEIC Batch Converter solves this for a folder full of files in one drop. Bring the photos in as HEIC, pick the target format (JPG, PNG, or WebP), and download a ZIP of converted images.
The decoder is libheif compiled to WebAssembly through the heic-to library — the same engine that powers the single-file HEIC to JPG tool. Quality matches what Apple's own Preview app produces when you "Export As" a HEIC: lossless decode of the source, then a single re-encode pass to the target format. JPG output uses 0.92 quality (the sweet spot where artefacts are imperceptible on photographic content). PNG output is fully lossless. WebP output uses 0.85 quality (matching Google's recommended default for photographic WebP), or lossless if you toggle the option.
Concurrency is bounded at three simultaneous decodes. libheif allocates significantly inside its WASM heap during a decode — running ten in parallel would push browser memory past comfortable limits on phones, and the throughput gain over three is marginal because the bottleneck is the decode itself, not orchestration. The same pattern Apple's Preview app uses internally. The progress bar updates per file so a 100-photo batch shows a clean visible advance through the queue.
EXIF metadata survives end-to-end for JPG and WebP outputs (PNG does not have a standard EXIF home, so capture date and GPS coordinates are dropped on PNG export — heads up if you depend on geo-tags). The original HEIC files on your disk are never modified; the tool only ever reads bytes from them. Output is a single ZIP named with today's date so successive runs do not overwrite each other on download. There is no upload, and no per-file or per-month cap.
How it works
- 1Drop one or more HEIC / HEIF photos onto the upload area. Combined input size up to 200 MB is accepted.
- 2Pick the output format — JPG (default, smallest size for photos), PNG (lossless), or WebP (modern, both lossy and lossless variants).
- 3Optional: adjust the JPG/WebP quality slider if the default 0.92/0.85 setting is not what you want.
- 4libheif compiled to WebAssembly decodes each photo in your browser. Concurrency is capped at three to keep mobile devices stable.
- 5Each decoded image is re-encoded to the target format and packaged into a single ZIP entry.
- 6Download the ZIP. Filenames keep their original base name with the new extension; EXIF metadata is preserved for JPG and WebP outputs.
Common use cases
- Convert a folder of holiday HEIC photos to JPG so you can upload them to a service that does not accept HEIC
- Bulk-export a wedding photographer’s iPhone burst-mode photos to PNG for a print-on-demand album service
- Prepare a stack of product shots for a Shopify listing where the platform wants WebP for fast page loads
- Convert school-event HEIC photos to JPG before sharing them in a parents WhatsApp group on Android phones
- Migrate a personal photo archive from HEIC to lossless PNG for long-term storage on a NAS
- Convert iPhone screenshots that auto-saved as HEIC back to JPG/PNG so they paste cleanly into a slide deck
FAQ
Which output formats can I pick?
JPG (default, 0.92 quality), PNG (lossless), or WebP (lossy or lossless). The same output format is applied to every input file in the batch.
How many photos can I convert at once?
Up to 200 MB of combined input, which typically fits 60-120 phone-shot HEIC photos. The processor keeps concurrency capped at three simultaneous decodes so mobile browsers stay stable.
Does it preserve EXIF metadata?
JPG output preserves the EXIF block including capture date and GPS coordinates. PNG output drops EXIF because the format does not have a well-defined home for it. WebP retains EXIF when present.
Will my photos be uploaded?
No. heic-to runs the libheif decoder compiled to WebAssembly entirely inside your browser tab. The ZIP is built in memory.
How is this different from the single-file HEIC to JPG tool?
The single-file tool processes one photo at a time. The batch converter accepts multiple files in one drop, decodes them in parallel with bounded concurrency, and packages every output into one ZIP — much faster for a folder of holiday photos.
Does it lose any quality?
Decode is lossless — libheif extracts the original pixel data. The single re-encode pass to JPG/WebP is lossy by definition (those are lossy formats), but at the default quality settings the result is visually indistinguishable from the source on a calibrated screen. Pick PNG output for fully lossless conversion.
How big can the batch be?
Up to 200 MB combined. That comfortably fits 60-120 typical phone-shot HEIC photos. The cap is on combined input size, not file count, so a folder of 500 small thumbnails is fine.
Will my photos upload anywhere?
No. heic-to runs the libheif decoder compiled to WebAssembly inside your browser tab. The conversion and the ZIP build both happen locally; the only network activity is the initial library download (cached after first run).
Are EXIF data and GPS coordinates preserved?
Yes for JPG and WebP outputs — the EXIF block is copied through unchanged. PNG does not have a standardised EXIF location, so capture date / camera info / GPS tags are dropped on PNG export. Strip EXIF deliberately with EXIF Data Remover if you want to share the converted files without the metadata.
How does it compare to converting one at a time with the single-file HEIC to JPG tool?
The decoder and quality settings are identical. The batch tool is faster for multiple files because it loads the libheif WebAssembly core once and reuses it across the queue, instead of paying the warm-up cost per file. For a folder of 50 photos the difference is roughly 30 seconds saved.
What if some files are not really HEIC?
The tool inspects the file type and skips anything that is not HEIC or HEIF. Skipped files are listed in the metrics so you can see exactly what was excluded and re-drop them through Bulk Image Converter (which accepts every common image format) instead.
Can I pick different output formats per file?
Not in this tool — every file is converted to the same target format. For a per-file workflow, drop one file at a time into the single-file HEIC to JPG / HEIC to PNG / HEIC to PDF tools.