§ §notes
← all posts

AEO for engineering teams: making pages readable to AI answer engines

2026-09-20 · 1 min read
AEO eight-check verification pipeline schematic

A landing page can score 0 out of 100 on the design-slop fingerprint and still be completely invisible when a buyer asks an AI assistant to compare tools in your category. Answer Engine Optimization (AEO) measures whether automated research agents can fetch, parse, and cite your canonical content over HTTP.

The eight-check verification circuit

The AEO axis evaluates eight concrete HTTP and HTML signals totaling 100 points (70 required points + 30 recommended bonus points):

  • html.reachable (10 pts, required): verifies that normal browser HTTP fetch returns a 2xx HTML document.
  • bot.notBlocked (25 pts, required): confirms that fetching with the GPTBot User-Agent returns 2xx rather than a WAF challenge or 403 block.
  • robots.aiAllowed (20 pts, required): verifies that robots.txt does not disallow major AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended).
  • html.indexable (15 pts, required): confirms the page does not emit noindex in X-Robots-Tag headers or <meta name="robots">.
  • md.twin (10 pts, recommended): checks for a clean <url>.md markdown twin (or /index.md for the root path) returning text/markdown.
  • html.linkAlternate (8 pts, recommended): checks that HTML advertises the markdown twin via Link: rel="alternate"; type="text/markdown" or <link rel="alternate">.
  • site.llmsTxt (7 pts, recommended): checks for a structured /llms.txt discovery file at the root domain.
  • html.vary (5 pts, recommended): checks that the response sends Vary: Accept for content-negotiation awareness.

Serving markdown twins

Every documentation and blog route on slop-detect.com exposes a direct markdown twin alongside its HTML page. Run npx slop-detect <url> --aeo or POST /api/aeo to audit any URL against all eight checks.

Machine-readable twin: aeo-for-engineering-teams.md