Modern Favicon Strategy for 2026: Minimal Files & Web Manifests
The internet is littered with guides telling you to generate twelve favicon variants. In 2026, you need exactly three files for full browser and device coverage. Everything else is legacy noise.
What You'll Learn
- The minimal favicon file set that covers every modern browser
- How
manifest.jsonicons work and when they matter - Common mistakes that cost you tab-bar real estate
The Three Files You Need
| File | Purpose | Spec |
|---|---|---|
favicon.ico | Legacy browsers, Google SERP | 32×32 (single-size ICO) |
icon.svg | Modern browsers (Chrome, Edge, Firefox) | Any size, supports prefers-color-scheme |
apple-touch-icon.png | iOS home screen, Safari | 180×180 PNG |
That's it. Drop them in your site root and add these tags:
<link rel="icon" href="/favicon.ico" sizes="32x32">
<link rel="icon" href="/icon.svg" type="image/svg+xml">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
Why SVG Favicons Are a Game-Changer
An SVG favicon can adapt to dark mode:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
<style>
circle { fill: #3b82f6; }
@media (prefers-color-scheme: dark) {
circle { fill: #60a5fa; }
}
</style>
<circle cx="16" cy="16" r="14"/>
</svg>
No raster equivalent can do that. One file, infinite resolution, theme-aware.
Web App Manifest Icons
If you're building a PWA, manifest.json needs its own icon entries:
{
"icons": [
{ "src": "/icon-192.png", "sizes": "192x192", "type": "image/png" },
{ "src": "/icon-512.png", "sizes": "512x512", "type": "image/png" }
]
}
These are used for install prompts, splash screens, and OS-level app icons. They're separate from your favicon and must be PNG (not SVG—Android requires raster for manifest icons as of 2026).
Common Mistakes
- Serving a 16×16 ICO — Google shows favicons at 32×32 minimum in search results. A 16 px source gets upscaled and looks blurry.
- Forgetting
apple-touch-icon— Safari on iOS ignores<link rel="icon">. Without the apple-specific tag, your home-screen bookmark gets a generic screenshot. - Using PNG for the primary favicon — PNGs work but don't support dark-mode adaptation. Use SVG as the primary, ICO as the fallback.
- Over-generating sizes — Tools that produce 48, 64, 96, 128, 152, 192, 256, 384, 512 px variants waste your build pipeline. Modern browsers pick the closest match from SVG anyway.
Need to convert a PNG logo to ICO format? Use the PNG-to-ICO converter on Icojoy—it produces clean 32×32 ICO files in seconds.
Favicon Checklist
-
favicon.ico— 32×32, placed at site root -
icon.svg— Vector source with optional dark-mode@mediarule -
apple-touch-icon.png— 180×180, referenced via<link> -
manifest.json— Two PNG icons (192, 512) for PWA - Test in Chrome DevTools → Application → Manifest
- Verify Google SERP rendering with the URL Inspection tool
Where Favicons Fit in Your Icon Workflow
Favicons are just small icons with strict delivery requirements. The same design grid you use for UI icons works at 32 px—just simplify details aggressively. Browse Icojoy icon packs for glyph sets that scale cleanly down to favicon sizes, and use the Icojoy tools to export the formats you need.
FAQ
Do I still need favicon.ico in 2026?
Yes. Google's crawler and some older browsers still request /favicon.ico by convention. A 32×32 ICO file is tiny and prevents 404s.
Can I use WebP or AVIF for favicons? No browser supports WebP/AVIF favicons. Stick with ICO, SVG, and PNG.
What about <link rel="mask-icon">?
Safari dropped the requirement for mask-icon in favour of standard SVG favicons. You can safely remove it.
How do I test favicon dark mode? In Chrome DevTools, toggle the "prefers-color-scheme" emulation under Rendering, then reload to see your SVG favicon switch.
Should favicon design match my app icon? Ideally yes, but at 32 px you may need to simplify. Keep the primary shape and brand colour; drop fine details. The Icojoy collections page has favicon-ready mini versions of popular icon sets.