[Tool 01] Free · No account

Convert HEIC
to JPG

iPhones save photos as HEIC and most browsers cannot open them. This page decodes them on your device and hands back a normal JPG — nothing uploaded, nothing stored.

100% on-device Batch EXIF & GPS stripped Unlimited
heic → jpg converter ready
Target size
Max dimension
Output
Drop photos here — or click to choose JPEG · PNG · WebP  /  stays on your device
No files processed yet
Other targets 20 KB 50 KB 100 KB 200 KB
[Also an app]

Need to shrink HEIC photos, batch hundreds at once, or work offline on your phone? Image Shrinker does the same job natively — and never uploads anything either.

Google Play ↗ About the app →

Why HEIC files will not open

HEIC is a container for HEVC-compressed images — the same codec family as H.265 video. It stores the same picture in roughly half the bytes of JPEG, which is why Apple adopted it. The catch is licensing and support: Safari on Apple platforms can decode it, Chrome and Firefox generally cannot, and Windows needs an extension purchased from the Store.

So the file is fine. The browser just has no codec for it.

How the conversion works here

This page downloads a HEIC decoder — the libheif library compiled to WebAssembly, about three megabytes — the first time you actually give it a HEIC file. It runs inside your browser, on your machine. Your photo is decoded locally, re-encoded as JPEG, and then compressed to your target size if it is over.

The download happens once and is cached; on every later visit, conversion is instant. If you never touch a HEIC file, you never download the decoder.

What you get

  • A standard .jpg that opens anywhere — no watermark, no account, no queue.
  • Metadata gone: re-encoding drops EXIF, so GPS location and camera details are not carried over.
  • Batch friendly: drop a folder's worth of HEIC files and convert them in one pass.
  • Default target is 1 MB, which keeps a 12-megapixel photo at full resolution in almost every case. Lower it if you need a smaller file.

If a file fails to decode, it is either corrupt or uses a profile the decoder does not know. Re-exporting it on the phone usually fixes it.

Questions

Are my photos uploaded anywhere?

No. There is no backend. The page contains all the code it needs, and your browser does the decoding and encoding locally. Disconnect from the internet after the page loads and it keeps working — that is the easiest way to verify it.

How do I get a photo under 100 KB for a form upload?

Select the 100 KB preset, drop the file in, and download the result. Most government, visa and job-portal forms accept a JPEG under 100 KB — if the form also caps dimensions, set max dimension to 800 px or 1280 px as well.

Why is the output JPEG when I uploaded a PNG?

PNG is lossless, so a photograph stays enormous unless you crop it. Choosing JPEG or WebP lets the tool actually hit your target size. Switch the output to PNG if you need lossless output and transparency — the tool will then reduce dimensions instead of quality, and may report that the target cannot be reached.

Does it work with HEIC photos from an iPhone?

Usually no — most browsers cannot decode HEIC. Export to JPEG first (iOS: Share → Save to Files → keep as JPEG, or change Camera → Formats → Most Compatible), or use the Image Shrinker app, which handles HEIC directly on-device.

Is there a limit on how many images I can compress?

No limit, and no daily cap. There is no server doing the work, so there is nothing to meter. The mobile app has a free daily batch limit plus a one-time Pro upgrade that removes ads.

What about really large images?

Images are capped at 4096 px on the long edge before processing so a 50-megapixel file does not exhaust browser memory. For a target size like 100 KB that ceiling makes no practical difference.