Parse / Inspect

ICO Inspector.

Drop any .ico file to see what's inside — the ICONDIR header, each ICONDIRENTRY record, embedded BMP and PNG blobs, actual dimensions (handling the "0 means 256" trap), bit depth, AND masks. Extract individual images as PNGs. Byte-level hex dump with field annotations. Everything runs in your browser.

What is an ICO file?

ICO is a container format from Windows 3.x (1990) and Windows 95. It holds one or more images at different resolutions — typically 16×16, 32×32, 48×48, and 256×256 — so the OS (or a browser) can pick the right size for where the icon will display.

Each image inside the container is stored as either a BMP-style blob (the legacy format, with a DIB header, pixel data, and an AND transparency mask) or a PNG blob (modern, compressed, with real alpha — supported since Windows Vista and Firefox 3). The container picks the encoding per-image. Small icons tend to be BMP, the 256×256 version is almost always PNG.

The "0 means 256" dimension trap: width and height are each one byte, so the maximum value is 255. To express 256, the spec says a width of 0x00 should be read as 256. Parsers that skip this rule misread 256×256 icons as 0×0.

For the full format walkthrough, see What's actually in a favicon.ico file.

Ready