Free HEIC to JPG Converter

Convert iPhone HEIC/HEIF photos to JPG format instantly. Batch convert multiple files at once. Your files never leave your device.

Your files never leave your device
85%
Drop HEIC/HEIF files here or click to browse

Supports HEIC, HEIF · multiple files

Converting...

What is HEIC?

HEIC (High Efficiency Image Container) is a modern image format introduced by Apple for iPhones and iPads. It offers better compression than JPEG while maintaining image quality, reducing file sizes by up to 40%. However, HEIC files are not widely supported on all devices and platforms, making conversion to JPG essential for sharing photos universally.

More precisely, HEIC is the ISO/IEC 23008-12 HEIF container holding still-image data coded with the H.265/HEVC video codec. Apple shipped HEIC as the default Camera format on the iPhone 7 and later starting with iOS 11 in 2017. The underlying HEVC compression is roughly 50% more efficient than JPEG at perceptually identical quality, which is why a typical iPhone snapshot saves to 1.5-2 MB as HEIC instead of the 3-4 MB it would have taken as JPEG. The trade-off is licensing complexity: HEVC patents are pooled across MPEG LA, HEVC Advance, Velos Media and other licensors, which is why most platforms outside Apple's ecosystem cannot decode HEIC natively even in 2026.

Converting HEIC to JPEG goes against the file-size grain: the output is typically larger than the input, because JPEG (a 1992 standard) is less efficient than HEVC (a 2013 standard). A 2 MB iPhone HEIC normally becomes a 3-4 MB JPEG at quality 85. You accept that growth in exchange for universal compatibility: JPEG works on every operating system, email client, content management system, photo-print kiosk and legacy device built in the last thirty years. HEIC works reliably only inside the Apple ecosystem (iOS, macOS, current iPadOS), partially on Windows 11 with the paid HEVC extension, and on Android only with third-party viewers.

How this tool works under the hood

The conversion engine is heic2any by Alexander Larsson (GitHub: alexcorvi/heic2any, MIT licence), which wraps the canonical C++ HEIF decoder libheif (by struktur AG, LGPL) compiled to WebAssembly. When you drop a file, heic2any hands the bytes to the WebAssembly module: libheif parses the ISOBMFF container, locates the HEVC-coded image item, decodes the HEVC bitstream to raw RGBA pixel data, and applies the EXIF orientation if present. The pixel buffer is then drawn onto an in-memory <canvas> element.

From the canvas, canvas.toBlob('image/jpeg', quality/100) invokes the browser's built-in JPEG encoder. The encoder performs the standard JPEG pipeline (RGB to YCbCr conversion, optional chroma subsampling, 8x8 DCT blocks, quantization with the tables corresponding to your slider value, zigzag scan, run-length and Huffman entropy coding). The slider range (60-100) maps directly to the encoder's quality argument. For multi-file batches, JSZip (Stuart Knightley, MIT/GPL dual) packages every JPEG output into a single ZIP archive that the browser then serves as one download.

The library bundle is significant: heic2any minified is about 700 KB because the libheif WebAssembly module is embedded, and JSZip adds another 95 KB. On first visit roughly 800 KB downloads from the CDN; subsequent visits run from the cache. After that initial fetch nothing else leaves the browser. The HEIC bytes you select never touch a server. Open DevTools' Network tab while you convert a batch: the only requests are the one-time library fetches on the very first load. Switch the browser to airplane mode after the page is open and the converter keeps working on local HEIC files.

A brief history of HEIC and the formats around it

How It Works

  1. Upload HEIC files: Drop or select one or multiple HEIC/HEIF files to convert.
  2. Adjust quality: Choose JPG quality from 60% to 100% (default 85%).
  3. Convert: Click "Convert All" to convert all files. Conversion happens instantly in your browser.
  4. Download: Download individual files or all as a ZIP archive.

Why Convert HEIC to JPG?

Features

Real-world HEIC-to-JPG workflows

Common pitfalls and what they mean

Privacy: photos never leave your device

Every cloud-based HEIC converter (CloudConvert, Convertio, iLoveIMG, Aspose, FreeConvert, the dozens of "heic to jpg online" services) uploads your file to the operator's servers, runs their conversion, and returns the JPEG as a download. The privacy implications for iPhone photos are non-trivial because the files routinely embed: precise GPS coordinates of where the photo was taken (often accurate to a few meters), camera model and device identifier, capture date and time, Live Photo motion captures (3 seconds of audio and video around the shutter press), Portrait-mode depth maps that reveal 3D facial structure, faces detected by on-device machine learning. All of that goes to the operator's infrastructure. Most operators publish privacy policies committing to delete uploads within an hour or two and to encrypt in transit, and the larger ones (Cloudinary, Smallpdf) hold ISO/IEC 27001 certification. They have strong commercial reasons to honour those policies. But "deleted within an hour" is not "never seen." During that hour the photo content sits in operator infrastructure, accessible to any process or person with appropriate permissions, and visible in logs and backups according to whatever retention policy applies.

