Skip to main content
The [rules] section controls which audit rules run during analysis.

Configuration

[rules]
enable = ["*"]
disable = ["ai/*", "content/quality"]

Options

enable

Type: string[] Default: ["*"] (all rules) Patterns of rules to enable. Supports wildcards and specific rule IDs. Pattern Syntax:
  • * - All rules
  • category/* - All rules in a category
  • category/rule-name - Specific rule
Examples: Enable all rules (default):
[rules]
enable = ["*"]
Enable specific categories:
[rules]
enable = ["core/*", "links/*", "images/*"]
Enable specific rules:
[rules]
enable = ["core/meta-title", "core/meta-description", "links/broken-links"]

disable

Type: string[] Default: ["ai/ai-content", "ai/llm-parsability", "content/quality"] Patterns of rules to disable. Takes precedence over enable. If a rule matches both enable and disable, it’s disabled. Examples: Disable AI rules (default):
[rules]
disable = ["ai/*"]
Disable slow rules:
[rules]
disable = ["ai/*", "content/quality", "perf/*"]
Disable specific rules:
[rules]
disable = ["content/word-count", "images/modern-format"]

Rule Categories

All 18 audit rule categories:

Core SEO

ID: core/* Rules: 11 Description: Essential SEO elements Meta tags, titles, canonical URLs, Open Graph, Twitter Cards, favicons, robots meta tags. Enable:
[rules]
enable = ["core/*"]
disable = []
Common rules:
  • core/meta-title - Title tag presence and length
  • core/meta-description - Meta description presence and length
  • core/canonical - Canonical URL configuration
  • core/h1 - H1 tag presence and uniqueness
  • core/og-tags - Open Graph tags
  • core/twitter-cards - Twitter Card tags

Content Quality

ID: content/* Rules: 11 Description: Content analysis and quality checks Word count, heading hierarchy, duplicates, freshness, broken HTML. Enable:
[rules]
enable = ["content/*"]
Common rules:
  • content/word-count - Minimum word count
  • content/heading-hierarchy - Proper heading structure (H1 → H2 → H3)
  • content/duplicate-title - Duplicate title tags across pages
  • content/duplicate-description - Duplicate meta descriptions
  • content/keyword-stuffing - Excessive keyword repetition
  • content/broken-html - HTML parsing errors

ID: links/* Rules: 12 Description: Internal and external link analysis Broken links, redirects, orphan pages, anchor text. Enable:
[rules]
enable = ["links/*"]
Common rules:
  • links/broken-links - 404 internal links
  • links/broken-external-links - 404 external links
  • links/redirect-chains - Multiple redirects
  • links/orphan-pages - Pages with no incoming links
  • links/nofollow-internal - Internal links with nofollow
  • links/https-downgrade - HTTPS to HTTP downgrades

Images

ID: images/* Rules: 10 Description: Image optimization and accessibility Alt text, dimensions, formats, lazy loading, file sizes. Enable:
[rules]
enable = ["images/*"]
Common rules:
  • images/alt-text - Missing alt attributes
  • images/dimensions - Missing width/height attributes
  • images/modern-format - WebP/AVIF format suggestions
  • images/lazy-loading - Lazy loading implementation
  • images/image-file-size - Large image file sizes

Schema (Structured Data)

ID: schema/* Rules: 10 Description: JSON-LD and structured data validation Article, Product, LocalBusiness, FAQ, Breadcrumb, Organization schemas. Enable:
[rules]
enable = ["schema/*"]
Common rules:
  • schema/json-ld-valid - Valid JSON-LD syntax
  • schema/article - Article schema validation
  • schema/product - Product schema validation
  • schema/breadcrumb - Breadcrumb schema
  • schema/organization - Organization schema

Security

ID: security/* Rules: 9 Description: Security headers and HTTPS HTTPS, HSTS, CSP, X-Frame-Options, mixed content. Enable:
[rules]
enable = ["security/*"]
Common rules:
  • security/https - HTTPS usage
  • security/hsts - HSTS header presence
  • security/csp - Content Security Policy
  • security/mixed-content - Mixed HTTP/HTTPS content
  • security/x-frame-options - Clickjacking protection

Accessibility

ID: a11y/* Rules: 12 Description: Web accessibility (WCAG) ARIA labels, color contrast, keyboard navigation, screen readers. Enable:
[rules]
enable = ["a11y/*"]
Common rules:
  • a11y/skip-link - Skip navigation link
  • a11y/aria-labels - Proper ARIA attributes
  • a11y/form-labels - Form label associations
  • a11y/color-contrast - Sufficient color contrast
  • a11y/link-text - Descriptive link text

Internationalization

ID: i18n/* Rules: 2 Description: Multi-language support Lang attributes, hreflang tags. Enable:
[rules]
enable = ["i18n/*"]
Rules:
  • i18n/lang-attribute - HTML lang attribute
  • i18n/hreflang - Hreflang alternate links

Performance

ID: perf/* Rules: 9 Description: Core Web Vitals and performance hints LCP, CLS, INP hints, font loading, preconnect. Enable:
[rules]
enable = ["perf/*"]
Common rules:
  • perf/lcp-hints - Largest Contentful Paint optimization
  • perf/cls-hints - Cumulative Layout Shift hints
  • perf/font-loading - Font loading strategies
  • perf/render-blocking - Render-blocking resources

Social Media

ID: social/* Rules: 4 Description: Social media optimization Open Graph images, URL matching, social profiles. Enable:
[rules]
enable = ["social/*"]
Rules:
  • social/og-image-size - Open Graph image dimensions
  • social/og-url-match - OG URL matches canonical
  • social/social-profiles - Social profile links
  • social/share-buttons - Social sharing buttons

Crawlability

ID: crawl/* Rules: 15 Description: Search engine crawlability Robots.txt, sitemaps, indexability, canonical chains. Enable:
[rules]
enable = ["crawl/*"]
Common rules:
  • crawl/robots-txt - Robots.txt existence and validity
  • crawl/sitemap-exists - XML sitemap presence
  • crawl/sitemap-valid - Sitemap XML validity
  • crawl/indexability - Indexable pages
  • crawl/canonical-chain - Canonical chain detection

URL Structure

ID: url/* Rules: 8 Description: URL formatting and best practices Length, keywords, hyphens, parameters. Enable:
[rules]
enable = ["url/*"]
Common rules:
  • url/length - URL length limits
  • url/slug-keywords - Descriptive URL slugs
  • url/hyphens - Hyphen usage (not underscores)
  • url/parameters - Query parameter best practices

Mobile Optimization

ID: mobile/* Rules: 6 Description: Mobile-friendly design Viewport meta tag, tap targets, font sizes. Enable:
[rules]
enable = ["mobile/*"]
Common rules:
  • mobile/viewport - Viewport meta tag
  • mobile/tap-targets - Touch target sizing
  • mobile/font-size - Readable font sizes

ID: legal/* Rules: 3 Description: Legal requirements Privacy policy, cookie consent, terms of service. Enable:
[rules]
enable = ["legal/*"]
Rules:
  • legal/privacy-policy - Privacy policy page
  • legal/cookie-consent - Cookie consent mechanism
  • legal/terms-of-service - Terms of service page

Local SEO

ID: local/* Rules: 3 Description: Local business optimization NAP consistency, geo meta tags, service areas. Enable:
[rules]
enable = ["local/*"]
Rules:
  • local/nap-consistency - Name, address, phone consistency
  • local/geo-meta - Geographic meta tags
  • local/service-area - Service area markup

Video Optimization

ID: video/* Rules: 3 Description: Video content optimization Video schema, thumbnails, accessibility. Enable:
[rules]
enable = ["video/*"]
Rules:
  • video/video-schema - VideoObject schema
  • video/video-thumbnail - Video thumbnail presence
  • video/video-accessible - Video accessibility features

Analytics

ID: analytics/* Rules: 2 Description: Analytics and tracking Google Tag Manager, consent mode. Enable:
[rules]
enable = ["analytics/*"]
Rules:
  • analytics/gtm-present - Google Tag Manager
  • analytics/consent-mode - Google Consent Mode v2

E-E-A-T (Expertise, Authoritativeness, Trustworthiness)

ID: eeat/* Rules: 14 Description: Trust and authority signals Author info, citations, about page, editorial policy. Enable:
[rules]
enable = ["eeat/*"]
Common rules:
  • eeat/author-byline - Author attribution
  • eeat/content-dates - Content dates
  • eeat/citations - External citations
  • eeat/about-page - About page presence
  • eeat/contact-page - Contact information

AI & LLM

ID: ai/* Rules: 2 Description: AI-powered analysis (requires LLM) DISABLED BY DEFAULT - Requires OpenRouter API key. AI content detection, LLM parsability. Enable:
[rules]
enable = ["*"]
disable = []  # Remove ai/* from disable list
Rules:
  • ai/ai-content - AI-generated content detection
  • ai/llm-parsability - LLM-friendly structure
Note: Requires OPENROUTER_API_KEY environment variable.

Adblock Detection

ID: adblock/* Rules: 2 Description: Adblock filter impact Element hiding, blocked tracking domains. Enable:
[rules]
enable = ["adblock/*"]
Rules:
  • adblock/element-hiding - Elements hidden by adblockers
  • adblock/blocked-links - Links to blocked domains

Configuration Examples

SEO-Focused Audit

Focus on SEO rules only:
[rules]
enable = ["core/*", "content/*", "crawl/*", "url/*", "schema/*"]
disable = []

Accessibility Audit

Focus on accessibility and mobile:
[rules]
enable = ["a11y/*", "mobile/*"]
disable = []

Performance Audit

Focus on performance and images:
[rules]
enable = ["perf/*", "images/*"]
disable = []

Security Audit

Focus on security headers and HTTPS:
[rules]
enable = ["security/*"]
disable = []

All Rules Except AI

Enable everything except AI-powered rules:
[rules]
enable = ["*"]
disable = ["ai/*"]

Fast Audit (Core Only)

Quick audit with just essential checks:
[rules]
enable = ["core/*"]
disable = []

Disable Slow Rules

Exclude computationally expensive rules:
[rules]
enable = ["*"]
disable = ["ai/*", "content/quality", "perf/cls-hints"]

CI/CD Pipeline

Strict subset for automated checks:
[rules]
enable = ["core/*", "security/*", "links/broken-links"]
disable = []

Pattern Matching

Wildcards

[rules]
enable = ["core/*"]      # All core rules
disable = ["core/og-*"]  # Disable all OG rules

Multiple Patterns

[rules]
enable = ["core/*", "links/*", "images/*"]
disable = ["images/modern-format", "links/orphan-pages"]

Disable Takes Precedence

[rules]
enable = ["*"]           # Enable all
disable = ["ai/*"]       # But disable AI (wins)
Result: All rules except AI category.

Rule Weights

Each rule has a weight (1-10) reflecting its importance:
WeightImportanceExample Rules
10Criticalcore/meta-title, crawl/robots-txt
8Highcore/canonical, links/broken-links
6Mediumimages/alt-text, content/word-count
4Lowurl/hyphens, social/share-buttons
2Infoanalytics/gtm-present
Weights affect the health score calculation.