Favicon checker

Check that your favicon loads, appears in the browser tab, and is ready for Google Search results

Free
No Sign-up
Instant Results

Check results

This check only covers the favicon. For a full picture of your page, run a page audit.

For issues across your whole site — duplicate titles, orphan pages, broken internal links — run a site audit.

Want us to fix what we found? Our team can help.

What is a favicon and why it matters

A favicon (short for "favorite icon") is the small image that identifies your site in the browser tab, bookmarks list, history, and — since 2019 — in Google Search results next to your URL. It's declared with <link rel="icon"> in the page <head> or served from /favicon.ico at the site root. A broken or missing favicon doesn't block indexing, but it's one of the cheapest ways to lose brand recognition at the point where users decide which result to click.

What this tool checks

  • Favicon presence — at least one <link rel="icon"> in HTML, or a working /favicon.ico fallback at the origin root
  • Favicon accessibility — HEAD request on the declared URL; flags 4xx / 5xx errors and connection failures
  • Content-Type sanity — flags favicons that respond with text/html (a common symptom of an SPA catch-all route serving the app shell for a missing asset)
  • apple-touch-icon presence — separate check for <link rel="apple-touch-icon"> used by iOS when users save the site to their home screen
  • apple-touch-icon accessibility — HEAD probe to confirm the iOS icon loads

Why favicon matters for SEO and UX

  • Google SERP — since 2019, Google shows the favicon next to the site name on mobile organic results, and since 2023 in desktop results too. Sites without a favicon get a default globe placeholder, which visibly weakens brand recognition in the result list
  • Minimum size for Search — Google requires the favicon to be at least 48×48 pixels and a multiple of 48. Smaller icons are upscaled or dropped in SERP previews
  • Tab identification — users with dozens of open tabs identify pages by favicon, not by truncated title text. Missing icons make your tab indistinguishable from every other generic-document icon
  • Bookmark fidelity — browsers cache the favicon when a user bookmarks the page; a broken favicon at bookmark time leaves the bookmark permanently faceless
  • iOS home screen — when users "Add to Home Screen" in Safari, iOS uses apple-touch-icon. Without it, iOS crops a screenshot of the page, usually producing an unrecognizable tile
  • Signal of care — auditors and manual reviewers read "no favicon" as "unfinished project". It's a 10-minute fix with outsized perception impact

Good vs bad examples

Good — modern SVG with a legacy ICO fallback for older clients:

<link rel="icon" href="/favicon.svg" type="image/svg+xml">
<link rel="icon" href="/favicon.ico" sizes="32x32">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">

Good — just the classic /favicon.ico at the site root, no tag needed (browsers find it automatically):

<!-- no link tag; /favicon.ico responds with image/x-icon -->

Bad — declared but the file is missing (serves the SPA shell instead):

<link rel="icon" href="/favicon.ico">
<!-- GET /favicon.ico → 200 OK, Content-Type: text/html -->

Bad — declared but 404, browsers fall back to a placeholder:

<link rel="icon" href="/static/icons/old-favicon.png">
<!-- GET /static/icons/old-favicon.png → 404 -->

Bad — no <link> tag and /favicon.ico missing at root (noisy 404 in server logs on every page load):

<!-- no favicon at all -->

Common mistakes

  • SPA catch-all serving HTML for missing assets — React/Vue/Angular routing rules that fall through to index.html for unknown paths. The favicon request returns 200 OK with the app shell; browsers render nothing in the tab. Fix: exclude static-asset paths from the SPA fallback
  • Uploaded to /images/favicon.png but no <link> tag — browsers only look at <link rel="icon"> and /favicon.ico; a favicon saved to any other path without a declaration is invisible
  • 16×16 or 32×32 only — Google Search requires at least 48×48 for SERP display. Sub-48 icons show as the default globe
  • Using rel="shortcut icon" exclusively — still works, but it's a legacy Microsoft-era form. Modern rel="icon" is the current standard
  • apple-touch-icon with transparent background — iOS renders the icon on a white tile regardless of the page theme; transparent PNGs look fine on light backgrounds but can clash with iOS dark mode. Prefer a solid background baked into the PNG
  • Caching a broken favicon — browsers cache favicons aggressively (often for weeks). After fixing the file, test in a private/incognito window; regular windows may still show the old broken state

Frequently asked questions

Not directly — it isn't a ranking signal. But since 2019 Google shows the favicon next to your URL in mobile search results (and in desktop results since 2023), so a missing or broken favicon replaces your brand mark with a default globe icon. That affects click-through rate, which Google does track. A branded favicon next to a competitor's globe placeholder is a small but measurable CTR edge.
For Google Search, the favicon must be at least 48×48 pixels and a multiple of 48 (48, 96, 144, 192, etc.). Smaller icons are either upscaled or replaced with the default globe. For the browser tab itself, 16×16 and 32×32 are the native display sizes, so supply both — either as separate PNG files with sizes="16x16" / sizes="32x32", or (best) as a single SVG that scales to any size. apple-touch-icon should be 180×180.
Yes, as a fallback. All browsers still auto-request /favicon.ico on first page load even if a <link rel="icon"> is declared — a quirk inherited from the late-90s Internet Explorer era. If the file is missing, every page load generates a 404 in your server logs. Keep a /favicon.ico at the root with a 16×16 and 32×32 combined .ico, plus a modern <link rel="icon" href="/favicon.svg"> for crisp high-DPI rendering.
Two separate caches: Google's and the browser's. Google re-crawls favicons when it re-crawls your homepage (usually every few days to a few weeks); you can nudge this with a URL Inspection → Request Indexing in Search Console, but it still takes a crawl cycle before SERP results update. The browser cache is more stubborn — browsers can cache favicons for weeks regardless of HTTP cache headers. Force-refresh with a cache-busting query string (?v=2) or test in a private window. The favicon file itself should be served with sensible Cache-Control (e.g. max-age=86400) — not max-age=31536000, which makes future updates effectively impossible.
SVG is the modern answer — one file scales cleanly to every size (16, 32, 48, 180, 512) across high-DPI and standard displays, and it supports @media (prefers-color-scheme: dark) inside the SVG itself for automatic dark-mode variants. All current browsers support SVG favicons (Chrome, Firefox, Safari, Edge). Keep a PNG or ICO as a fallback for older clients: <link rel="icon" href="/favicon.svg" type="image/svg+xml"> followed by <link rel="icon" href="/favicon.ico">. Browsers pick the best supported format automatically.