Free Converter

PNG to ICO Converter

Convert PNG images to Windows Icon (ICO) files (Favicon generator) instantly in your browser. Fast, secure, and entirely client-side.

Click or drag PNG here

Supports up to 50MB

Or

About PNG to ICO Conversion

ICO is the format Windows expects for desktop application icons and the format browsers historically expect for favicons (link rel=icon, /favicon.ico). Generating a proper ICO file means bundling multiple sizes of the same image into a single container so that the operating system or browser can pick whichever resolution it needs. A favicon ICO typically includes 16×16, 32×32, and 48×48; a desktop application ICO usually adds 64×64, 128×128, and 256×256.

This converter takes one or more PNG files and writes a properly structured ICO file in your browser. The ICO directory and each embedded image's metadata are constructed in JavaScript using a binary buffer; PNG entries are embedded directly, while smaller sizes can optionally be re-encoded as BMP-style DIBs for legacy compatibility. The output is a standard ICO file accepted by Windows Explorer, Visual Studio, web browsers, and any other tool that consumes ICO.

All processing happens locally. The PNGs are read into the browser, the ICO byte stream is constructed in memory, and the result is offered as a download. No server upload, no temporary file storage, no external dependency.

Why Convert PNG to ICO

If you maintain a Windows application, the executable's icon must be an ICO file embedded in the binary's resources. Compiled PNG resources are not equivalent. Generating a proper ICO from your PNG masters is the standard packaging step before linking the icon into the executable.

For favicons, modern browsers also accept PNG via link rel=icon, but /favicon.ico is still the legacy fallback that older browsers and many automated tools (RSS readers, social previews, search engine crawlers) check first. A site without a /favicon.ico file generates 404 noise in server logs and may fail to display correctly in older clients. Producing the file is a five-second task; not producing it costs ongoing log spam.

How to Convert PNG to ICO

Upload your PNG masters, choose which sizes to bundle, generate.

  1. Upload your PNG file(s): Drag one PNG (it will be resized to standard sizes) or multiple PNGs at different sizes (each will be embedded as its native size). Files up to 50 MB are supported.
  2. Choose the embedded sizes: Standard favicon sizes are 16×16, 32×32, and 48×48. Standard application icon sizes add 64×64, 128×128, and 256×256. Pick the set that matches your use case.
  3. Generate the ICO: The converter resizes the source as needed, builds the ICO directory header, and embeds each image. The output is a single .ico file with all selected sizes inside.
  4. Download and deploy: Save the file. For favicons, place it at the root of your site as /favicon.ico. For Windows applications, embed via your build system's resource compilation step.

Common Use Cases

Technical Details

An ICO file consists of a 6-byte ICONDIR header (reserved=0, type=1 for ICO, count=number of images), followed by 16-byte ICONDIRENTRY records, followed by the image payload. Each ICONDIRENTRY specifies width and height (with 0 meaning 256), color count, planes, bit depth, payload size, and offset.

Each image payload is either a complete PNG file (PNG signature 0x89504E47 at the start) or a BMP-style DIB. Modern conversion tools, including this one, embed PNG for sizes 64×64 and above and BMP for smaller sizes, matching the convention Windows expects.

The browser does the heavy lifting: PNG decoding to bitmap via canvas, resizing via canvas drawImage with smoothing enabled, and final ICO assembly via DataView writes to a binary buffer. The buffer is wrapped as a Blob with type 'image/x-icon' and offered as a download.

Best Practices

Frequently Asked Questions

How many sizes should my ICO contain?
For favicons, 16×16, 32×32, and 48×48 are sufficient for almost all cases. For Windows desktop applications, add 64×64, 128×128, and 256×256. Beyond that, additional sizes provide minimal benefit while increasing file size.
Can I use one PNG to generate all sizes?
Yes. The converter resizes a single source PNG to each selected target size. For best results, start with a high-resolution master (at least 256×256) so downsampling produces sharper smaller versions.
Is transparency preserved?
Yes. ICO supports an alpha channel; transparent pixels in your source PNGs remain transparent in the embedded ICO entries.
Where should I put the favicon.ico?
Place it at the root of your domain — for example, https://example.com/favicon.ico. Browsers automatically request this location for any page in the domain. Modern browsers also accept link rel=icon pointing to other paths and PNG files, but /favicon.ico is the legacy fallback.
Is my file uploaded to a server?
No. The ICO is constructed in your browser using JavaScript binary writes. Files do not leave your device.
Will my ICO work in old versions of Windows?
Yes. The output uses the standard ICO format that Windows has supported since version 3.0. Sizes 64 and below use BMP-style payloads for maximum compatibility; 256-pixel entries use embedded PNG, which Windows Vista and later support.
Why is my favicon not updating?
Browsers cache favicons aggressively, often for days. Force a refresh by clearing the browser cache, opening the favicon URL directly to force a fresh fetch, or appending a version query parameter to the link tag.
Can I include both color icons and monochrome icons?
Standard ICO supports color depth in each entry's metadata, but most modern usage is 32-bit color across all sizes. Monochrome icons are a legacy concern that few tools handle today.