Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when checking whether a site has a correctly configured favicon, auditing `<link rel='icon'>` tags in the `<head>`, or setting up favicon infrastructure for a new project.
.claude/skills/thedaviddias-favicon/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | -5% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 10% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -53% | 0% |
| case-03 | ✓→✓ | = Same ✓ | -1% | 0% |
| case-04 | ✓→✓ | = Same ✓ | 33% | 0% |
Google displays favicons next to search results on mobile devices, making your brand immediately recognisable in the SERP. A missing or inaccessible favicon prevents Google from showing it, reducing visual brand presence in search.
<link rel="icon"> pointing to a favicon file; Google uses it to identify your site in search resultsIn the page <head>, look for <link rel="icon"> or <link rel="shortcut icon"> elements. Verify: (1) The href points to an accessible URL (returns 200, not blocked by robots.txt). (2) The file is at least 48×48px (for Google Search use). (3) A PNG or SVG version is provided alongside the ICO fallback. (4) The favicon is accessible over HTTPS.
favicon.ico (16×16 and 32×32, ICO format) — legacy browser fallbackfavicon.svg (scalable, modern browsers)apple-touch-icon.png (180×180 PNG) — iOS home screen/public directory.<head>:html <link rel="icon" href="/favicon.ico" sizes="any"> <link rel="icon" href="/favicon.svg" type="image/svg+xml"> <link rel="apple-touch-icon" href="/apple-touch-icon.png">
Favicons appear next to your site's name in browser tabs, bookmarks, and Google Search mobile results. Google explicitly states it uses the favicon from <link rel='icon'> for display in search results. A missing, blocked, or too-small favicon means Google cannot show your brand icon, reducing search result click-through rate.
Check the <head> for <link rel='icon'> and <link rel='apple-touch-icon'>. Verify the href values are valid relative or absolute paths. Confirm the favicon files exist and return HTTP 200. Flag if only favicon.ico at site root is used without an explicit <link> element (relying on browser default discovery is less reliable).
For full implementation details, code examples, and framework-specific guidance, see references/rule.md.
Rule page: https://frontendchecklist.io/en/rules/seo/favicon
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-02 | fail→pass | 9,173 | 5,635 | -39% | 1 | 1 | 0% | 1,915 | 1,816 | -5% | 0 | 0 | — |
case-01 | fail→pass | 11,783 | 7,530 | -36% | 1 | 1 | 0% | 2,021 | 2,226 | +10% | 0 | 0 | — |
case-03 | pass→pass | 11,621 | 8,241 | -29% | 1 | 1 | 0% | 2,447 | 2,419 | -1% | 0 | 0 | — |
case-04 | pass→pass | 8,268 | 6,959 | -16% | 1 | 1 | 0% | 1,493 | 1,980 | +33% | 0 | 0 | — |
case-05 | pass→pass | 3,937 | 4,575 | +16% | 1 | 1 | 0% | 934 | 1,476 | +58% | 0 | 0 | — |
case-06 | pass→pass | 7,187 | 4,474 | -38% | 1 | 1 | 0% | 1,353 | 1,477 | +9% | 0 | 0 | — |
case-07 | pass→pass | 1,799 | 1,403 | -22% | 1 | 1 | 0% | 297 | 885 | +198% | 0 | 0 | — |
case-08 | pass→pass | 7,260 | 3,340 | -54% | 1 | 1 | 0% | 1,317 | 1,235 | -6% | 0 | 0 | — |
case-09 | pass→pass | 3,623 | 2,356 | -35% | 1 | 1 | 0% | 808 | 1,038 | +28% | 0 | 0 | — |
case-10 | pass→pass | 9,479 | 5,691 | -40% | 1 | 1 | 0% | 1,757 | 1,700 | -3% | 0 | 0 | — |
case-11 | fail→pass | 15,278 | 3,797 | -75% | 1 | 1 | 0% | 2,836 | 1,328 | -53% | 0 | 0 | — |
case-12 | pass→pass | 10,198 | 4,629 | -55% | 1 | 1 | 0% | 1,900 | 1,658 | -13% | 0 | 0 | — |
case-13 | pass→pass | 4,924 | 1,776 | -64% | 1 | 1 | 0% | 864 | 939 | +9% | 0 | 0 | — |
case-14 | pass→pass | 12,304 | 7,063 | -43% | 1 | 1 | 0% | 2,160 | 2,038 | -6% | 0 | 0 | — |
case-15 | pass→pass | 5,068 | 2,085 | -59% | 1 | 1 | 0% | 864 | 1,024 | +19% | 0 | 0 | — |
case-16 | pass→pass | 9,237 | 6,545 | -29% | 1 | 1 | 0% | 2,042 | 1,810 | -11% | 0 | 0 | — |
case-17 | pass→pass | 3,734 | 1,798 | -52% | 1 | 1 | 0% | 708 | 955 | +35% | 0 | 0 | — |
case-18 | pass→pass | 6,416 | 2,008 | -69% | 1 | 1 | 0% | 1,134 | 980 | -14% | 0 | 0 | — |
case-19 | pass→pass | 2,466 | 2,383 | -3% | 1 | 1 | 0% | 434 | 1,122 | +159% | 0 | 0 | — |
case-20 | pass→pass | 3,816 | 1,537 | -60% | 1 | 1 | 0% | 675 | 876 | +30% | 0 | 0 | — |
case-21 | pass→pass | 12,687 | 9,445 | -26% | 1 | 1 | 0% | 2,122 | 2,317 | +9% | 0 | 0 | — |
case-22 | pass→pass | 5,482 | 1,990 | -64% | 1 | 1 | 0% | 1,064 | 987 | -7% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +14 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.