HEIC to PNG

Decode a HEIC photo to a PNG when the next stop is an editor, a layout, or an archive that should not pass through JPEG again.

HEIC to PNG converter

On this deviceFiles stay in this browser. They are not uploaded.

The first HEIC conversion in a visit downloads a decoder from this same site. Your photo is not part of that download.

Add one or more files to begin.

Files

No files yet.

    When PNG is the better target

    JPEG is the file you send to a person. PNG is the file you send to a process. If you are about to crop tightly, correct color, or drop the picture into a page that will be exported later, a JPEG in the middle adds a generation of compression you do not need yet. PNG holds the decoded pixels without that extra pass. The cost is size. A PNG of a phone photo is often several times larger than the HEIC and larger than a high-quality JPEG of the same shot.

    That trade is easy to get wrong in both directions. People email PNGs of vacation photos and clog an inbox. People also convert a HEIC straight to a mushy JPEG, then spend an hour editing the mush. If the picture is going to a form, a relative, or a printer that asked for JPG, use the HEIC to JPG page and leave this one. If you are the person who will edit it, stay here.

    What “lossless” means for a HEIC photo

    Lossless describes the PNG, not the capture. An ordinary iPhone photo is compressed with HEVC when it is saved. Fine texture is already an approximation. Decoding it and wrapping the result in PNG does not invent the missing detail, and it does not turn a phone snapshot into a raw file. It does mean the editor you open next is looking at the decoder's pixels, not at a JPEG that has been quantized a second time.

    The same limit applies to HDR. Recent iPhones can store a gain map so Apple screens can show a brighter version of the shot. This PNG is the standard image the browser can draw. It is not Apple's dual-layer HDR file, and it will not carry that extra headroom into an app that expects the gain map.

    Windows, and the codec you can skip

    The reason people hunt for a HEIC converter is usually a Windows PC that shows a blank icon. The Photos app on Windows 10 and 11 often wants the HEVC video extension before it will draw a HEIC thumbnail, and that extension has been a paid Store download on many machines. You do not need it to produce a PNG here. The browser loads a decoder, reads the file from disk, and writes a PNG that Paint, Photos, browsers, and layout tools already open.

    On the iPhone, Settings, Camera, Formats, Most Compatible makes new shots JPEG instead of HEIC. It does not rewrite the library you already have. Convert the old files, and change the camera if you are tired of the format fight.

    What is in the file, and what is left out

    You get the primary image at the pixel size the decoder reports. Live Photo video is not extracted. Extra frames from a burst are not extracted. A portrait depth map, the layer that lets you change the blur later in Apple's Photos, is not a second download. The PNG is the flattened picture. If the phone already rendered a blurred background, that blur is part of the pixels. You cannot “turn the portrait off” from this PNG.

    Camera EXIF does not come along. Capture time, the lens, and GPS coordinates are not written into the PNG, because the file is newly drawn from pixels rather than repackaged. Orientation is applied to those pixels, so the picture should be upright. If a client needs the original timestamp or the location for a map, this conversion is the wrong tool. A desktop app that copies the metadata block is the right one. The privacy side of the same fact: FromHEIC never sees the photo, and the new file does not contain the coordinates that were in the HEIC.

    Transparency is uncommon in camera HEIC files. If a file really has an alpha channel and the decoder exposes it, the PNG keeps it. You can see that on the checkerboard behind the preview. Do not expect a cut-out subject from a normal snapshot. Portrait mode's blurred background is painted into the photo. It is not a transparent layer.

    Add several files if you have a set to archive. Each row shows its own result, and Download all as ZIP packs the PNGs that succeeded. Failures stay listed and are left out of the archive. There is no watermark and no conversion quota. The limit is the memory in the browser, which matters more for PNG because the decoded bitmap and the encoded file are both large. Convert in smaller groups if a tab starts to struggle.

    Questions

    Is the PNG really lossless?

    It is lossless from the decoded pixels onward. The page does not run those pixels through JPEG. A phone HEIC is itself a lossy capture, so the PNG cannot restore detail the camera discarded when it shot the photo. What you avoid is a second, JPEG-shaped loss before you edit.

    Why is the file so much bigger?

    PNG stores the pixels without JPEG's aggressive compression. A 12 megapixel photo can land in the tens of megabytes. That is the right trade when the next step is cropping, retouching, or placing the picture in a layout that will be saved as JPEG only at the end. It is the wrong trade for emailing four holiday photos. Use HEIC to JPG for that.

    Will the PNG have a transparent background?

    Only if the decoded image has transparency. Camera photos almost never do. The PNG can still be useful as a lossless still. Screenshots and graphics are a different story; phone camera rolls are usually opaque.

    Do I still need a Windows codec?

    Not to make the PNG. Windows already opens PNG. The HEIC decoder runs in the browser, so the Microsoft HEVC extension is not required for this conversion.

    Are depth maps and Live Photo video included?

    No. You get the primary image. The short video from a Live Photo and the separate depth layer from a portrait shot stay behind. The PNG is the picture you would have seen, at the decoder's pixel size.

    Does this upload the HEIC?

    No. FromHEIC reads the file in the tab and writes the PNG there. There is no account and no copy on a server.