HEIC to ICO Converter

Drop in a a HEIC file, convert it to ICO, and download the result — all locally in your browser.

Drop a HEIC file here or click to browse

Your file stays on this device — nothing is uploaded to a server.

About this tool

This tool turns a HEIC file into an ICO file. Drop an image onto the upload zone or click it to browse your device, and a preview appears once the file has been decoded. Alongside the convert button you'll find a size selector so the embedded icon frame matches how you plan to use it. Nothing leaves your device: the file is read locally, converted locally, and the download link points at data held only in this browser tab.

Under the hood, the file is handed to that WebAssembly library, which decompresses it into raw pixels; a self-hosted WebAssembly build of libheif decodes the file, so this works the same way in Chrome, Firefox, Edge, and Safari. The library is loaded once from this site's own assets, not a third-party CDN. Those pixels then land on an HTML canvas, from which they are re-encoded as ICO. Because canvas has no built-in ICO writer, the pixel buffer is scaled to your chosen size, re-encoded as PNG, and wrapped in a minimal ICO container that embeds that PNG as its single frame.

As with any browser-based converter there are limits worth knowing. On the input side, the first HEIC file on a page load has to wait for a ~1.4 MB decoder library to download once (it's then cached by the browser for the rest of the session), and a small number of unusual HEIC variants — multi-image bursts, depth maps, or exotic chroma formats — may not decode correctly through this library. On the output side, The ICO file is built by embedding a single PNG frame at your chosen size inside a standard icon container, which is well supported by Windows and browsers but is not a true multi-resolution icon set.