Scanner finding guides

Find the meaning, remediation steps and verification commands for every scanner finding. Passing checks and unknown measurements have explanations too; they do not always call for a code change.

The six category weights total 100 points. Individual findings can overlap, and some are unscored diagnostics. Numbered parser warnings and resource errors link to stable family guides.

How do I use a finding guide?

  1. Match the finding ID in your scan to a guide below.
  2. Read the measured state before changing code. A passed or unknown check may need no change.
  3. Apply the relevant remediation and verify the actual response.
  4. Rescan the exact URL and keep measurement limits with the result.

Access 28 points

Why the score has a ceilingscore-cappedAn access condition limits the total even when content categories score well.When the scanner cannot fetch a pagepage-unreachableThe scanner did not receive usable page HTML. Its network is not a vendor crawler network.When robots.txt could not be checkedrobots-unknownA request failed or was incomplete, so the scanner cannot infer a crawler policy.Publish a readable robots.txtno-robots-txtNo usable robots.txt was detected. Missing rules do not automatically mean crawlers are blocked.Allow the intended search crawlersblocked-search-botsA matching robots.txt rule disallows one or more search crawlers for the scanned path.Verify permitted search crawler rulessearch-bots-accessibleThe parsed robots.txt policy permits the checked search crawlers at this path.Review blocked browsing agentsblocked-user-botsA rule targets one or more user-invoked browsing identities. Operator compliance differs.Keep training and search policy separateblocked-training-botsTraining-related crawler rules disallow collection. That can be an intentional policy.Resolve robots.txt parser warningsrobots-warningThe scanner found syntax or grouping that needs review. Numbered warning IDs share this guide.Investigate a bot-header response blockserver-block-detectedA browser-like request received content while a request with a crawler header received a block. Both came from our infrastructure.Resolve an uncertain server comparisonserver-block-uncertainThe limited request comparison did not establish a reliable crawler-specific block.Interpret a successful header probeserver-block-passThe limited probe did not detect a crawler-header block. It does not verify access from a vendor network.Remove an unintended noindex directivemeta-robots-noindexThe response tells supporting search engines not to index this page.Retry incomplete sitemap discoverysitemap-unknownThe scanner could not finish sitemap discovery. It has not established that the sitemap is missing.Publish and advertise an XML sitemapno-sitemapNo usable sitemap was found through the checked locations.Maintain a discovered sitemapsitemap-foundThe scanner found a usable XML sitemap.Review snippet restrictionsnosnippetA nosnippet or max-snippet:0 instruction restricts supported search snippets and Google AI features.Fix an HTML fallback at a resource URLsoft-200A resource endpoint returned HTTP 200 with an invalid body, often the website app shell. Resource-specific IDs share this guide.

Readability 14 points

Structured data 16 points

Add accurate page identity markupno-structured-dataThe scanner found no supported structured-data representation in the response.Review microdata or RDFa before adding JSON-LDnon-jsonld-schemaStructured data exists outside JSON-LD. Valid microdata or RDFa can already describe the page.Maintain the detected JSON-LDhas-json-ldAt least one JSON-LD block was found. Presence alone does not establish semantic correctness.Identify the actual site publishermissing-organization-schemaThe expected Organization node was not detected for this page context.Connect the site-level WebSite entitymissing-website-schemaA WebSite node was not detected in the supplied markup.Choose schema for this page typemissing-schema-typeThe report recommends a type relevant to the detected page purpose.Fix the reported structured-data issueschema-issueThe schema parser reported a specific issue. Numbered issue IDs share this guide.Maintain the schema audit resultschema-audit-cleanThe checked schema principles produced no reported violations. This is a bounded audit.Say only what the page saysschema-content-matchSome structured-data facts do not match the visible page content.Connect your entitiesschema-entity-graphThe structured entities lack fields or references needed to identify their relationships.Use the narrowest true typeschema-specific-typeThe schema type is too generic for the main content this page presents.Make answers quotableschema-direct-answersThe scanner found FAQ answers that need clearer standalone wording or a length review.Parse cleanlyschema-validityThe scanner found a JSON syntax, schema value or reference problem.Declare each thing onceschema-single-sourceMultiple schema sources declare the same entity or disagree about its facts.

Authority and entity 18 points

Extractability 14 points

Freshness and hygiene 10 points

Agent diagnostics unscored

maintains Let The Bots In, a technical AI-readiness scanner and reference site.