Image converter

HEIC to JPG

Decode supported HEIC/HEIF still images locally with ResizeNest's browser WASM worker, choose the primary or another top-level still image when available, and create a real JPEG without uploading the original.

Local processing Batch ready HEIC

Start here

Use heic to jpg now

No account is required. Choose a file and work directly in this browser.

Processing runs in your browser. Local files are not uploaded to a ResizeNest processing server. With URL import, your browser connects directly to the source website; ResizeNest does not relay the file. Direct URL import works only when the source website allows cross-origin reading.

Conversion switcherOn-device
FromHEIC
ToJPG
JPGHEIC → JPGOn-deviceCurrentPNGHEIC → PNGOn-device
HEIC → JPG: On-device
Drop HEIC or HEIF images hereor paste an image. Files are inspected and decoded locally with browser WASM workers. Originals are not uploaded to ResizeNest.

Private by design

image processing stays in your browser. ResizeNest does not need your original image uploaded to an application server.

Real output

Results come from the actual processing pipeline, with measured dimensions, bytes and format instead of placeholder estimates.

Simple workflow

Process one image or a local batch, then download current successful results.

Three simple steps

How to use heic to jpg

  1. 01

    Choose, drop or paste HEIC/HEIF files. ResizeNest inspects container and decoder metadata locally, with the primary top-level still image selected by default.

  2. 02

    Review the worker preview, choose another top-level still image if available, set JPEG quality or optional resize, and acknowledge an unverified color profile when required.

  3. 03

    Convert selected files or the batch, then download current JPG results or a ZIP without leaving /heic-to-jpg.

Useful details

Built for a clear, predictable result

Understand what the tool does before you download the result.

01

Real browser-local HEIC decoding

This route uses the self-hosted libheif-js 1.23.2 decoder inside ResizeNest's browser worker path. HEIC bytes are not sent to a ResizeNest image-processing server.

02

Primary image by default

HEIC/HEIF containers can expose more than one top-level still image. The decoder-reported primary image is selected by default, and a selector is shown when alternatives exist; thumbnails, depth data and motion video are not silently substituted.

03

JPEG remains lossy

The default JPEG quality is 90, and every JPEG encode is lossy including quality 100. When the selected still image has alpha, JPEG output flattens it onto an explicit opaque background.

04

Color and bit depth are not guessed

libheif refines bit depth before the file enters the supported 8-bit SDR path. HDR and higher-bit-depth input are blocked. If bounded inspection cannot verify a color profile, conversion stays disabled until you explicitly acknowledge an SDR/sRGB output interpretation.

05

Same-route batch lifecycle

Retry and rerun reread immutable source bytes. Current successful JPG results remain available after another file fails, and ZIP export includes only current successful outputs from /heic-to-jpg.

Questions, answered

Frequently asked questions

Why are some HEIC files unsupported?

ResizeNest only ships the HEIC/HEIF subset that the self-hosted decoder can verify safely in the current 8-bit SDR pipeline. Unsupported codec variants, HDR, higher bit depth, unverified wide-gamut/profile states, malformed containers, and sequences are rejected instead of silently flattened or tone-mapped.

Which image is selected in a multi-image file?

The decoder-reported primary top-level still image is selected by default. If other supported top-level still images exist, the route exposes an explicit selector; thumbnails, depth images and motion tracks are not silently substituted.

Does ResizeNest upload my HEIC file?

No. Inspection, libheif decoding, preview generation and JPEG encoding run in browser workers for this route.

Does conversion keep Live Photo motion?

No. The route converts one selected top-level still image. Motion video, depth information and other non-selected HEIF items are not bundled into the JPEG result.

Is quality 100 lossless?

No. JPEG is a lossy format at every quality setting. ResizeNest does not label JPEG quality 100 as lossless.

Why might I need to confirm the color interpretation?

Some HEIC files do not expose a color profile that the bounded inspector can verify. ResizeNest does not silently call that sRGB; it asks for explicit acknowledgement before creating an SDR/sRGB output.