Rules Reference
Complete reference for all 133 audit rules grouped by category. Click a category to view its rules in detail, or navigate using the sidebar.
Severity Levels
| Severity | Description |
|---|---|
| critical | Must fix — blocks indexing or causes major SEO damage |
| high | Should fix — significant negative impact on SEO |
| medium | Recommended — moderate impact, improves rankings |
| low | Nice to have — minor improvements |
| info | Informational — no direct SEO impact |
Categories
On-Page SEO
15 rules
Content
2 rules
Technical SEO
27 rules
Links
6 rules
Performance
12 rules
Structured Data
3 rules
Security
9 rules
Accessibility
5 rules
Social / Open Graph
12 rules
Mobile
2 rules
URL Structure
6 rules
Internationalization
2 rules
E-E-A-T
6 rules
Duplicate Content
3 rules
GEO — AI Search Readiness
23 rules
On-Page SEO (15 rules)
Title tags, meta descriptions, heading hierarchy, image alt text, and content optimization.
title_existscritical — Page has a <title> tagtitle_lengthmedium — Title is between 30-55 characterstitle_multiplehigh — Page has only one title tagmeta_description_existshigh — Page has a meta descriptionmeta_description_lengthmedium — Description is 120-155 charactersmeta_description_multiplemedium — Page has only one meta descriptionh1_counthigh — Page has exactly one H1h1_not_emptyhigh — H1 has non-empty textheading_hierarchymedium — Headings follow proper hierarchyheading_not_emptylow — Headings have non-empty textimages_alt_texthigh — All images have alt attributesimages_alt_descriptivelow — Image alt text is descriptiveimages_dimensionsmedium — Images have width/height attributesimages_modern_formatlow — Images use WebP/AVIF formatimages_lazy_loadinglow — Below-fold images use lazy loading
Content (2 rules)
Word count and text-to-HTML ratio.
content_word_countmedium — Page has sufficient word countcontent_text_html_ratiomedium — Text to HTML ratio is healthy
Technical SEO (27 rules)
Canonical URLs, robots directives, sitemaps, redirects, and HTTP status codes.
canonical_existshigh — Page has a canonical linkcanonical_absolutemedium — Canonical URL is absolutecanonical_self_reflow — Canonical is self-referencingcanonical_conflicthigh — No conflicting canonical tagsmeta_robots_noindexinfo — Page has a noindex directivemeta_robots_conflicthigh — No conflicting robots directiveshttp_status_okcritical — Page returns HTTP 200 statuscrawl_depthmedium — Page crawl depth is reasonablepagination_rel_tagslow — Pagination uses rel=next/prevrobots_txt_existshigh — robots.txt file existsrobots_txt_sizelow — robots.txt is not too largerobots_txt_sitemapmedium — robots.txt references sitemaprobots_txt_syntaxmedium — robots.txt has valid syntaxsitemap_existshigh — Sitemap.xml existssitemap_valid_xmlhigh — Sitemap has valid XMLsitemap_indexinfo — Sitemap index detectedsitemap_sizemedium — Sitemap is within size limitssitemap_freshnesslow — Sitemap URLs have recent lastmodsitemap_coveragemedium — Crawled URLs appear in sitemapsitemap_orphan_urlsmedium — No sitemap-only orphan URLssitemap_broken_urlshigh — No broken URLs in sitemapsitemap_redirect_urlsmedium — No redirect URLs in sitemapsitemap_robots_conflicthigh — No sitemap/robots.txt conflictssitemap_imagelow — Sitemap includes image entriessitemap_videoinfo — Sitemap includes video entriesredirect_chainsmedium — No redirect chains detectedtemporary_redirectslow — Temporary redirects are intentional
Links (6 rules)
Internal linking, external links, and broken link detection.
internal_links_presentmedium — Page has internal linksinternal_links_countlow — Internal link count is reasonableinternal_links_anchor_textlow — Internal links have descriptive anchor textexternal_links_relmedium — External links have rel attributesbroken_internal_linkshigh — No broken internal linksbroken_external_linksmedium — No broken external links
Performance (12 rules)
Page size, response time, compression, and resource optimization.
page_sizemedium — Page size is within limitshtml_sizemedium — HTML document size is reasonablettfbhigh — Time to First Byte is fastcompressionmedium — Response uses compressionjs_file_countmedium — JavaScript file count is reasonablecss_file_countmedium — CSS file count is reasonablerender_blockinghigh — No render-blocking resourcestotal_requestsmedium — Total requests are optimizedcache_headerslow — Cache headers are configuredbroken_scriptshigh — All script files are reachablebroken_stylesheetshigh — All CSS files are reachablebroken_imagesmedium — All images are reachable
Structured Data (3 rules)
JSON-LD, breadcrumbs, and schema.org validation.
jsonld_existsmedium — Page has JSON-LD structured datajsonld_validhigh — JSON-LD is valid JSONjsonld_breadcrumblow — BreadcrumbList schema is present
Security (9 rules)
HTTPS, security headers, and secure configuration.
uses_httpscritical — Page uses HTTPSmixed_contenthigh — No mixed content detectedhsts_headermedium — HSTS header is presentsecurity_xctolow — X-Content-Type-Options headersecurity_xfolow — X-Frame-Options headersecurity_csplow — Content-Security-Policy headersecurity_referrerlow — Referrer-Policy headersecurity_permissionslow — Permissions-Policy headersecurity_server_disclosurelow — Server version not disclosed
Accessibility (5 rules)
Language, viewport, character encoding, and ARIA landmarks.
html_langhigh — HTML has lang attributeviewport_metahigh — Viewport meta tag is presentcharset_metamedium — Character encoding declaredempty_linksmedium — Links have accessible textaria_landmarkslow — Page uses ARIA landmarks
Social / Open Graph (12 rules)
Open Graph tags and Twitter Card metadata.
og_titlemedium — og:title meta tag is presentog_descriptionmedium — og:description meta tag is presentog_imagemedium — og:image meta tag is presentog_urllow — og:url meta tag is presentog_typelow — og:type meta tag is presentog_site_namelow — og:site_name meta tag is presentog_localelow — og:locale meta tag is presenttwitter_cardmedium — twitter:card meta tag is presenttwitter_titlelow — twitter:title meta tag is presenttwitter_descriptionlow — twitter:description meta tag is presenttwitter_imagelow — twitter:image meta tag is presenttwitter_sitelow — twitter:site meta tag is present
Mobile (2 rules)
Viewport configuration for mobile devices.
mobile_viewportcritical — Viewport meta tag existsmobile_viewport_configmedium — Viewport uses device-width config
URL Structure (6 rules)
URL format, length, and special characters.
url_lowercaselow — URL uses lowercaseurl_hyphenslow — URL uses hyphens for separationurl_lengthlow — URL length is reasonableurl_special_charslow — URL has no special charactersurl_double_slashmedium — URL has no double slashesurl_parameterslow — URL parameters are minimal
Internationalization (2 rules)
Hreflang validation for multi-language sites.
hreflang_validmedium — Hreflang tags are validhreflang_x_defaultlow — Hreflang x-default is present
E-E-A-T (6 rules)
Experience, Expertise, Authoritativeness, and Trustworthiness signals.
eeat_authormedium — Content has author attributioneeat_copyrightlow — Page has copyright noticeeeat_about_pagemedium — Site has an About pageeeat_contact_pagemedium — Site has a Contact pageeeat_privacy_policymedium — Site has a Privacy Policyeeat_termslow — Site has Terms of Service
Duplicate Content (3 rules)
Detects duplicate titles, descriptions, and body content across pages.
duplicate_content_bodyhigh — No duplicate body contentduplicate_titlesmedium — No duplicate page titlesduplicate_descriptionsmedium — No duplicate meta descriptions
GEO — AI Search Readiness (23 rules)
Generative Engine Optimization checks for AI crawler access, content citability, and entity authority.
geo_crawler_oai-searchbothigh — OAI-SearchBot is allowedgeo_crawler_perplexitybothigh — PerplexityBot is allowedgeo_crawler_claude-searchbothigh — Claude-SearchBot is allowedgeo_crawler_google-extendedhigh — Google-Extended is allowedgeo_crawler_applebothigh — Applebot is allowedgeo_crawler_block_gptbotlow — GPTBot (training) is blockedgeo_crawler_block_ccbotlow — CCBot (training) is blockedgeo_llms_txt_existsmedium — llms.txt file existsgeo_llms_full_txtlow — llms-full.txt file existsgeo_llms_txt_h1medium — llms.txt has H1 headinggeo_llms_txt_blockquotemedium — llms.txt has blockquote summarygeo_llms_txt_sectionslow — llms.txt has H2 sectionsgeo_llms_txt_linkslow — llms.txt has markdown linksgeo_entity_org_schemahigh — Organization schema is presentgeo_entity_socialmedium — Social profile links are presentgeo_citability_statisticsmedium — Content has citable statisticsgeo_citability_faqlow — FAQ schema is presentgeo_citability_tableslow — Content has data tablesgeo_citability_listslow — Content has structured listsgeo_citability_question_headingsmedium — Content has question-style headingsgeo_ai_descriptive_headingsmedium — Headings are descriptive for AIgeo_ai_freshnessmedium — Content has freshness indicatorsgeo_ai_semantic_htmlmedium — Page uses semantic HTML elements