How to Convert HEIC Photos to JPG
A photo that looks fine on an iPhone can fail the moment it leaves Apple’s software. The file is not empty. It is **HEIC**, Apple’s usual still-photo wrapper around **HEIF**. The next step in the chain — a Windows laptop, a CMS, a printer, a KYC form — asked for **JPG** or **JPEG** and will not negotiate.
You convert a copy. You keep the HEIC if you still have it. You do not need to “fix” the iPhone. You need an interchange file the other program already knows how to read.
What you are converting
HEIF is the format family. HEIC is the filename and container you see on iPhone stills (`.heic`). `.heif` and `.hif` show up from other cameras and some Android pipelines. The pixels are a still photograph. A Live Photo’s motion is a separate `.MOV`. Converters that only decode stills will ignore the movie, and they should.
JPG and JPEG are the same encoding. Choose `.jpg` unless a form literally demands `.jpeg`.
Apple stores HEIC by default because it is good at packing camera photos: similar look, fewer bytes than a typical JPEG from the same sensor. That is why the iPhone original can be smaller than the JPG you download after conversion. Compatibility is the reason to convert, not file size.
Convert in the browser, on the device
Some sites take the HEIC, run it on a server, and email you a JPEG. That is a second copy of the photo on someone else’s disk.
RootoverZero’s [HEIC to JPG converter](/tools/heic-to-jpg) decodes the still in the browser and writes JPEG there. The image is not uploaded to RootoverZero for storage or transcoding. First load of the decoder can take a moment because the library runs locally in the tab.
Limits are honest: 25 MB, one still at a time, no Live Photo video, no batch zip. Huge pixel grids can still exhaust a phone browser. If the tab dies, the file is too large for that device, not “corrupt” by default.
A practical conversion sequence
On the iPhone, use the original from Photos, not a screenshot and not a WhatsApp forward. Get the file onto the computer: AirDrop, Files, USB, or a cloud folder you control. Open the [free HEIC to JPG tool](/tools/heic-to-jpg), drop the `.heic` or `.heif`, wait for the preview. Check rotation and the pixel size. They should match the still you meant to send. Download the `.jpg`. If a website wants 1200 pixels on the long edge, [resize](/tools/image-resizer) from that JPG (or from a PNG export if you have one), not by converting twice. If the dimensions are already right and the form still rejects the kilobytes, [compress](/tools/image-compressor) once.
Do not convert, compress, screenshot, and convert again. Each lossy step spends detail.
Opening HEIC on Windows
Windows 10 and 11 can open HEIF if Microsoft’s HEIF and HEVC extensions are installed. Many office PCs never got them. Explorer then shows a blank or generic icon. Paint and older browsers refuse the file.
You have three honest options:
Install the vendor extensions if policy allows, and keep HEIC as the archive. Convert a copy to JPG for the people and tools that will never get those extensions. Ask the sender for JPEG from the start (iPhone Settings → Camera → Formats → Most Compatible). That changes future captures. It does not rewrite the HEIC already on disk.
A converter does not replace a HEIF codec for people who must edit HEIC natively in a Windows DAM. It replaces the email that says “I can’t open this.”
Websites, social apps, and forms
Upload widgets are allow-lists. `.jpg`, `.png`, sometimes `.webp`. HEIC is absent, so the browser never sends the file. The user sees “invalid type” or a button that does nothing.
Convert first. Then obey the rest of the spec: square crop, 2 MB cap, sRGB. Format was only the first gate.
Some apps accept HEIC on iOS and reject it on the desktop site. Same product, two stacks. If the desktop form wants JPG, believe the form.
Quality, orientation, and metadata
HEIC and JPEG are both lossy for camera photos. Re-encoding is not lossless. A high JPEG quality at the original width and height should look like the iPhone still on a phone or laptop. It will not match a bit-for-bit hash of the HEIC.
Orientation lives in EXIF for many phone shots. A decent decoder draws the pixels already rotated. If a rare file still looks on its side, export JPEG from Photos on the iPhone and compare; the source may be an unusual HEIF still or a cropped derivative.
Canvas JPEG from a browser typically drops or simplifies metadata. GPS, lens, and MakerNotes often vanish. For a website hero that is fine. For a photojournalism archive, convert a copy and keep the HEIC as the master with tags intact.
Transparency is not why you convert a Camera Roll portrait. JPEG has no alpha. Cutouts belong in PNG or WebP, which is a different job.
When the JPG looks wrong
Soft picture: the source was already a share sheet thumbnail, or you zoomed a 400-pixel preview and called it proof. Open at 100%.
Blocky sky: you ran a second compressor at a brutal setting after conversion. Encode JPEG once at high quality from the HEIC.
Wrong crop: you converted a Live Photo keyframe you did not intend, or a portrait-mode preview. Pick the still in Photos explicitly.
File larger than the HEIC: expected. You paid for compatibility.
Tab crashed: too many pixels or a sequence/burst container this decoder will not flatten. Export a single still from Photos and retry.
iPhone settings versus one-off conversion
**High Efficiency** (default) writes HEIC. **Most Compatible** writes JPEG in the camera. Switch if almost everything you shoot leaves Apple’s world the same day. Stay on High Efficiency if you edit on the phone and only convert the images that must travel.
One-off conversion is the right tool for last month’s trip, not a reason to recode the entire library into JPEG and delete the HEICs.
HEIC vs JPG for the jobs people actually have
Sending to a printer that lists JPEG: convert.
Putting a photo in a Word or Google Doc on a locked-down PC: convert.
Keeping a personal archive in Photos: keep HEIC.
Building a website: convert, then size the pixels to the layout, then compress if the bytes are still rude. The [Image Resizer](/tools/image-resizer) and [Image Compressor](/tools/image-compressor) are those later steps. They are not HEIF decoders.
A short scenario set
**Windows inbox.** Colleague AirDrops a HEIC. Outlook on Windows shows nothing useful. Convert, send the JPG, keep the HEIC in the thread folder if you still need the original.
**Shopify or a custom CMS.** Product photographer shoots on iPhone. The admin rejects HEIC. Convert, then resize to the theme’s product frame so you do not upload a 48-megapixel JPEG into a 600-pixel cell.
**School or government form.** The PDF says “JPEG only, max 2 MB.” Convert, then compress if needed. Do not flatten the ID photo into a 20% quality JPEG on purpose; start high and stop when the form accepts the size.
**Family album on a TV stick.** The stick reads JPEG from a USB drive. Convert the stills you actually want on the TV. Leave the rest in Photos.
FAQ
How do I convert HEIC to JPG without uploading photos?
Use a browser tool that decodes locally. RootoverZero’s converter is built that way. Confirm the copy on the page: files stay on the device for this step.
How do I convert HEIC to JPG on Windows?
Drop the file into a local converter, or enable HEIF extensions if you need to view HEIC without converting. For sharing and websites, JPG is still the file other people can open.
How do I convert iPhone photos to JPG for websites?
Convert the original HEIC, check the pixel size against the layout, then upload JPG. Resize before upload if the theme does not need a 4000-pixel image.
Why can’t I upload HEIC?
The field’s accept list does not include it. That is a software policy, not a damaged file.
Is HEIC the same as JPEG?
No. Different encodings. HEIC/HEIF is more efficient for many camera stills. JPEG is the interchange default.
Should I change iPhone camera format to Most Compatible?
If almost every photo leaves the phone into Windows or a CMS the same day, yes. If you mostly stay in Photos, convert copies instead.
Can I convert HEIF as well as HEIC?
Yes, if it is a still the decoder understands. Sequences and video are out of scope for a still-to-JPG page.
Will conversion remove location data?
Browser JPEG export often drops GPS. Assume the download is not an archival master. ## After you have a JPG If the site needs exact pixels, [resize without stretching](/blog/resize-image-without-losing-quality). If the grid is right and the file is still heavy, [compress without a quality-crushing slider](/blog/compress-image-without-losing-quality). If a later step demands PNG, [convert the JPG to PNG](/blog/convert-jpg-to-png) without changing dimensions. If you only needed the iPhone photo to open, stop at the [HEIC to JPG converter](/tools/heic-to-jpg) and keep the original HEIC in a folder you do not overwrite.