Each one is a check that runs, described by the engine itself. If a check changes, this page changes with it.
HTTP status
http_statusThe status of the final response after redirects. Fails on anything outside the 2xx range, because a URL that does not answer 200 has no document to index; warns on a 2xx that is not 200. Reports not_measurable when the audit was run against supplied HTML rather than a live fetch.
Fixing it: Gives search engines a document to index at this URL at all.
robots.txt
robots_txtThe origin /robots.txt, parsed to RFC 9309: consecutive user-agent lines share a group, the most specific group wins, and the longest matching pattern decides with Allow winning ties. Fails when the audited path is disallowed for Googlebot; warns when the file is absent or declares no Sitemap. Distinct from the robots meta tag: a disallow here stops the crawl, not just the indexing.
Fixing it: Lets crawlers read the page, so every other signal on it can be seen.
Robots meta directives
robots_metaDirectives across meta robots, googlebot, bingbot and googlebot-news tags. A noindex or none directive fails the check outright because it removes the page from search regardless of every other signal; nofollow warns because it strips the page of its outbound crawl value.
Fixing it: Removes a directive that keeps the page out of search regardless of its content.
Canonical URL
canonicalPresence of <link rel="canonical">, whether its href is absolute in the markup, whether it resolves to the audited URL itself, and whether more than one canonical is declared. A missing or conflicting canonical lets parameter and trailing-slash variants compete with the page.
Fixing it: Consolidates duplicate URL variants onto one address, so ranking signals stop being split.
Title tag
titlePresence, length and structure of <title>. Fails when absent or empty; warns outside 15-60 characters (Google truncates around 60) or when a separator-delimited segment such as the brand name is repeated within the same title.
Fixing it: Improves the strongest on-page relevance signal and the line people click.
Meta description
meta_descriptionPresence, uniqueness and length of <meta name="description">. Fails when absent or empty; warns outside 70-160 characters or when more than one description tag is present. Does not rank, but it is the copy that earns the click.
Fixing it: Raises click-through on the ranking you already have. Does not affect ranking itself.
Heading hierarchy
heading_hierarchyThe h1-h6 outline: how many h1 elements exist, whether any heading is empty, and whether the document skips a level (an h2 followed directly by an h4). Zero or multiple h1 elements and skipped levels both make the page outline ambiguous to crawlers and screen readers.
Fixing it: Gives crawlers and screen readers an unambiguous outline of what the page covers.
H1 and title alignment
h1_title_alignmentOverlap between the meaningful terms in <title> and in the first <h1>, as a fraction of the smaller term set. At or above 0.5 the two describe the same topic; at or above 0.25 they are loosely related; below that the search result promises one thing and the page delivers another. Reports not_measurable when either element is missing or empty.
Fixing it: Makes the search result and the page agree about the topic, reducing bounce.
Server-rendered content
render_dependencyVisible text as a share of the response body, plus inline script share and server-rendered word count. Fails under 60 words alongside a script-heavy document, or below a 2% text ratio; warns below 5%. SEOAST executes no JavaScript, so this measures what a crawler sees before deciding whether to queue a rendered pass.
Fixing it: Puts the content in the first response, where every crawler reads it, instead of behind a render pass that is neither fast nor guaranteed.
Structured data (JSON-LD)
structured_dataEvery <script type="application/ld+json"> block: whether it parses as JSON, whether it declares an @type (walking arrays and @graph), and which types are present. A block that fails to parse is worse than no block at all, because it forfeits rich-result eligibility silently.
Fixing it: Makes the page eligible for rich results. Eligible, not guaranteed — Google decides whether to show them.
Image alt text
image_altShare of <img> elements with no alt attribute at all. An explicit alt="" is counted as a deliberate decorative marker, not a defect. More than 25% of images missing alt fails; a smaller share warns. Reports not_measurable when the page has no images.
Fixing it: Makes images usable by screen readers and eligible for image search.
Internal linking
internal_linkingAnchors classified into same-site, external, same-page fragment, non-navigation (mailto:, tel:, javascript:) and href-less. Fewer than 3 internal links makes the page a crawl dead end. Reports not_measurable when the final URL could not be parsed, since there is no origin to judge "same site" against.
Fixing it: Gives crawlers a path onward from this page and spreads authority through the site.