How to Configure Headless Hosting So Your AEO Actually Works
The three hosting configuration choices that drive almost every AEO gap are rendering strategy, AI crawler access, and schema delivery. Render AEO-critical pages with SSR or ISR, explicitly allow AI crawlers in robots.txt, and emit JSON-LD schema at server render time.
Teams deploy SitecoreAI headless and assume hosting is done. Then a drop in AI-driven traffic surfaces the reality: AI answer engines are not seeing their content. The cause is almost always hosting configuration.
Client-side rendering is invisible to most AI crawlers. They read the initial server response and stop — they do not wait for JavaScript to hydrate and fetch content. If your content arrives after hydration, it does not exist as far as the crawler is concerned.
Server-side rendering (SSR) and incremental static regeneration (ISR) put the content — and the structured data — directly in the HTML response. Set the ISR TTL per route based on how often the content changes; treat it as an AEO freshness signal, not a caching convenience.
FAQ
- Why is CSR bad for AEO?
- AI crawlers read the initial server response and stop. With CSR the initial HTML is an empty shell, so the crawler sees no content and no schema.
- What should ISR TTL be set to?
- Set it per route based on content change frequency. It is your AEO freshness signal — not a global caching default.
- Where must JSON-LD schema live?
- In the server response. Edge-render it at request or build time; never inject it client-side where crawlers will not reliably see it.
Make a headless page AEO-ready
- Pick the rendering strategy: Use SSR or ISR for every AEO-critical route. Never CSR.
- Set ISR TTL deliberately: Choose a revalidate window per route based on content change frequency.
- Allow AI crawlers: Explicitly allow GPTBot, ClaudeBot, and PerplexityBot in robots.txt and at the CDN/WAF.
- Emit schema server-side: Render JSON-LD (Article, FAQ, HowTo, Speakable) into the server response.
- Verify crawler output: Fetch the raw HTML as a bot would and confirm content + schema are present.
Published 2026-01-15 · Updated 2026-06-25