This converter never uploads anything. The entire pipeline (file pick, HEIC decode via libheif WebAssembly, Canvas re-encode to JPEG, optional ZIP packaging, download) runs inside your browser tab. No upload, no network request carrying photo data, no log entry. You can verify by opening the browser developer tools to the Network tab before converting: no request fires with image content. The only network traffic is the one-time fetch of the heic2any and jszip libraries on first visit (roughly 800 KB combined). After that they sit in the browser cache. Switch the browser to airplane mode after the page loads; the converter keeps working on any local HEIC file you select. For photos with anything sensitive (faces, locations, internal screenshots, ID documents), the browser-side trade is obviously worth making.

When another tool is the right choice

Frequently Asked Questions

Do you store my photos on your servers?

No. All conversion happens 100% on your device in your browser. We never upload, store, or access your photos. Complete privacy guaranteed.

What quality should I use?

85% is recommended for most cases, providing excellent quality with smaller file sizes. Use 95-100% for print or professional use, and 70-80% for web/sharing.

Can I convert multiple files at once?

Yes. You can upload and convert multiple HEIC files at once. They'll be converted sequentially and you can download them individually or as a ZIP.

Does it work on mobile?

Yes. This tool works on iPhone, iPad, Android, and all modern browsers. You can convert photos directly on your mobile device.

Will the converted JPG look different?

At 85% quality or higher, the difference is imperceptible to the human eye. Lower quality settings reduce file size but may show some compression artifacts.

What if conversion fails?

Ensure your HEIC file is valid and not corrupted. Try downloading the file again from your iPhone. If issues persist, try a different browser.

More frequently asked questions

Why can't Chrome or Firefox open HEIC files directly?

HEIC uses the H.265 / HEVC codec, which is royalty-encumbered through several patent pools (MPEG LA, HEVC Advance, Velos Media, and others). Browser vendors that ship a native HEVC decoder must license those patents, and the per-installation cost makes it impractical to bundle HEVC into open-source web browsers. Safari can decode HEIC because it relies on the operating system's HEVC decoder (which Apple licenses for macOS and iOS). Chrome and Firefox sidestep the licensing question by simply not supporting HEIC. The workaround is what this tool does: ship a libheif WebAssembly decoder that runs inside the page, distributed under an LGPL licence that leaves the patent question to the deployer.

How can I stop my iPhone from saving photos as HEIC in the first place?

Open Settings, tap Camera, tap Formats, then select "Most Compatible." Your iPhone will save new photos as JPEG instead of HEIC from that point forward. The trade-off is that JPEG files are roughly twice the size of HEIC at equivalent quality, so each photo eats more space on the device and in iCloud. Many users keep the default HEIC setting for storage efficiency and convert on demand only when sharing with non-Apple recipients, which is exactly the workflow this tool supports.

Does this tool work offline?

After the first visit, yes. The heic2any and JSZip libraries (about 800 KB combined) are fetched once from the CDN on first load and cached by the browser. Subsequent visits work entirely offline, as long as the browser cache has not been cleared in the meantime. You can verify by enabling airplane mode after opening the page once and converting a local HEIC file.

Will the GPS location and other EXIF data be preserved?

Most of it, yes. Camera info (model, lens), exposure settings, capture date and time, GPS coordinates, and image orientation are preserved across the conversion. The ICC colour profile and Apple-specific extension blocks (depth maps, HDR gain maps, Live Photo references) may not survive. If you want to scrub GPS coordinates before sharing for privacy reasons, use a desktop EXIF editor (ExifTool, ImageOptim with "remove metadata" enabled) after this conversion, or strip metadata in Apple Photos before exporting.

Can I convert HEIC photos taken on a non-Apple device?

Yes. While HEIC originated with Apple, the format is an open ISO standard (ISO/IEC 23008-12) and other manufacturers have adopted it: some Samsung Galaxy phones save HEIC by default, certain Canon and Sony mirrorless cameras have HEIC modes, and various Android phones offer HEIC as an option. Any standards-compliant HEIC file decodes correctly through libheif regardless of where it was captured.

Is there a desktop or command-line equivalent?

Several. The most common: ImageMagick with libheif support (magick input.heic output.jpg) runs on macOS, Linux, and Windows once libheif is installed. The libheif project ships its own heif-convert binary for direct HEIF-to-JPEG conversion. On macOS, Preview can save HEIC as JPEG via File → Export, and Apple Photos' "Export Unmodified Original" workflow handles batches. On Windows, iMazing HEIC Converter is a free GUI option; CopyTrans HEIC adds Windows-wide HEIC viewing. For Node.js or server pipelines, sharp built on libvips supports HEIC input with the same libheif dependency.

Related Tools