
Logo Asset Generation Best Practices
Master the art of creating perfect logo assets for all platforms with our comprehensive guide

The complete guide to creating favicons that work flawlessly across all browsers and devices
Favicons have come a long way from the simple 16x16 pixel ICO files of the early web. Today's favicon ecosystem is complex, with different browsers supporting various formats, sizes, and features. Understanding these differences is crucial for delivering the best user experience across all platforms.
As of 2025, here's what major browsers support:
Chrome/Edge (Chromium-based)
Firefox
Safari
Legacy Browsers
<link rel="icon" href="/favicon.svg" type="image/svg+xml">Advantages:
Example with dark mode support:
<svg viewBox="0 0 128 128" xmlns="http://www.w3.org/2000/svg">
<style>
path { fill: #000; }
@media (prefers-color-scheme: dark) {
path { fill: #fff; }
}
</style>
<path d="..." />
</svg><link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">Required sizes:
<link rel="icon" type="image/x-icon" href="/favicon.ico">ICO should contain:
<!-- iPhone X, 11, 12, 13, 14, 15 -->
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<!-- iPad Pro -->
<link rel="apple-touch-icon" sizes="167x167" href="/apple-touch-icon-167x167.png">
<!-- Safari Pinned Tab -->
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">Key considerations:
<!-- Android Chrome -->
<link rel="icon" type="image/png" sizes="192x192" href="/android-chrome-192x192.png">
<link rel="icon" type="image/png" sizes="512x512" href="/android-chrome-512x512.png">
<!-- Web App Manifest -->
<link rel="manifest" href="/site.webmanifest">Manifest configuration:
{
"name": "Your App Name",
"short_name": "App",
"icons": [
{
"src": "/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
}
],
"theme_color": "#ffffff",
"background_color": "#ffffff"
}<!-- Windows 8/10/11 Start Screen -->
<meta name="msapplication-TileColor" content="#da532c">
<meta name="msapplication-TileImage" content="/mstile-144x144.png">
<!-- browserconfig.xml for advanced configuration -->
<meta name="msapplication-config" content="/browserconfig.xml"><!-- Modern browsers get SVG -->
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
<!-- Fallback for older browsers -->
<link rel="alternate icon" href="/favicon.ico">
<!-- Specific sizes for different uses -->
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">PNG Optimization:
SVG Optimization:
<!-- Preload the main favicon -->
<link rel="preload" href="/favicon.svg" as="image" type="image/svg+xml">
<!-- Preconnect for external icon services -->
<link rel="preconnect" href="https://your-cdn.com"><svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
<style>
.favicon-bg { fill: #ffffff; }
.favicon-fg { fill: #000000; }
@media (prefers-color-scheme: dark) {
.favicon-bg { fill: #1a1a1a; }
.favicon-fg { fill: #ffffff; }
}
</style>
<rect class="favicon-bg" width="100" height="100" />
<circle class="favicon-fg" cx="50" cy="50" r="30" />
</svg><link rel="icon" href="/favicon-light.svg" type="image/svg+xml" media="(prefers-color-scheme: light)">
<link rel="icon" href="/favicon-dark.svg" type="image/svg+xml" media="(prefers-color-scheme: dark)">Solution: Always include 32x32 and larger sizes for high-DPI screens
Solution: Use cache-busting query parameters
<link rel="icon" href="/favicon.png?v=2">Solution: Test your favicon on both light and dark browser themes
Solution: Use sRGB color space and test on actual devices
✅ Chrome - Regular and incognito mode
✅ Firefox - Regular and private mode
✅ Safari - macOS and iOS
✅ Edge - Windows 10/11
✅ Mobile browsers - Chrome, Safari, Samsung Internet
<!-- SVG for modern browsers -->
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
<!-- PNG fallbacks -->
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<!-- Apple Touch Icons -->
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<!-- Web Manifest -->
<link rel="manifest" href="/site.webmanifest">
<!-- Safari Pinned Tab -->
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
<!-- Windows -->
<meta name="msapplication-TileColor" content="#da532c">
<meta name="theme-color" content="#ffffff">
<!-- Legacy browsers -->
<link rel="shortcut icon" href="/favicon.ico">Favicon optimization in 2025 requires a comprehensive approach that balances modern features with backward compatibility. By following these guidelines and using tools like Logo Foundry, you can ensure your favicon looks perfect across all browsers and devices while maintaining optimal performance.
Remember: a well-implemented favicon enhances brand recognition, improves user experience, and demonstrates attention to detail. It's worth getting right.
Need help generating the perfect favicon set? Try Logo Foundry for automated favicon generation with browser-specific optimizations.

Master the art of creating perfect logo assets for all platforms with our comprehensive guide

Complete reference for PWA icon sizes (192×192, 512×512), the 80% safe zone rule, maskable icons, and manifest.json setup. With Lighthouse fixes & code.

Complete technical guide for developers to integrate Logo Foundry assets into their projects efficiently
Join the community
Subscribe to our newsletter for the latest news and updates