Skip to content
ZeroServer.tools

PNG to ICO Converter

Create a multi-size .ico favicon from any PNG — 16, 32, 48, and 256 px frames.

Drop a PNG here or click to browse

PNG only — any aspect ratio, non-square is fitted

Sizes to include

PNG to ICO Converter — Multi-Size Favicon Generator

Create a browser-compatible .ico favicon from any PNG image. The ICO format supports multiple sizes embedded in a single file — browsers and operating systems pick the best size for each context: 16×16 for browser tabs, 32×32 for taskbar shortcuts, 48×48 for desktop icons, and 256×256 for high-DPI displays. This tool uses the PNG-in-ICO embedding format (supported since Windows Vista), which preserves full alpha transparency. Everything runs in your browser using the Canvas API — no upload, no server, completely free.

Built and maintained by Meet Shah · Last updated

What this tool is used for

  • Producing a favicon with several sizes in one file from a single source image.
  • Creating an application icon for Windows from a PNG.
  • Generating the multi-size icon a legacy browser expects at the site root.
  • Producing an icon that stays crisp at 16 and 32 pixels as well as larger.
  • Replacing an existing favicon without an image editor.

Frequently Asked Questions

Why does an .ico contain several sizes?
Because Windows and browsers pick a different one per context: 16×16 for a tab, 32×32 for a taskbar shortcut, 48×48 for a desktop icon, 256×256 for high-DPI. One file answers all of them, which is why the format exists at all rather than being a plain image.
Is transparency preserved?
Yes. The frames are embedded as PNG inside the ICO container — supported since Windows Vista — which keeps the full alpha channel. The older BMP-based ICO layout had only a 1-bit mask, which is why very old favicons had hard, jagged edges.
What happens to a non-square image?
It is fitted, not stretched. Contain letterboxes the whole image, cover crops to fill. This tool previously stretched unconditionally while its own previews used CSS `object-contain`, so a 1000×500 logo looked right on screen and came out squashed in the file — preview and output now agree.
Do I still need a favicon.ico?
Mostly for the implicit request. Browsers ask for `/favicon.ico` when no `<link rel="icon">` is found, and some feed readers and bookmark tools only look there. Modern browsers accept a PNG through the link tag, so the .ico is a fallback rather than the primary.
Why does 256×256 make the file so much bigger?
Because it is 65,536 pixels against 16×16's 256 — a factor of 256. It is worth including for high-DPI displays and the Windows large-icon view, but if size matters and you do not need those, 16/32/48 covers the everyday cases at a fraction of the bytes.

Common errors and gotchas

  • Supplying a single large image and letting it be downscaled, which loses legibility at 16 pixels.
  • Designing detail that disappears entirely at the smallest size.
  • Losing transparency, which leaves a visible box against a coloured tab.
  • Assuming one size is enough, when browsers and the OS pick different frames for different contexts.
  • Uploading the ICO without clearing caches and concluding it did not work.

Related Converters tools

Private & free — this tool runs entirely in your browser.

IndieKitShip your Next.js startup in days.affiliate