EXTRACT

ICO to PNG

An icon file holds several sizes at once. Get all of them, not just the one your browser decided to show.

EXTRACT

☞ runs entirely in your browser — nothing is uploaded

Drop an ICO here

Up to 20 MB — it never leaves your device

one file, many icons

An icon file is a container

A .ico is not one image. It is a small archive holding the same artwork at several resolutions — typically 16, 32 and 48 pixels, sometimes up to 256 — so that Windows and browsers can each pick whatever fits the place they are drawing it. That is why a favicon looks crisp both in a tab and on a desktop shortcut: they are not the same picture scaled, they are different pictures.

The catch is that everything which opens a .ico picks one and discards the rest. Drop one into an image editor or a browser tab and you get a single resolution, usually the largest, with no hint that the others exist. This tool opens the container itself and lays out every size it finds, so you can take the 16 pixel version that was drawn by hand rather than a blurry downscale of the 48.

three steps

How to convert ICO to PNG

01

Drop the ICO in

The container is parsed in your browser. Every entry is decoded and shown at a size you can actually see, largest first.

02

Pick the sizes you want

All of them are selected to start with. Click any tile to drop it — useful when you only need the 256 pixel version for a store listing.

03

Download

One size comes down as a single PNG. Several arrive as a ZIP, with the dimensions in each filename.

quick answers

ICO to PNG FAQ

Why does my icon show several sizes here but one everywhere else?

Because everything else picks for you. A browser drawing a favicon, or an editor opening the file, selects the entry it considers best and never mentions the others. Tested on python.org's favicon, a browser image element returns only the 48 pixel version while the file actually contains 16, 32 and 48. Reading the container directly is the only way to see all of them.

Is quality lost in the conversion?

Not meaningfully. Icons are stored either as a full PNG inside the container or as an uncompressed bitmap. PNG entries are handed to you exactly as they were stored, byte for byte, with no re-encoding at all. Bitmap entries are lossless too, so writing them out as PNG preserves every pixel.

Why do the small sizes look different, not just smaller?

Because they usually are different. At 16 pixels there is no room for detail that reads at 48, so icon designers redraw rather than shrink — thicker strokes, fewer elements, sometimes a completely different composition. Extracting them separately is how you get the version that was actually drawn for that size.

Does transparency survive?

Yes. Older icons store transparency in a separate mask rather than an alpha channel, and both forms are handled. There is a common quirk where a 32-bit icon has an all-zero alpha channel and relies on the mask instead — read naively that produces a completely invisible image, so the mask is used whenever the alpha channel turns out to be empty.

Can I go the other way and make an ICO?

Yes, with the image to icon tool, which builds a multi-size .ico with a favicon package around it. This page is the reverse direction only.

Is anything uploaded?

No. The container is parsed and the images decoded by JavaScript on this page, and the download is assembled locally. Nothing reaches a server, which is also why it keeps working offline.