⭐ Favicon Generator
Drop any image or type an emoji to generate the full browser favicon set — 16/32/48/180/192/512 PNGs, a two-frame ICO, a maskable variant, and a manifest.webmanifest snippet. Everything packaged as a single zip.
Affects PNG / ICO output. The maskable variant always renders inside a circle-safe area.
📋 manifest.webmanifest snippet
Preview
Maskable icon
The shaded ring marks the area Android / Chrome may crop. The icon is centered inside the inner 60% so it stays fully visible at any mask shape — circle, squircle, teardrop, …
In the exported zip the maskable PNG fills the full 512×512 with the background color, so no edge bleed-through.
📦 What's in the zip
favicon.ico— two-frame ICO (16 + 32 px)favicon-16x16.png,favicon-32x32.png,favicon-48x48.pngapple-touch-icon.png— 180×180 (iOS / iPadOS home-screen)android-chrome-192x192.png,android-chrome-512x512.pngmaskable-icon-512x512.png— for Android adaptive iconsmanifest.webmanifest— drop into your site root
About the Favicon Generator
Modern browsers and OSes ask for a surprising number of icon sizes — 16×16 for the tab favicon, 32×32 for high-DPI taskbars, 180×180 for iOS home-screen icons, 192/512 for Android (with a separate maskable variant for the adaptive-icon shape). This tool renders one source — an image or an emoji — into every size, plus a multi-frame ICO and a manifest.webmanifest snippet, all bundled in a single zip.
How to use
- Drop an image (PNG / SVG / JPEG / WebP) or switch to Emoji and type a glyph.
- Pick a background color (or transparent for SVG-style icons), a padding %, and a shape.
- Check the preview grid — every export size renders live.
- Click Download all (zip) to grab the full set.
- Drop the contents into your site root and paste the manifest snippet into
manifest.webmanifest.
HTML snippet
After unzipping into your site root, reference the icons from <head>:
<link rel="icon" href="./favicon.ico" sizes="any"> <link rel="icon" type="image/png" sizes="32x32" href="./favicon-32x32.png"> <link rel="icon" type="image/png" sizes="16x16" href="./favicon-16x16.png"> <link rel="apple-touch-icon" sizes="180x180" href="./apple-touch-icon.png"> <link rel="manifest" href="./manifest.webmanifest">
Tips
- SVG inputs scale crisply at every size — start from a vector if you have one.
- The 16×16 tile is what most users actually see in browser tabs; check it carefully — fine detail vanishes at that resolution.
- Maskable icons should fill the canvas (background + icon together). Don't add transparent edges or Android will pad them.
- The same emoji renders differently on different OSes. If consistency matters, use an SVG asset instead.