Free · Private · In your browser

HEIC to ICO Converter

Build a proper favicon.ico from an iPhone photo — several sizes packed into one file, made on your device and never uploaded.

✓ Free & unlimited✓ No signup✓ Files never leave your device✓ No watermark

How to convert HEIC to ICO in 3 simple steps

  1. 1

    Add your HEIC file

    Drop in the photo you want to become an icon. Nothing is uploaded at any point.

  2. 2

    Pick the sizes and the shape

    16, 32, 48 and 256 are selected by default. Choose whether to crop the photo square or fit the whole frame.

  3. 3

    Create and download

    You get one .ico containing every size you picked, named favicon.ico and ready to drop at the root of a site.

  • Every size in one file

    16, 32, 48, 64, 128 and 256 px, packed into a single .ico. That is what the format is for, and what most converters skip.

  • Real icon internals

    32-bit DIB entries for the small sizes and PNG for 256 — the layout icon tooling has settled on.

  • Crop or fit

    Centre-crop a photo to square, or fit the whole frame and keep the padding transparent.

  • Never uploaded

    The whole thing is built on your device. Your photo is not sent to anyone's server to become an icon.

  • Free, no watermark

    No signup, no paywall on sizes, and nothing stamped on the result.

  • Batch to ZIP

    Turn a set of photos into a set of icons and download them together.

An .ico is a container, not an image

This is the thing to understand before converting anything, because it is where most tools fall down.

A .ico file is a small archive. It holds several complete images at different sizes, and whatever is displaying the icon reaches in and takes the size it needs.

A browser tab wants 16 or 32 pixels. A Windows taskbar wants 32. A desktop in large-icon view wants 256. One file serves all of them, with no markup and no media queries.

Plenty of converters produce a .ico holding exactly one image. It technically opens, and then looks soft or wrong everywhere except the one size it was built at.

The converter on this page writes 16, 32, 48 and 256 by default, and you can add 64 and 128. That is the difference between converting HEIC to ICO properly and producing a file that merely has the right extension.

Which sizes you actually need

The honest short list is shorter than most guides suggest.

Size Where it shows up
16 Browser tabs, bookmarks, address bars
32 Tabs on high-density screens, Windows taskbar
48 Windows shell, some bookmark views
256 Large icon views on the desktop
64, 128 Occasional shell sizes, safe to skip

Sixteen, 32 and 48 do the real work. Adding 256 costs the most bytes by far — in our test it was 124 KB of the 139 KB total — but it is what stops your icon looking blocky when Windows shows it large.

How to convert HEIC to ICO in 3 steps

1. Add the photo

Drop in the HEIC. It is decoded on your device — nothing is sent anywhere, which is worth knowing when the photo is a logo you have not published yet.

2. Choose sizes and shape

Leave the four defaults alone unless you have a reason. Then decide between cropping the photo square or fitting the whole frame with transparent padding.

Check the preview. It renders the icon at actual pixel size, including the 16 px version, which is the one that tells you the truth.

3. Download

You get a single .ico. When you convert one file it is named favicon.ico, ready to drop at the root of a site with no HTML changes at all.

Crop or fit: which to pick

A photo is rectangular and an icon is square, so something has to give.

Crop to square takes the largest centred square and scales it down. This is right for photographs, where the subject is usually near the middle and the edges are disposable.

Fit whole image scales the entire frame to fit and leaves the remaining space transparent. This is right for a logo, a screenshot or anything where the edges carry meaning.

If you choose fit and the icon will sit on a light background anyway, the white padding option avoids a transparent halo in software that composites badly.

What is actually inside the file we write

Compatibility here comes down to details that are invisible until something refuses your icon.

Each entry in the container is either a BMP-style DIB or an embedded PNG. We use both, following what icon tooling has converged on: DIB up to 128 px, PNG at 256.

The DIB inside an icon is not a plain .bmp. It carries no file header, its declared height is doubled to account for a legacy 1-bit transparency mask, and that mask has to be present even for 32-bit entries that ignore it entirely. Get any of that wrong and Windows silently rejects the entry.

We verified our output by reading the file back: the directory reports four entries, each declared size matches the bytes actually written, the small entries carry doubled heights and 32 bits per pixel, the 256 entry begins with a PNG signature, and the browser decodes the finished container without complaint.

PNG at 256 is deliberate too. A 256 px DIB is 256 KB on its own, and the compressed PNG in our test was 124 KB for the same pixels.

Why this had to be written by hand

Browsers cannot produce an .ico any more than they can produce a bitmap.

Canvas exports PNG, JPEG and WebP, and nothing else. Ask it for image/x-icon and you get a PNG back with no error at all — the same silent substitution we documented while building our HEIC to BMP converter and HEIC to TIFF converter.

