What a favicon actually needs in 2026
The single favicon.ico in the site root stopped being enough a long time ago, and the pile of files that replaced it is why generators exist. A browser tab wants 16 or 32 px. A bookmark on a retina screen wants 48. iOS wants a 180 px apple-touch-icon with no transparency. An installable web app wants 192 and 512 declared in a manifest. This page produces all of it from one source image.
Why .ico still exists
Because it is the only file browsers look for without being told. A request for /favicon.ico arrives whether or not you declared anything, and answering it with a 404 is a wasted request on every page load. The format is not an image format at all: it is a container with a small header, one directory entry per size, and the image data after it. Since Windows Vista each entry may hold a complete PNG instead of the old bitmap, which is what lets a modern .ico keep transparency.
Start square, and start big
The tool fits your image inside each square without cropping, so nothing important is cut off — but a wide logo will end up with empty space above and below, which looks small in a tab. If you have a square mark, use it. And start from at least 512 px: enlarging a 64 px image to 512 does not invent detail, it just makes the blur bigger.
The detail everyone gets wrong at 16 px
An icon that reads beautifully at 512 px frequently turns to mush at 16. Thin strokes disappear, close colours merge, and text becomes a grey smear. That is why the preview here shows the real sizes rather than a scaled-down mockup: if the 16 px square is unreadable, the fix is a simpler drawing, not a better generator.
Why it runs in your browser
A logo is rarely secret, but it is often unreleased — a rebrand, a product that has not launched, a client file under contract. Uploading it to a generator means a copy sits on a server you do not control, for as long as that server feels like keeping it. Here the file is decoded in memory, drawn onto canvases and zipped locally.
Where each file is actually used
The zip looks like more files than anyone needs, so it helps to know who asks for what. favicon.ico answers the request browsers make on their own, with no declaration. The 16 and 32 px PNGs are what a modern tab actually renders when you declare them. apple-touch-icon.png at 180 px is what iOS uses when someone adds your site to the home screen — and iOS ignores transparency there, filling it with black, which is the one case where a solid background is worth choosing. The 192 and 512 px icons belong to the web manifest and are what an installable app shows in the launcher and the splash screen. Drop them all in the site root and the snippet wires the rest.