Why a favicon is still more than one file
It would be reasonable to expect one image to cover this. In practice a browser tab wants 16 or 32 pixels, Windows wants 48 for the taskbar, iOS wants a 180px touch icon, and Android wants 192 and 512 for the home screen and the manifest. Serve only a 512px PNG and small renderings get downscaled on the fly — usually badly, because detail that reads fine at 512 turns to porridge at 16.
The .ico format exists precisely for this: it is a container holding several images at different sizes, and the browser picks the one it needs. That is why this tool writes a genuine multi-image ICO with 16, 32 and 48 inside, rather than renaming a PNG.
| File | Size | Used by |
|---|---|---|
favicon.ico | 16, 32, 48 in one file | Browser tabs, bookmarks, Windows |
favicon-32x32.png | 32 × 32 | Modern browsers on high-DPI screens |
apple-touch-icon.png | 180 × 180 | iOS home screen and Safari |
android-chrome-192x192.png | 192 × 192 | Android home screen |
android-chrome-512x512.png | 512 × 512 | Manifest, install prompt, splash |
Design for 16 pixels first
A favicon at 16×16 has about the detail budget of a single letter. Whatever survives that size should drive the design: one shape, one or two colours, no gradients, no text beyond a single initial. If you can only tell what your logo is at 128px, the tab will show an anonymous smudge — which is the actual failure mode people notice when they have fifteen tabs open.
Padding deserves a mention too. Instinct says add breathing room; at 16px it just makes the mark smaller and mushier. Keep padding minimal for favicons, and save the generous margins for the Android and iOS icons, which are drawn much larger.
Where each file goes
Convention puts all of them at the root of your site, because browsers and crawlers request /favicon.ico whether you linked it or not. That default request is also why you should ship an ICO even in 2026: without one, every visit generates a 404 in your logs, and some crawlers keep asking.
Everything else needs an explicit <link> in the head — the snippet above lists them in the order browsers evaluate. Note the sizes="any" on the ICO line: it stops Chrome from preferring the ICO over your sharper PNGs on high-DPI displays.
Favicons and converted apps
Inside an Android app the favicon is invisible — the launcher uses the APK's own icon resources, which is what our APK icon generator produces. But the two should match. Users who find your site in a browser and your app in the Play Store should see the same mark, and reviewers do notice when a store listing icon looks nothing like the site it wraps.
The apple-touch-icon and the Android 192/512 PNGs are the overlap: they are what appears if someone adds your site to their home screen instead of installing the app, and they are referenced from the web app manifest.
Why not just an SVG favicon?
SVG favicons are supported by current Chrome, Firefox and Safari, scale perfectly, and can even respond to dark mode with a media query inside the file. They are a good addition — but not yet a complete replacement, because older browsers, some feed readers and various OS-level surfaces still want a raster. Ship the SVG if you have one, and keep the ICO as the fallback.