favicon.missing
The home page has no <link rel="icon"> (or apple-touch-icon). Google takes the icon it shows next to the site in search results from the home page.
What to change
Add <link rel="icon" href="/favicon.svg"> (or a square PNG larger than 48x48 pixels) to the home page's <head>, and keep the file crawlable. Google documents only the link, not a /favicon.ico fallback.
The documentation on developers.google.comA finding of this rule on a page carries the exact edits for that page: the markup it quotes, and what to write instead.
When it runs
Runs on every SEO audit: of a page, a crawl, a build directory or HTML. Info is a best practice: worth doing, rarely urgent, and --no-info leaves it out. Each finding takes 1 point off the page's score.
The severity here is the rule's usual one: a finding can be raised or lowered when the page gives a reason.
Run it, or skip it
Check a page for this rule alone, after a fix for instance:
npx @rivi-software/agentic-seo-check audit https://example.com --rule favicon.missing
Or from an assistant, with the MCP tool seo_audit_page:
{
"url": "https://example.com",
"rules": [
"favicon.missing"
]
}
To leave it out of an audit, pass --disable favicon.missing on the command, or disableRules: ["favicon.missing"] to a tool.
More in The document
All 12 rules- Info
viewport.not-scalableThe viewport disables user zoom (user-scalable=no or maximum-scale=1). - Info
charset.missingNo character encoding is declared, in the HTML or in the Content-Type header. - Info
doctype.missingThe document does not start with <!DOCTYPE html>. - Info
document.html-too-largeThe HTML document is larger than 1.5 MB. - Error
head.closed-earlyAn element that does not belong in <head> (an <img>, <iframe>, <div>, stray text) ends it early, so search engines read the metadata after it as part of <body> and ignore it. - Warning
head.metadata-in-bodyMetadata that search engines read only in <head> (title, meta description, viewport, canonical, hreflang) is written in <body> (warning). Metadata a framework streams into a hidden part of <body> and moves into <head> with JavaScript, as Next.js does for an async generateMetadata, is info. Robots meta tags are not reported: Google honours them in <body> too. - Info
charset.lateThe character encoding is declared after the first 1024 bytes, where the HTML spec requires it, and the Content-Type header does not declare it. - Warning
https.mixed-contentAn https page loads resources over http. Browsers block scripts, stylesheets, frames and responsive images (warning) and upgrade plain images, audio and video to https, which fails when the https URL does not exist (info). With a Content-Security-Policy of upgrade-insecure-requests, every resource is upgraded (info).