View ICONs
Drag and drop or click to select.
Private and secure
Everything happens in your browser. Your files never touch our servers.
Blazing fast
No uploading, no waiting. Convert the moment you drop a file.
Actually free
No account required. No hidden costs. No file size tricks.
What is the ICON format?
Microsoft icon
The ICON image format, commonly known as ICO, is a file format that is typically used for icons on Microsoft Windows. ICO files contain one or more small images at multiple sizes and color depths, so that they may be scaled appropriately. In Windows, icons are used to represent an application, a file, or a folder, and are integral to the user interface. The ICO format is versatile, allowing for images ranging from 16x16 pixels up to 256x256 pixels, and even larger with certain workarounds. The format supports 24-bit color images and 8-bit transparency, which is often referred to as alpha transparency.
The ICO format is unique in that it can contain multiple images within a single file. This is particularly useful for icons that need to be displayed at different sizes and resolutions. For example, a typical ICO file might contain the same icon rendered at 16x16, 32x32, 48x48, and 256x256 pixels. This allows the operating system to choose the best size for a given context, such as a small icon in a file list or a larger icon when the user changes the view options to display large icons.
The structure of an ICO file is relatively straightforward. It begins with a header, followed by a directory, and then the image data itself. The header contains a reserved 2-byte field that is always set to zero, a 2-byte type field that specifies the resource type (1 for icons), and a 2-byte count field that indicates how many images are contained in the file. Following the header is the directory, which is an array of entries, one for each image in the file. Each directory entry contains several fields, including the width, height, color count, and size of the image data.
The width and height fields in the directory entry are each one byte, with a maximum value of 255. However, in practice, the maximum dimensions of an ICO image are 256x256 pixels. When an image is 256 pixels in width or height, the corresponding field is set to 0. The color count field specifies the number of colors in the image's palette, with a value of 0 meaning that the image does not use a palette (i.e., it is a 24-bit or 32-bit image). The size field is a 4-byte value that gives the size of the image's data in bytes, and the offset field is a 4-byte value that specifies the location of the image data within the file.
The image data in an ICO file can be stored in one of several formats. For smaller icons, with dimensions less than 64x64 pixels, the image data is typically stored in a device-independent bitmap (DIB) format, which is also used in BMP files. This format includes a BITMAPINFOHEADER structure, followed by the color palette (if the image uses one), and then the pixel data. For larger icons, the image data is often stored in PNG format, which allows for better compression and supports alpha transparency.
The BITMAPINFOHEADER structure contains information about the bitmap, including its size, width, height, planes, bit count, compression, size of the image, horizontal and vertical resolution, color count, and important color count. The bit count field indicates the number of bits per pixel, which can be 1, 4, 8, 24, or 32. A bit count of 32 indicates that the image includes an alpha channel for transparency. The compression field is usually set to 0, indicating no compression for BMP-formatted images within the ICO file.
Transparency in ICO files is handled in two ways. For images without an alpha channel, a mask bitmap is used. This is a 1-bit per pixel image that specifies which pixels are transparent and which are opaque. The mask bitmap is stored immediately after the color bitmap in the file. For images with an alpha channel, the transparency information is stored in the alpha channel itself, which is part of the 32-bit color depth. This allows for varying levels of transparency, from fully opaque to fully transparent, and is especially useful for creating smooth edges and drop shadows.
The ICO format has evolved over time. Originally, in older versions of Windows, icons were limited to a small palette of colors and had no support for alpha transparency. As graphical user interfaces became more sophisticated, the need for higher-quality icons with smooth edges and the ability to blend into various backgrounds became apparent. With the introduction of Windows XP, Microsoft updated the ICO format to support 32-bit images with 8-bit alpha transparency, allowing for much more detailed and visually appealing icons.
Despite its name, the ICO format is not limited to Microsoft Windows. It is recognized by various other operating systems and can be used in web browsers as a favicon, which is the small icon displayed next to a website's title in a browser tab. Favicons are typically 16x16 or 32x32 pixels in size and are stored in ICO format to ensure compatibility across different browsers and platforms. However, other formats like PNG and GIF are also used for favicons in modern web development.
Creating ICO files requires specialized software that can handle the format's intricacies, such as multiple image sizes and color depths within a single file. There are many icon editors and converters available that can create ICO files from scratch or convert existing images to the ICO format. Some image editing software, like Adobe Photoshop, can also save images in ICO format with the help of additional plugins.
When designing icons for the ICO format, it's important to consider the context in which they will be used. Icons should be legible and recognizable at small sizes, and they should adhere to a consistent style that matches the application or brand they represent. It's also important to test icons on different backgrounds and at various sizes to ensure they maintain their clarity and visual impact.
In terms of file size, ICO files can vary widely depending on the number and size of the images they contain. Because they can include multiple sizes and color depths, ICO files can become quite large, especially when they include high-resolution images. However, the use of PNG compression for larger images helps to mitigate this issue by reducing file size without sacrificing image quality.
The ICO format's ability to contain multiple images in different sizes and color depths within a single file makes it a robust and flexible format for icons. It allows for efficient use of resources, as the operating system can load the appropriate image size and color depth for a given display context without the need for multiple separate files. This efficiency is particularly important in environments where memory and storage space are at a premium.
In conclusion, the ICO image format is a specialized file format designed for storing icons used in Microsoft Windows. Its ability to contain multiple images at various sizes and color depths makes it ideal for icons that need to be displayed in different contexts. The format supports transparency through the use of mask bitmaps or alpha channels, allowing for the creation of icons with smooth edges and complex visual effects. While the format has been largely associated with Windows, it has also found a place on the web as the standard for favicons. As user interfaces continue to evolve, the ICO format remains a key element in creating a visually cohesive and user-friendly environment.
Supported formats
AAI.aai
AAI Dune image
AI.ai
Adobe Illustrator CS2
AVIF.avif
AV1 Image File Format
BAYER.bayer
Raw Bayer Image
BMP.bmp
Microsoft Windows bitmap image
CIN.cin
Cineon Image File
CLIP.clip
Image Clip Mask
CMYK.cmyk
Raw cyan, magenta, yellow, and black samples
CUR.cur
Microsoft icon
DCX.dcx
ZSoft IBM PC multi-page Paintbrush
DDS.dds
Microsoft DirectDraw Surface
DPX.dpx
SMTPE 268M-2003 (DPX 2.0) image
DXT1.dxt1
Microsoft DirectDraw Surface
EPDF.epdf
Encapsulated Portable Document Format
EPI.epi
Adobe Encapsulated PostScript Interchange format
EPS.eps
Adobe Encapsulated PostScript
EPSF.epsf
Adobe Encapsulated PostScript
EPSI.epsi
Adobe Encapsulated PostScript Interchange format
EPT.ept
Encapsulated PostScript with TIFF preview
EPT2.ept2
Encapsulated PostScript Level II with TIFF preview
EXR.exr
High dynamic-range (HDR) image
FF.ff
Farbfeld
FITS.fits
Flexible Image Transport System
GIF.gif
CompuServe graphics interchange format
HDR.hdr
High Dynamic Range image
HEIC.heic
High Efficiency Image Container
HRZ.hrz
Slow Scan TeleVision
ICO.ico
Microsoft icon
ICON.icon
Microsoft icon
J2C.j2c
JPEG-2000 codestream
J2K.j2k
JPEG-2000 codestream
JNG.jng
JPEG Network Graphics
JP2.jp2
JPEG-2000 File Format Syntax
JPE.jpe
Joint Photographic Experts Group JFIF format
JPEG.jpeg
Joint Photographic Experts Group JFIF format
JPG.jpg
Joint Photographic Experts Group JFIF format
JPM.jpm
JPEG-2000 File Format Syntax
JPS.jps
Joint Photographic Experts Group JPS format
JPT.jpt
JPEG-2000 File Format Syntax
JXL.jxl
JPEG XL image
MAP.map
Multi-resolution Seamless Image Database (MrSID)
MAT.mat
MATLAB level 5 image format
PAL.pal
Palm pixmap
PALM.palm
Palm pixmap
PAM.pam
Common 2-dimensional bitmap format
PBM.pbm
Portable bitmap format (black and white)
PCD.pcd
Photo CD
PCT.pct
Apple Macintosh QuickDraw/PICT
PCX.pcx
ZSoft IBM PC Paintbrush
PDB.pdb
Palm Database ImageViewer Format
PDF.pdf
Portable Document Format
PDFA.pdfa
Portable Document Archive Format
PFM.pfm
Portable float format
PGM.pgm
Portable graymap format (gray scale)
PGX.pgx
JPEG 2000 uncompressed format
PICT.pict
Apple Macintosh QuickDraw/PICT
PJPEG.pjpeg
Joint Photographic Experts Group JFIF format
PNG.png
Portable Network Graphics
PNG00.png00
PNG inheriting bit-depth, color-type from original image
PNG24.png24
Opaque or binary transparent 24-bit RGB (zlib 1.2.11)
PNG32.png32
Opaque or binary transparent 32-bit RGBA
PNG48.png48
Opaque or binary transparent 48-bit RGB
PNG64.png64
Opaque or binary transparent 64-bit RGBA
PNG8.png8
Opaque or binary transparent 8-bit indexed
PNM.pnm
Portable anymap
PPM.ppm
Portable pixmap format (color)
PS.ps
Adobe PostScript file
PSB.psb
Adobe Large Document Format
PSD.psd
Adobe Photoshop bitmap
RGB.rgb
Raw red, green, and blue samples
RGBA.rgba
Raw red, green, blue, and alpha samples
RGBO.rgbo
Raw red, green, blue, and opacity samples
SIX.six
DEC SIXEL Graphics Format
SUN.sun
Sun Rasterfile
SVG.svg
Scalable Vector Graphics
TIFF.tiff
Tagged Image File Format
VDA.vda
Truevision Targa image
VIPS.vips
VIPS image
WBMP.wbmp
Wireless Bitmap (level 0) image
WEBP.webp
WebP Image Format
YUV.yuv
CCIR 601 4:1:1 or 4:2:2
Frequently asked questions
How does this work?
This converter runs entirely in your browser. When you select a file, it is read into memory and converted to the selected format. You can then download the converted file.
How long does it take to convert a file?
Conversions start instantly, and most files are converted in under a second. Larger files may take longer.
What happens to my files?
Your files are never uploaded to our servers. They are converted in your browser, and the converted file is then downloaded. We never see your files.
What file types can I convert?
We support converting between all image formats, including JPEG, PNG, GIF, WebP, SVG, BMP, TIFF, and more.
How much does this cost?
This converter is completely free, and will always be free. Because it runs in your browser, we don't have to pay for servers, so we don't need to charge you.
Can I convert multiple files at once?
Yes! You can convert as many files as you want at once. Just select multiple files when you add them.