Even if canvas could emit one, it would not help. The hard part of an icon is not compressing pixels, it is the container: a directory of entries, byte offsets to each payload, and per-entry headers with rules that are forty years old.

So converting HEIC to ICO here runs in three steps on your device: libheif decodes the photo, a canvas renders it once per size, and our own code assembles the container around the results. The whole thing took 698 milliseconds in our test, for four sizes from a 12 megapixel source.

If your file is not a .heic

The picker takes the whole HEIF family, not just Apple’s extension.

Files ending in .heif, .heics, .heifs and .hif all work. The last one matters more than it sounds: Canon and Sony name their HEIF photos .hif, and most converters leave that extension out of the picker entirely, which makes the files impossible to select.

If you want the source as an ordinary image first — to crop it in an editor, say, before making the icon — our HEIC to PNG converter gives you a lossless copy, and the HEIF converter covers the camera formats.

Will a photograph make a good icon?

Usually not, and it is better to hear that before you convert than after.

Sixteen pixels is 256 pixels in total. A face, a landscape or a product shot has far more detail than that can carry, so what survives is a small blur of average colour.

What does survive is a single strong shape with high contrast: one letter, one silhouette, one bold colour block. If your source is a photo, crop hard on one element before converting rather than shrinking the whole scene.

The preview in the tool shows 48, 32 and 16 side by side at true size for exactly this reason. If it reads at 16, it reads everywhere.

Where to put the finished file

Drop favicon.ico at the root of your site — example.com/favicon.ico — and browsers will find it with no HTML at all. That fallback has been in place since the format was introduced, and it still works.

Most modern setups add an SVG icon and a 180 px apple-touch-icon.png alongside it, which are separate files rather than entries in the .ico.

For a Windows application or shortcut icon, the same file works unchanged. Include 256 in that case, because the shell will use it.

Your new favicon is not showing up

Almost always caching, and almost never the file.

Browsers hold on to favicons hard, and a normal reload will not shift one. Open example.com/favicon.ico directly to confirm the file is really there and really updated — if that URL shows the new icon, the file is fine and the tab is just stale.

A hard reload, a private window, or clearing site data will each fix it. Some browsers keep favicons in a separate store that survives a cache clear, in which case the private window is the fastest way to see the truth.

Windows caches shortcut icons separately again, which is why a changed application icon sometimes needs the icon cache rebuilding rather than anything to do with your file.

If the icon appears but looks soft, that is a different problem, and it usually means the .ico contains only one large size that the browser is scaling down. Rebuild it with 16 and 32 included.

The bottom line

Convert HEIC to ICO when you need a favicon or a Windows icon, and make sure what you get is a real multi-size container rather than a single image with an .ico extension.

Everything here runs on your own machine, which for an unpublished logo is not a small detail.

Keep 16, 32 and 48. Add 256 if the icon will ever be shown large. Crop tight, check the 16 px preview, and remember that the smallest size is the one that decides whether the icon works at all.

Frequently asked questions

What sizes should a favicon.ico contain?

16, 32 and 48 pixels covers what browsers and Windows ask for, and adding 256 covers large shell views. All four are selected here by default, and they all live in the one file.

Is one .ico really enough in 2026?

For browsers, a favicon.ico at the site root still works everywhere and needs no markup at all. Most modern setups pair it with an SVG icon and a 180 px apple-touch-icon, which are separate files.

Does the file contain PNG or BMP data?

Both, deliberately. Sizes up to 128 px are written as 32-bit DIB entries that even very old software understands, and 256 px is written as PNG because a DIB that size would be a quarter of a megabyte on its own.

My photo is not square. What happens?

By default the largest centred square is taken and scaled down, which is usually what you want from a photo. Switch to Fit whole image to keep the entire frame with transparent padding around it.

Are my photos uploaded?

No. Decoding and icon assembly both run on your device. Load the page, disconnect from the internet, and it still works.

How big is the resulting file?

In our test, 16, 32, 48 and 256 together came to 139 KB, nearly all of which is the 256 px PNG. Dropping 256 leaves you around 15 KB.

Will a photo make a good favicon?

Rarely, at 16 pixels. Detail disappears at that size, so a photo tends to become coloured mush. Crop tight on one recognisable shape, then check the 16 px preview before you commit.

Can I use this for a Windows application icon?

Yes. The file is a standard multi-size icon and works as an application or shortcut icon. Include 16, 32, 48 and 256 for the shell's various view modes.

HEICHub builds fast, private, browser-based image tools. Every converter runs locally on your device — no uploads, no accounts.