The converter above turns HEIC photos into JPG copies, and it does the whole job inside this page. Add your files, let the tool work through them one at a time, then save each result with its own download button. Your HEIC originals are never modified, so you finish holding both versions.
When an app or upload form refuses a HEIC, converting a copy is the fastest fix. A HEIC hits an upload form, a print order, or an older photo editor, and the software reports that the format is not supported. A JPG copy is the shortest way around that, because JPEG is the one still image format that essentially everything reads.
How the HEIC to JPG converter works
Each file moves through three stages in your browser. It is decoded into raw pixels, drawn once onto an offscreen canvas at full size, then re-encoded as a JPEG. MDN documents the canvas toBlob method behind that last step and the quality number between 0 and 1 that lossy formats such as image/jpeg accept. This tool asks for 0.92 quality.
Decoding is the part that changes from browser to browser. The tool first asks the browser to decode the HEIC itself. WebKit's release notes for Safari 17.0 state that it adds support for HEIC images, so a recent Safari can often decode the file natively, and a browser without that support falls through to the bundled decoder. When the browser cannot, it falls back to libheif, which its project describes as an ISO/IEC 23008-12 HEIF and AVIF decoder and encoder, publishes an emscripten build for, and licenses under the GNU Lesser General Public License. That WebAssembly decoder comes from technobezz.com, weighs about 1 MB, and is fetched only the first time a file needs it.
None of your photos ever touch a server. There are no uploads, and each finished file is handed back as an in browser object URL that the download button points at. The list holds up to 20 files at a time with 40 MB per file, and a decoded image over 40 megapixels fails after decoding with a message under its name, because the canvas step holds the whole frame in memory.
How to read your results
The most common surprise is a JPG that is bigger than the HEIC it came from. Apple states that HEIF offers better compression than JPEG while preserving the same visual quality, so the same picture written as a JPEG usually needs more bytes. A larger file is not a fault.
A smaller JPG means the re-encode discarded detail the original was still carrying. At 0.92 quality that is hard to see at ordinary viewing sizes, but it is real, which is reason enough to keep the HEIC. Transparency is decided by the output format, and MDN is blunt that JPEG does not support an alpha channel, so a transparent area comes back white.
Per file messages tell you where a file stopped. One listed as skipped before conversion started broke a limit, whether the batch count, the 40 MB ceiling, or the file type. One that fails during conversion cleared those checks, and the message under its name states what went wrong. A decode failure points at the file itself, while a message about the decoder failing to load points at the connection or the browser, and reloading the page usually clears it.
If a file fails to convert
Start with the limits, because most stopped files are limits rather than faults. Split a batch larger than 20 files, check anything close to 40 MB, and confirm the file really is a HEIC rather than a renamed copy of something else.
If one file fails while the others succeed, suspect that file. Photos pulled out of a messaging app or a half finished cloud sync can be truncated and still look complete in a listing, so re-export the original from the device that took it. Images past the 40 megapixel ceiling belong on the desktop, where Best Free Photo Editors covers applications that can open one and export a JPEG.
When the JPG converts cleanly but looks wrong, separate the conversion from the capture. Noise and smeared detail come from the original photo rather than the re-encode, and How to Fix Grainy Photos covers how much can be recovered. Framing and orientation are easy to correct afterward, and How to Crop and Rotate Images in Windows Photos does it with the app already on a Windows PC.
If you are converting the same photos over and over, change what the camera writes. Apple documents the switch under Settings, Camera, Formats, where Most Compatible makes all new photos and videos use JPEG or H.264 on models that can capture HEIF. It costs storage, so it is a trade rather than a fix, and Best iPhone Camera Settings for Sharper Photos covers the rest of the capture settings.
What a HEIC file actually is
HEIC is the extension Apple devices use for a photo stored in the High Efficiency Image File Format, usually shortened to HEIF. Apple introduced support for HEIF images and HEVC video in iOS 11 and macOS High Sierra, calling them industry standard formats that offer better compression than JPEG and H.264 at the same visual quality.
The container is standardized as ISO/IEC 23008-12, and the libheif project describes HEIC as employing HEVC, also known as H.265, for the best compression ratios currently possible. A HEIF file can hold far more than one flat picture, and libheif lists support for multiple images per file, alpha channels, depth maps, thumbnails, and EXIF and XMP metadata, none of which a JPEG has anywhere to put.
That efficiency is why you keep meeting the format, and the codec underneath it is why compatibility gaps exist, since HEVC support is licensed separately on some platforms. Microsoft splits Windows support into two Store packages, HEIF Image Extensions, which is free, and HEVC Video Extensions, which is paid, and says to install both even if you only plan on using photos and not videos.
Where HEIC files open without conversion
On Apple hardware the format is native. Apple says support for HEIF and HEVC is built into iOS 11 and later, iPadOS, visionOS, and macOS High Sierra 10.13 and later, which let you view, edit, and duplicate this media in apps that support these features. Capture is narrower, and Apple lists iPhone 7 or later, several iPad models, and Apple Vision Pro as the devices that record it.
Windows needs help, and Android sits in between. Microsoft says HEIF files can produce a Photos message reading You need an extension to use this file, and to restart Photos once both Store packages are installed. Google's supported media formats table lists HEIF decoding from Android 8.0 onward for the .heic and .heif extensions and leaves the encoder column empty, so a HEIC sent to a current Android phone will usually display, which is not the same as every app accepting it.
Browsers are the gap that sends people to a converter. MDN's guide to image file types for the web lists JPEG as supported in all versions of Chrome, Edge, Firefox, Opera, and Safari, and its roster of formats for web content does not include HEIC at all. That is why a HEIC dropped into an upload form comes back rejected.
Some of this resolves itself in transit. Apple notes that sharing to a device that does not support the newer formats might send the media automatically in a more compatible format such as JPEG, and that importing over USB can convert it unless Keep Originals is on. The converter above does that job on purpose rather than by chance.
Common questions
Does converting HEIC to JPG lose quality
A little, yes. MDN describes JPEG as a lossy format based on the discrete cosine transform, so re-encoding decoded pixels always discards some information. This tool asks for 0.92 quality, near the top of the 0 to 1 range, which keeps that loss hard to see at normal viewing sizes. Your HEIC original is untouched either way.
What happens to the date and location saved in the photo
The JPG is re-encoded from pixels drawn on a canvas, so it does not carry the original file's metadata block forward. HEIF containers can store EXIF and XMP metadata, which libheif documents, and that record stays in the HEIC you keep. If the capture date has to travel with the JPG, export it from an application that copies metadata.
Are my photos uploaded anywhere
No. The decode, the canvas redraw, and the JPEG encode all run on your device, and each download comes from an in browser object URL rather than a server. The only request the tool can make is for the libheif WebAssembly decoder, which is program code and carries no image data. Clear all removes every file and resets the tool.
Official references
- Apple guide to using HEIF or HEVC media on Apple devices
- Microsoft guide to the Photos app extension message for HEIF and HEVC files
- MDN image file type and format guide
- MDN reference for HTMLCanvasElement.toBlob
- libheif project repository and documentation
- Android developer documentation on supported media formats
- WebKit Features in Safari 17.0

