.ico · .cur · PNG · BMP
ICO converter
Pack one or more images into a multi-size .ico, or open an existing icon or cursor and pull out every image inside it, from modern PNG entries to 1-bit bitmaps from the 1990s.
AImages → .ico
Drop images here
PNG, JPEG, WebP, GIF, AVIF or SVG. Add hand-drawn 16 or 32 px versions too: each size uses the best match.
Previewactual pixels
Add an image to see each size.
B.ico → PNG
Drop an .ico or .cur file
Every image inside is listed and can be saved as PNG.
How it works
An .ico file is a small directory followed by images. Each entry records a size (where 0 means 256), a colour depth, a byte count and an offset, and the image itself is either a complete PNG file or a bitmap without its file header. Bitmaps store rows bottom-up, may use a 2-, 16- or 256-colour palette, and carry a separate 1-bit mask that marks transparent pixels.
- Making an icon: every image is scaled with high-quality downsampling, or used pixel for pixel when you add an image of exactly that size. PNG entries keep the file small; bitmap entries suit older Windows programs.
- Reading an icon: the directory is checked against each image's real header, so mismatched sizes, overlapping data and truncated files are reported instead of silently ignored.
For a website, 16, 32 and 48 px with PNG entries is plenty. Windows desktop app icons add 256 px.
Questions
Can I rename a PNG to favicon.ico?
Many browsers will still show it, because they sniff the content, but Windows and some tools will not. A real .ico with a PNG inside costs only 22 extra bytes.
Which old formats can it open?
PNG entries and bitmap entries at 1, 4, 8, 16, 24 and 32 bits per pixel, with palettes, the transparency mask and top-down or bottom-up rows. Cursors (.cur) open the same way, with their hotspot shown.
Are my files uploaded?
No. Icons are built and taken apart by JavaScript in this tab, and downloads are created locally.