Convert image to ICO icon

Scale local images to multiple square sizes and package them into a standard multi-resolution ICO file containing multiple PNG layers.

Local browser processing
This page has passed the public directory check; full functionality is available after enabling JavaScript.
User Guide

How to use image to ICO icon

Images are decoded, scaled, and packaged only in the current browser, and are not uploaded.

  1. Load source image

    Choose a PNG, JPEG, or WebP image with no more than 20 MiB and 12 million pixels, and with the longest side no more than 8192 pixels.

  2. Select size and fit

    Check one or more icon sizes from 16–256 pixels, and set containment, cropping, and transparent or custom background.

  3. Generate ICO

    After checking the previews at each size, download the standard ICO containing multiple PNG layers, and verify it on the target system in practice.

Limitations and Notes

  • The generated layers are modern ICO container PNG; software on very old systems or software that only accepts traditional BMP/DIB layers may be incompatible.
  • Non-square images need padding or centered cropping; small sizes will lose detail, and transparent edges may also display differently on different systems.
  • For animated files, only one static frame is processed; the original file’s EXIF, color configuration, text, and other metadata will not be written into ICO.

FAQ

Can one ICO contain multiple sizes?

Yes. The system will choose the most suitable resolution from the same file, which is also the main difference between this tool and tools that only export square PNG.

Why does 16×16 look blurry?

Automatic scaling cannot replace pixel-level icon design; source images with more details usually need a separately made small-size version.

Can it be used as a website favicon?

It can be used as a compatibility format, but modern websites usually also provide SVG or PNG, and test on real browsers and devices.

Page feedbackFound an issue or have suggestions for improvement?
Feedback features need to be used in the online version

Please enable JavaScript in the online version before submitting; local features of the current tool or example are not affected.

Go to the online version for feedback