HEIC to JPG Converter
Turn iPhone photos into JPG files that open anywhere. 100 at a time, and nothing is uploaded.
Drop your HEIC or HEIF files here
or choose files — up to 100 at once, 100 MB each
No upload. Files are processed in your browser.
Files never leave your device · EXIF and GPS removed
Works on Chrome, Safari, Firefox and Edge · No installation
HEIC to JPG conversion turns Apple’s HEVC-compressed photos into standard JPEG files that open on any device. FormatWave does it inside the browser, so the photos are never uploaded, and up to 100 can be processed in one batch.
HEIC is the format iPhones use by default since iOS 11. It saves roughly half the space of JPEG at the same visual quality — great on your phone, annoying everywhere else. Windows photo viewers, older Android phones, website upload forms and email clients often refuse to open it.
This converter decodes HEIC in your browser and re-encodes it as JPG. Your photos are never sent to a server, so there is no upload wait, no file-size limit from us, and no copy of your pictures sitting on someone else’s disk.
Last reviewed November 2026
Why convert HEIC to JPG?
It opens everywhere
JPG is supported by every browser, phone, printer and upload form. HEIC support is still patchy outside Apple devices.
Upload forms accept it
Job portals, visa applications, school systems and marketplaces commonly reject .heic files with a generic “unsupported format” error.
Smaller risk, same look
At quality 90–95 the difference is invisible on screen, and you keep the original HEIC files untouched.
How to convert HEIC → JPG
- Drop your HEIC files. Drag a folder or select up to 100 photos. Nothing is uploaded — the browser reads them locally.
- Pick quality and size. Quality 92 is a good default. Lower it to 80 for forms with a 2 MB limit, or resize the long edge to 2048 px.
- Download JPGs. Save files one by one or grab everything as a single ZIP. Metadata, including GPS location, is removed.
What settings actually change
| Setting | Typical result | When to use |
|---|---|---|
| Quality 95 | ~30% larger than 92 | Archiving, printing |
| Quality 92 | Baseline — about the source size | Default for sharing |
| Quality 85 | ~17% smaller | Sharing, most upload forms |
| Quality 80 | ~25% smaller | Upload limits, email |
| Max width 2048 px | ~56% smaller than full size | Web, chat, marketplaces |
Measured: what these settings actually produce
We ran this exact converter on six 12 MP photos (4032 × 3024, 7.1 MB of HEIC in total) in Chrome 156 on an Apple M6 Mac. No upload, same code you are using.
| Output quality | All six photos | Per photo | Batch time |
|---|---|---|---|
| 95 | 9.2 MB | 1.5 MB | 1.6 s |
| 92 (default) | 7.1 MB | 1.2 MB | 1.6 s |
| 85 | 5.9 MB | 1.0 MB | 1.4 s |
| 80 | 5.3 MB | 0.9 MB | 1.4 s |
- Roughly 0.25 s per 12 MP photo, decode and encode included. Resizing the same batch to 2048 px took the same 1.5 s and produced 3.1 MB.
- Output size follows image detail: foliage, crowds and text can produce files three to four times larger than a smooth sky at the same setting.
- In this test the JPGs came out close to the HEIC size because the source files were already encoded at high quality. Photos straight from a camera usually produce larger JPGs than the HEIC they came from — the reason to convert is compatibility, not size.
Which quality should I pick?
- 92 — Default. Visually identical to the original on screen, reasonable size.
- 85 — Noticeably smaller, still fine for sharing and most upload forms.
- 80 — Use when a form caps you at 2 MB or similar.
- 95+ — Only worth it if the file will be edited again.
Inside the conversion: what happens to a 12 MP HEIC
A 12 MP iPhone photo is 4032 × 3024 pixels. The HEIC file on disk is about 1.5 MB because HEVC stores it as a compressed prediction, not as pixels. To re-encode it as JPG, the browser first has to decode it back into raw pixels: 4032 × 3024 × 4 bytes per pixel, roughly 46 MB in memory for a single photo. That number, not the file size, is what limits batch conversion on a phone.
The decoded buffer is drawn onto a canvas — this is also the step where Max width takes effect, and where the image is converted to sRGB. The canvas is then encoded to JPEG at the quality you picked, and the result is handed back as a Blob you can download. Everything happens in a Web Worker, so the page stays responsive.
Because the output is a fresh encode, no metadata is carried over: no EXIF, no GPS, no Apple-specific maker notes. That is why the date and location disappear. It also means the JPG size depends only on the pixels and the quality setting, which is why a detailed photo of foliage can come out three to four times larger than a smooth sky at the same setting.
If the conversion fails
Six failures we see reported most often, and what actually causes them. None of them involve an upload — the file never leaves the tab.
| Symptom | What causes it | What to do |
|---|---|---|
| The .heic file is greyed out in the picker | The picker filters on the .heic / .heif extension and the file was renamed in transit (a .heics export, or no extension at all) | Drag it onto the drop zone — drag and drop ignores the extension filter |
| Progress stays at 0% | The decoder worker was blocked by a content blocker, a corporate proxy, or Safari lockdown mode | Allow this site in the blocker, or open the page in a normal tab |
| One photo fails while the rest convert | The tab ran out of memory — usually a 40 MP+ photo in iOS Safari | Set Max width to 2048 px and convert that file on its own |
| Error on very large files | Deliberate guard: files above about 60 MP are rejected so the tab cannot crash | Resize first. No setting lifts this limit |
| Colours look slightly flatter | Output is sRGB and the source was Display P3 | Expected. JPEG has no wide-gamut profile, and the shift is small |
| Capture date and GPS are gone | Re-encoding through a canvas drops the EXIF block | Intended — that is the privacy feature. Keep the original HEIC if you need the metadata |
Where the JPG will hit an upload limit
The conversion has no quota, but the site you upload to does. These are the caps that come up most often with phone photos.
| Destination | Typical cap | Settings that fit |
|---|---|---|
| Gmail and most mail clients | 25 MB per message | Quality 80, max width 2048 px |
| 16 MB per image | Quality 85 at full size is already enough | |
| Instagram feed | 8 MB, JPEG only | Quality 85, max width 2048 px |
| WordPress media library | 2 MB by default (server setting) | Quality 75–80, or raise the PHP upload limit |
| US visa / DS-160 photo | 240 KB | Resize to 600 × 600, quality 70 |
| eBay listing photos | 12 MB per image | Quality 90 at full size is fine |
| Discord, free tier | 10 MB per attachment | Quality 80, max width 2048 px |
These are the caps users report most often, not a contract — platforms change them. If a form still rejects the file, drop the quality one step and try again.
Questions
Are my photos uploaded to a server?
No. The conversion runs entirely in your browser using WebAssembly. You can disconnect from the internet after the page loads and it will still work.
How many files can I convert at once?
Up to 100 per batch on desktop, fewer on phones with limited memory. Each file can be up to 100 MB.
Does converting reduce quality?
JPG is lossy, so some data is discarded. At quality 92 and above the difference is not visible on screen; keep your original HEIC files if you need a perfect archive.
Is HEIC the same as HEIF?
HEIF is the container, HEIC is the HEVC-coded variant Apple uses. This tool accepts both .heic and .heif files.
What happens to the date and location data?
It is removed. Canvas-based re-encoding drops EXIF metadata, which also strips GPS coordinates — useful when you share photos publicly.
Convert HEIC on your device
Same converter, same privacy — the platform pages explain the system-specific snags.
Related converters
Same engine, different formats — all processed locally.