Guides
Writing for the web assistants read.
Editorial guides for teams improving AI discoverability, technical SEO, security headers, and edge delivery.
- AI website launch checklistLatestMay 7, 2026 · 2 min · launch readiness / AI readiness
A practical launch checklist for AI-built websites covering crawlability, metadata, security headers, performance, and fix prompts.
- TanStack Start launch readiness checklistMay 7, 2026 · 1 min · TanStack Start / Cloudflare Workers
A TanStack Start and Cloudflare Workers checklist for SSR metadata, canonicals, headers, caching, markdown variants, and scans.
- Technical SEO checker for AI-built sitesMay 7, 2026 · 1 min · technical SEO / AI-built websites
How to verify AI-built websites for crawlability, canonicals, metadata, robots policy, sitemap health, and launch-safe previews.
- The /.well-known directory as an AI discovery surfaceApr 29, 2026 · 5 min · .well-known / MCP
AI agents are starting to look in /.well-known for service capabilities, security contacts, and OAuth metadata. Here's what to publish and why.
- Agent Skills for audit remediationApr 24, 2026 · 4 min · Agent Skills / remediation
Turn recurring audit fixes into scoped instructions that coding agents can execute reliably.
- AI crawler readiness checklistApr 24, 2026 · 4 min · AI crawlers / robots.txt
A field checklist for robots.txt, sitemaps, metadata, and content surfaces that AI crawlers can evaluate.
- AI readiness audit templateApr 24, 2026 · 4 min · audit / AI readiness
A repeatable template for evaluating machine-readable surfaces, crawler policy, and remediation priority.
- SEO surfaces on Cloudflare WorkersApr 24, 2026 · 4 min · Cloudflare / Workers
How edge headers, static assets, and Worker-rendered HTML should align for technical SEO.
- GPTBot, ClaudeBot, and Google-Extended in robots.txtApr 24, 2026 · 4 min · robots.txt / AI policy
How to document AI crawler access policies without blocking the discovery paths you actually want indexed.
- MCP discovery for public websitesApr 24, 2026 · 3 min · MCP / tools
How MCP cards and public context endpoints can make web tools easier for agents to use.
- AEO vs GEO vs SEOApr 23, 2026 · 3 min · AEO / GEO
Where answer, generative, and search optimization overlap, and where technical implementation differs.
- The practical llms.txt guide for production sitesApr 23, 2026 · 3 min · llms.txt / AI readiness
How to scope, link, and maintain an llms.txt file that helps AI assistants inspect the right surfaces first.
- llms.txt vs sitemap.xmlApr 23, 2026 · 3 min · llms.txt / sitemap
How llms.txt and XML sitemaps serve different discovery jobs and why production sites often need both.
- Security headers for AI and SEO trustApr 23, 2026 · 4 min · security headers / CSP
The security header baseline that protects users while making crawler behavior more predictable.
- Structured data for AI visibilityApr 23, 2026 · 4 min · JSON-LD / schema.org
Why Organization, SoftwareApplication, FAQPage, and Article schema still matter in AI-mediated discovery.
- Technical SEO for AI product sitesApr 23, 2026 · 4 min · technical SEO / AI products
The metadata, canonical, and crawl-quality details that make AI product pages easier to classify.
- ai.txt vs llms.txt vs robots.txt — which AI control file to shipApr 22, 2026 · 5 min · llms.txt / ai.txt
Three proposals serve three different jobs. Here's what each one does, who reads it, and the minimum viable set most sites should publish.
- robots.txt syntax errors that silently break crawlingApr 15, 2026 · 6 min · robots.txt / technical SEO
robots.txt errors don't throw. They get silently ignored and the wrong default applies. Here are the seven bugs that cost real ranking before anyone notices.
- sitemap.xml lastmod — why stamping every URL with today hurts youApr 8, 2026 · 5 min · sitemap.xml / technical SEO
Google distrusts sitemaps where every URL claims to have changed today. Here's how to generate an accurate lastmod that actually drives recrawls.
- Heading hierarchy mistakes that break AI parsing and AEOApr 1, 2026 · 6 min · HTML headings / accessibility
AI systems chunk pages by heading nesting. The five hierarchy bugs that fragment your content and cost citation eligibility.
- Open Graph vs Twitter Cards — what you still need in 2026Mar 25, 2026 · 5 min · Open Graph / Twitter Cards
Most sites ship duplicate metadata for marginal benefit. Here's what each format actually does, where they differ, and the minimal set that covers every share surface.
- Meta descriptions in 2026 — what still matters when Google rewrites 70% of themMar 18, 2026 · 5 min · meta description / SEO
Pixel-width truncation rules plus the writing pattern that survives Google's rewriter while feeding AI summaries cleanly.
- Image alt text in 2026 — accessibility, SEO, and what AI actually readsMar 11, 2026 · 6 min · alt text / accessibility
Multimodal models read your images directly now. Bad alt text doesn't just fail screen readers — it contradicts what the AI sees, and that hurts citation.
- Canonical URL pitfalls that quietly fragment your indexingMar 4, 2026 · 6 min · canonical URLs / technical SEO
Trailing slashes, query params, www splits, and mixed protocols. The five canonical bugs that cost ranking and AI citations without an obvious symptom.
- External citation links — why outbound links help your AEOFeb 25, 2026 · 5 min · AEO / GEO
Linking out to primary sources signals expertise to AI systems. The "preserve link equity" advice predates retrieval-augmented generation.
- Answer-first paragraph patterns for AI extractionFeb 18, 2026 · 5 min · AEO / GEO
AI Overviews and Perplexity quote the first sentence after a heading. Bury the answer and you don't get cited. Here's the structure.
- How Google AI Overviews pick the sources they citeFeb 11, 2026 · 6 min · AI Overviews / GEO
AI Overviews don't just cite the top organic results. Here's the retrieval pipeline they actually use and what that means for your content.
- FAQPage JSON-LD — patterns that win AI Overview citationsFeb 4, 2026 · 5 min · JSON-LD / FAQPage
Google killed the FAQ rich result for most sites in 2023, but FAQPage schema still feeds AI Overviews and Perplexity citations. Here's what to ship.
- TTFB on Cloudflare Workers — measurable targets and the regressions that biteJan 28, 2026 · 5 min · TTFB / Cloudflare Workers
Workers deliver sub-50ms TTFB at the edge when you stay on the cache path. Origin fetches and cold KV reads blow that up. Here's where to look first.
- AI bot user-agent reference (2026)Jan 21, 2026 · 6 min · AI crawlers / robots.txt
Every documented AI crawler in one table — exact user-agent strings, operator, purpose, and whether it respects robots.txt.
- Core Web Vitals 2026 — LCP, CLS, INP, and what "good" means nowJan 14, 2026 · 5 min · Core Web Vitals / performance
INP replaced FID in March 2024. Here are the current Core Web Vitals thresholds, what they actually measure, and the practical work that moves the needle.
- CCBot and Common Crawl — the upstream of most AI training dataJan 7, 2026 · 4 min · CCBot / Common Crawl
Most LLMs trained on the web pulled from Common Crawl first. Here's what CCBot does, why it's the most leveraged opt-out, and the exact robots.txt syntax.
- Applebot-Extended — opt out of Apple Intelligence training without losing SiriDec 17, 2025 · 5 min · Applebot / Apple Intelligence
Apple split AI training away from product indexing in 2024. Here's how the two tokens work and the exact robots.txt to permit one without the other.
- Content Security Policy rollout without breaking the siteDec 10, 2025 · 5 min · CSP / security headers
Most CSP advice picks one of two failure modes. Here's the report-only-first, hash-or-nonce, strict-dynamic path that ships a real CSP without midnight rollbacks.
- Bytespider — what ByteDance's crawler does and why most sites block itDec 3, 2025 · 4 min · Bytespider / robots.txt
Bytespider drives massive crawl volume to feed TikTok and Doubao. The discoverability return for most Western sites is near zero. Here's how to decide.
- HSTS preload list — when submission is worth the lock-inNov 19, 2025 · 5 min · HSTS / security headers
Preloading bakes HSTS into every major browser, but it's effectively permanent. Here are the requirements, the risks, and when to skip it.
- PerplexityBot — allow, block, or distrustNov 12, 2025 · 4 min · PerplexityBot / robots.txt
What PerplexityBot crawls, the controversy over robots.txt compliance, and how to express your policy without ambiguity.
- dateModified vs datePublished — the freshness signal AI actually readsNov 5, 2025 · 5 min · JSON-LD / schema.org
AI Overviews and Perplexity weight dateModified for ranking freshness. Here's the distinction, the failure modes, and the right update discipline.
- CLS root causes — the five layout shifts that fail Core Web VitalsOct 22, 2025 · 5 min · CLS / Core Web Vitals
Fonts, images, ads, cookie banners, and async widgets are the usual suspects. Here's how to catch each before it ships.
- GPTBot in robots.txt — allow, block, or rate-limitOct 8, 2025 · 4 min · GPTBot / robots.txt
What GPTBot actually crawls, what blocking costs you in ChatGPT discoverability, and the exact robots.txt syntax for each policy.