Tool

Favicon generator — PNG to ICO with crop, preview and web manifest

Upload a PNG, JPG or WebP logo, crop it square with pan and zoom or pad it proportionally, preview real 16–512px renders on light and dark chrome, and download favicon.ico, PNG icons, apple-touch-icon and site.webmanifest in one ZIP — all in your browser.

Upload image

Processing: decoding, cropping and file generation run entirely in this browser tab — your image is never uploaded, stored or sent anywhere. Closing the tab discards it.

Drop a logo here, click to browse, or paste from clipboard PNG · JPG · JPEG · WebP — transparency preserved

How it works

Upload a square-ish logo — PNG with transparency works best. Crop to fill cuts a square out of the image (drag to position, scroll or pinch to zoom); Fit with padding keeps the whole logo inside the square and pads the rest, so nothing gets stretched. Choose a transparent background for logos, or a solid color when the art disappears on dark browser chrome.

The download package contains a real multi-size favicon.ico (PNG-compressed 16/32/48px entries — read by every modern browser), favicon-16x16.png, favicon-32x32.png, apple-touch-icon.png (180px), android-chrome-192x192.png, android-chrome-512x512.png and a site.webmanifest whose icon names match the files exactly. Put all files at your site root — browsers request /favicon.ico and /apple-touch-icon.png automatically even without tags.

Everything runs locally: the image is decoded in this tab (capped at 2048px so huge files stay fast), icons are rendered on a canvas chain that halves step-by-step for sharp small sizes, and the ZIP is built in memory. The preview tiles show actual pixels at 16/32/48px on light and dark chrome — check that your mark still reads at 16px before shipping. Maskable icons are not generated: Android's safe-zone cropping needs a different layout, so this package sticks to the standard set.

FAQ

Is my image uploaded anywhere?

No. Decoding, cropping, icon rendering and ZIP packaging all run inside this browser tab — the image is never sent to a server, written to disk by us, or embedded in a link. Closing the tab discards it.

Is the favicon.ico a real ICO file?

Yes. It is a proper ICO container holding PNG-compressed 16x16, 32x32 and 48x48 entries — the format every modern browser (Chrome, Edge, Firefox, Safari) reads. It is built byte-by-byte in the page, not a PNG renamed to .ico.

Why android-chrome icons and a site.webmanifest?

Android Chrome uses them when a user adds your site to the home screen or installs it as an app. The generated manifest references exactly the files in the ZIP — android-chrome-192x192.png and android-chrome-512x512.png — plus your name, theme and background colors.

Transparent background or solid color?

Keep transparency for logos — it adapts to light and dark browser chrome. Choose a solid color only if your art loses contrast on dark themes. The preview tiles show both cases at real pixel sizes so you can check before downloading.

Does it generate maskable icons?

No. Maskable icons need a layout that survives Android's safe-zone crop (roughly a 40% inset circle). Rather than shipping icons that would get clipped, this package exports the standard set that works predictably across browsers.