How to v1.0, updated 2026-07-07

Why AI cannot see content behind JavaScript

Non-rendering crawlers get the shell, not the content, and how to fix it.

Most AI answer crawlers do not run JavaScript. GPTBot, ClaudeBot, PerplexityBot and Common Crawl fetch the raw HTML your server sends and read that. If your content is injected by JavaScript after the page loads, into tabs, accordions, lazy sections or a client rendered app, those crawlers get an empty shell.

A browser hides this from you because it runs the JavaScript and fills the page in. So the page looks complete to you and to Googlebot, which does render, while an AI bot sees almost nothing.

Check it with See as bot in Topkay. It fetches the page as a non rendering AI crawler and as a browser, and shows the two side by side with the missing lines marked.

The fix is to server render the content that matters, or to include it in the initial HTML. Tabs and accordions are fine as long as the text is present in the markup and only hidden with CSS, not loaded on click. If an engine cannot read a passage in the raw HTML, it cannot cite it.

Read next

What is ARMX

Agent Readiness and Machine eXperience: the five things every machine does with your site, and the one score that measures them.

What is answerability

How easily an AI answer engine can find and lift the answer from your page.

SEO, AEO and GEO, the difference

Ranking pages, being the answer, being cited by models. Three jobs, not three names.

All topics
Ask Topkay the analyst×
Ask me anything about your site. I read your twin and the Learn corpus, and cite both. Try a skill below.