Skip to content

Favicon Generator

PNG, JPG, SVG, or WebP. A square 512×512 source gives the cleanest downscaled favicons.

Manifest

Estimates for educational purposes — not financial, medical, or legal advice. See terms.

Every web project needs favicons, and producing them is a five-minute job that somehow takes everyone longer than it should. The modern set is six PNG sizes plus a multi-resolution .ico file plus a PWA manifest plus the HTML link tags. Each individually is trivial; assembling them by hand is tedious. This tool does the assembly in your browser, no upload, no service to learn.

What’s in the output zip

favicon-16x16.png        — browser tab, standard density
favicon-32x32.png        — browser tab, HiDPI screens
favicon-48x48.png        — Windows taskbar shortcut
apple-touch-icon.png     — iOS home screen (180×180)
android-chrome-192x192.png — Android Chrome
android-chrome-512x512.png — PWA / Android Chrome (large)
favicon.ico              — multi-resolution: 16, 32, 48 bundled
site.webmanifest         — PWA manifest with name and icon refs
snippet.html             — <link> tags to paste into <head>

Drop all of them at the root of your site (/favicon.ico, /site.webmanifest, etc.) and add the snippet to your <head>. Done.

What HTML to paste

The snippet.html file contains:

<link rel="icon" href="/favicon.ico" sizes="any">
<link rel="icon" href="/favicon-16x16.png" type="image/png" sizes="16x16">
<link rel="icon" href="/favicon-32x32.png" type="image/png" sizes="32x32">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
<link rel="manifest" href="/site.webmanifest">

Modern browsers pick the right PNG based on display density and browser conventions. Safari uses the apple-touch-icon for the iOS home screen. Chrome on Android uses the manifest’s icons array. The .ico is the fallback for older browsers and the only file Windows Explorer reads.

Source image guidance

A 512×512 square PNG with transparent background is ideal. The tool downscales using the browser’s Canvas API which produces clean results across the size range.

If your source is rectangular, the default mode fills the square (which distorts the image). Switch to “Letterbox” to preserve the aspect ratio with background padding — recommended for wordmarks and rectangular logos.

If your source is SVG, the tool draws it at each target size. Vector input gives the cleanest possible favicons because there’s no upscaling artefact at the larger sizes.

Example: starting from a logo PNG

You have a square 512×512 logo PNG. Upload, set the app name to your project’s name, leave background as default white. Click Generate. All six sizes render below. Inspect the 16×16 preview — if your logo’s fine details disappear at that size, consider creating a separate simplified mark for the favicon set (most brands have one for exactly this reason).

Example: starting from a Figma export

Export your icon from Figma as a 1× PNG at the largest size you want (typically 512×512). Upload here. The downscale path produces consistent output across all sizes. If you re-export at multiple sizes from Figma, you might get different rendering hints (text rasterisation, line snapping) — using one source and downscaling here gives consistent results.

Common mistakes

Source too small. Uploading a 64×64 source produces fine 16/32/48 favicons but blurry 192/512 PWA icons. Always start from the largest size you’ll need.

Forgetting the manifest. Without site.webmanifest, Android Chrome won’t use your 192/512 PNGs as the home-screen icon — it’ll fall back to a generic browser icon. The manifest is small (~200 bytes); always include it.

Caching gotcha. Browsers and operating systems cache favicons aggressively. After deploying a new favicon, your own browser may show the old one for hours. Hard refresh (cmd+shift+R / ctrl+shift+R) usually fixes browser; Windows taskbar icons need an explicit cache clear.

Distorting non-square logos. The default fill mode distorts rectangular sources. Use “Letterbox” mode for wordmarks and rectangular logos to preserve their aspect ratio.

What this tool does not do

It doesn’t generate .icns files for macOS .app bundles. That’s a separate workflow (use iconutil on macOS).

It doesn’t provide a SVG favicon. Modern browsers support SVG favicons (<link rel="icon" href="/favicon.svg" type="image/svg+xml">) — if you have a clean SVG source, run it through the SVG optimiser and host the result at /favicon.svg in addition to the bundle from this tool.

It doesn’t validate the produced favicon set against the live site. After deploying, tools like RealFaviconGenerator’s checker verify the link tags are correct and the files load.

It doesn’t generate Open Graph images, social cards, or other “share preview” assets. Those have very different aspect ratios (1.91:1 for OG, square for some platforms) and warrant a separate workflow — the social media image sizes reference has the current dimensions for each platform.

Frequently asked questions

Which sizes do I actually need?

The current modern set: 16×16 and 32×32 PNG (browser tabs, standard and HiDPI), 48×48 (Windows taskbar shortcuts), 180×180 (iOS home screen, called apple-touch-icon), 192×192 and 512×512 (Android Chrome and PWA), and a multi-resolution favicon.ico (containing 16/32/48). Older browsers fall back to the .ico via the unsuffixed `<link rel="icon" href="/favicon.ico">`. The HTML snippet bundled in the zip references all of these correctly.

What's the best source image?

A square 512×512 PNG with transparent background gives the cleanest downscaled output. SVG sources work great too — vector scales without quality loss at any size. JPG sources are fine but JPEG compression artefacts can become visible when downscaled to 16×16 (a single artefact pixel matters at that size). Avoid using a small source (anything under 256×256) and upscaling — the small sizes will look fine but the 192/512 PWA versions will be blurry.

Why does my .ico file work but Windows Explorer doesn't show it?

Windows Explorer caches favicons aggressively — even after you replace favicon.ico, the cached version may persist for hours or until you clear the Windows icon cache (`ie4uinit.exe -show` or restart Explorer). The favicon will display correctly in browsers immediately; Windows shortcuts and taskbar icons take longer to update. This is a Windows behaviour, not a problem with the .ico file.

Should the icon include text?

Generally no for the small sizes. Text inside a 16×16 favicon is unreadable. Text at 32×32 is barely readable. The modern convention is a recognisable mark / logo / monogram. If your brand identity is wordmark-only and you can't extract a mark, use the first letter or initial as the favicon. The 192/512 PWA sizes can include more detail since they're shown at larger sizes (home screen icons, app launchers).

What's the difference between favicon.ico and favicon-32x32.png?

Both serve the same purpose (browser tab icon) but in different formats. .ico is the legacy Windows format that bundles multiple resolutions in one file; modern browsers prefer the explicit .png references. The HTML snippet in the zip uses both: PNG for modern browsers via `<link rel="icon" type="image/png" sizes="...">` and .ico for older browsers via the bare `<link rel="icon" href="/favicon.ico">`. Including both ensures coverage from IE6 through current Chrome / Safari / Firefox.