RUNS IN YOUR BROWSER

ICO and CUR Inspector

Choose a .ico or .cur file and the inspector reads its header and every directory entry. For each stored image you see the raw width and height bytes next to the effective size (a stored 0 means 256), the declared colour count and bit count or, for cursors, the hotspot X and Y, plus the payload's byte size and offset. It then looks at the first bytes of each payload to decide whether it is an embedded PNG or a DIB bitmap: for PNG it reads the IHDR width, height, bit depth and colour type; for a bitmap it reports the header variant, bit count, compression and the real height after halving the image-plus-mask height. Where the directory and the payload disagree, an entry is flagged. A layout table lists overlapping payloads, gaps that no entry uses and trailing bytes after the last image, and the whole result can be downloaded as a JSON report.

File types: .ico, .curProcessing: This browser

or drop a file here

✓ Stays on this deviceMaximum size: 19 MB
HOW TO USE IT

How to use ICO and CUR Inspector

01

Add your file

Choose or drop a .ico or .cur file. You can paste the contents instead.

02

Let it read the file

The file is read and parsed in this browser — nothing is uploaded.

03

Check the result

Look over what came back, then copy it, download it, or move on.

Common questions

How do I open an ICO file in the browser to see which sizes it contains?

Select the .ico file with the file picker on this page and the inspector lists every stored image with its width, height, bit depth and payload type in one table. Read the effective width and height columns for the real size; the stored columns show the raw byte, so a 256-pixel image appears as 0 there. The page does not display the picture itself, only its structure.

Is my ICO or CUR file uploaded to a server when I inspect it?

No. The file is read by JavaScript inside your browser tab and the inspection itself makes no network request, so the icon bytes stay on your device. Nothing from the file is stored by the page after you close the tab; the JSON report exists only if you choose to download it.

How can I inspect favicon ICO sizes on a Mac without installing an icon editor?

Open this page in Safari, Chrome or Firefox on your Mac and choose the favicon.ico; every size packed into it is listed, with no icon editor or extra app needed. A typical favicon holds 16×16, 32×32 and 48×48 entries, and the table also tells you whether each one is stored as PNG or as a bitmap.

My ICO file is not opening here — what does the “Not an ICO or CUR file” error mean?

Every ICO and CUR file starts with two zero bytes; when they are not zero, the file is a different format renamed to .ico, most often a PNG, BMP or JPEG. The error shows the first six bytes in hex and as text: 89 50 4E 47 means PNG, 42 4D (“BM”) means BMP and FF D8 means JPEG. Open it with an image viewer for that format instead.

Why does an ICO file report that its directory is larger than the file?

The header claims more images than the file has room for, and the entries that do fit do not look like a cut-off download, so the image count itself is treated as corrupt. If instead the file was simply cut short, you get a truncated-directory warning and every complete entry is still listed; re-download or re-export the icon in either case.

What is the largest ICO or CUR file the inspector can read, and how many images can it list?

Files up to 20,000,000 bytes (about 20 MB) are accepted, and the header format itself allows up to 65,535 images per file. The on-page table shows the first 2,000 entries; the downloadable JSON report contains every entry that was read. Width and height bytes top out at 255, which is why 0 is used to mean 256.

Is an ICO file downloaded from a website safe to open, and can this tool tell me?

This inspector cannot tell you that: it reports structure only, never scans for malware and never states that an icon is clean or authentic. Flags such as trailing bytes, overlapping payloads or entries pointing past the end of the file are worth a closer look, but a file without flags is not proven harmless; use your security software for a verdict.

What is the difference between an ICO and a CUR file?

Both use the same container; the header type is 1 for icons and 2 for cursors, and in a cursor the two fields that hold colour planes and bit count store the hotspot X and Y instead. The inspector switches columns by that header value, checks whether the hotspot lies inside the image, and warns if the .ico or .cur extension contradicts the header.

Does a dimension mismatch flag mean my ICO file is broken?

Not necessarily: it means the size written in the directory entry differs from the size stored inside the PNG or bitmap payload, and programs differ in which value they trust. The icon may therefore appear at an unexpected size in some places. Equally, an entry without flags is not guaranteed to render, because the pixels themselves are never decoded.

How can I tell whether an image inside an ICO file is PNG or BMP?

Check the payload format column: it reads png when the entry starts with the PNG signature and dib when it starts with a bitmap header, decided from the bytes, not the extension. For dib entries the header height counts the image plus its transparency mask, so it is halved to give the real height; anything matching neither is listed as unknown with its first 16 bytes.