The short version
FromHEIC is a static website. There is no account system and no server-side processing. When you drop in a photo, your browser reads it, a Web Worker processes it, and your browser offers the result for download. The photo does not leave your device.
Why a Web Worker
Decoding and encoding large images is heavy work. Running it in a Web Worker keeps it off the main thread, so the page stays responsive and you can cancel a batch. The worker has no access to the page’s elements; it receives bytes, returns bytes.
Why WebAssembly
Codecs are written in C and C++. They are compiled to WebAssembly and run inside the browser’s sandbox. They load only when a tool needs them, and they come from this site’s own domain:
- libheif with libde265 decodes HEIC and HEIF. About 1.5 MB.
- libwebp encodes WebP.
- libavif with aom encodes AVIF. About 3.5 MB.
PNG and PDF files are written by the site’s own code.
What a conversion does
Each job goes through stages.
- Detect. The file type is determined from its contents, not its extension, so a mislabelled file is caught.
- Decode. The HEIC is decoded into pixels. Rotation stored in the container is applied. Colour is transformed to sRGB using the embedded profile, unless you chose to keep the original profile.
- Convert. The pixels are encoded into the chosen format with your settings (quality, size, metadata options).
- Verify. Each output is re-parsed or decoded before a download is offered. This catches broken files, though it cannot judge whether you like the quality.
Metadata tools that edit the file in place (removing GPS, editing dates, rotating a HEIC) work on the bytes of the container and do not re-encode the image. They re-parse the result, and in the metadata tools compare a hash of the decoded pixels before and after.
Limits
200 MB per file, 100 megapixels per image, 200 files per batch. Files are held in memory only while the page is open. Browser memory varies, so phones and older computers may fail earlier. Everything is single-session: refresh, and it is gone.
HEVC and licensing
HEIC photos use HEVC (H.265), which is covered by patents; the Via LA HEVC/VVC licensing page describes one licensing programme. The position of this site, at a high level:
- FromHEIC ships a decoder only (libde265 inside libheif).
- Creating HEIC files uses the HEVC encoder already built into your browser and operating system, through the WebCodecs interface. FromHEIC does not distribute an HEVC encoder.
- Whether encoding is available depends on your browser. Where it is not, the tool detects that, says so, and suggests alternatives. HEIC outputs carry no transparency; it is flattened onto a background you choose.
This is a description of design choices, not legal advice, and the owner should review the licensing position with a qualified professional.
What the site does not do
It does not upload files, run OCR, repair the original file, or promise identical results in every browser.
For the safety side, see the Security page. For the sources behind our claims, see the Sources page.