Google SERP Favicon That Actually Shows Up

Google's site icon in search results is not the same problem as a favicon in a browser tab. It wants a crawlable 48×48 (or multiple-of-48) raster icon at a stable root URL, plus consistent signals in HTML and structured data. My portfolio once showed the wrong image in SERPs — a stale apple-touch-icon from an old deploy. Fixing it meant treating the SERP icon as its own mini-project.

The SEO article covers titles and sitemaps. The prerender article covers crawlable HTML. This one is the favicon stack that keeps Google from guessing.

scripts/generate-favicon-sizes.py resizes favicon-96x96.png into 48×48, 32×32, 16×16, apple-touch-icon, Android chrome sizes, and a 48px favicon.ico. It writes favicon.variants.json with SHA-256 hashes so check-qa can detect stale assets.

← Rafael González Albes