Catalog/Content required JS rendering (escalated)
SEO issue

JS-dependent content: what it means for SEO

When content only appears after JavaScript runs, crawlers must render it to see it. Learn what JS-dependent rendering means for SEO and indexing.

59
audited sites affected

What it means

Googlebot's Web Rendering Service sees your page without the JavaScript that generates or reveals content. The crawler waits for JS to execute, but if the content only appears after rendering, the raw HTML it first sees is missing that content.

Why it matters

Googlebot does not scroll or click, so content behind interactions stays invisible in the raw HTML. If the rendered HTML lacks the content, indexing drops it, and AI agents reading the page miss it too. This matters more for Bing, which has weaker JS rendering than Google.

How to fix it

  1. Ensure headings, body copy, and meta tags exist in the initial HTML via SSR or SSG.
  2. Avoid lazy-loading primary content that sits above the fold.
  3. Verify with URL Inspection → Rendered HTML that the content is present after rendering.

Example

Before — HTML
<!-- initial HTML: skeleton only; Crawlinx had to run JS to read the page -->
<div id="app">Loading...</div>
<script src="/app.js"></script>
After — HTML
<!-- SSR: meaningful content present before JS executes -->
<div id="app">
  <h1>Product name</h1>
  <p>Description, price, specs...</p>
</div>
<script src="/app.js"></script>

This is a milder signal than js_shell — content does exist, but only after rendering. Server-render or prerender to make it robust for deferred/limited crawlers.

When it's not a problem

If the rendered HTML actually contains the content, this notice is harmless. It is only a problem when the final rendered HTML is missing content you want indexed.

How Crawlinx detects it

This fires when Crawlinx had to escalate to a full JS render to extract the page's content — the raw HTTP response alone wasn't sufficient. The escalation reason is included in the finding.

How common is it?

59 audited sites in our corpus currently show this issue. The breakdowns below show which platforms, gatekeepers, verticals and countries are most exposed.

FAQ

What does JS-dependent mean here?
Crawlinx couldn't read meaningful content from the raw HTML and had to run JavaScript (as Googlebot's second wave does) to see the page. The content exists, but a non-rendering client wouldn't see it.
How is this different from a JS shell?
A JS shell (rendering.js_shell) has essentially no content or links in the raw HTML at all. js_dependent is broader: the page needed rendering to be fully read, even if some content was present.
Should I worry if Google renders JS anyway?
Google usually will, on a delay. But AI crawlers, social scrapers and Google's first wave benefit from server-rendered HTML. If discovery speed or AI citations matter, prerender.

Related guides

Breakdowns

WordPress

View breakdown →

Category

View breakdown →

Related
Catalog Category WordPress Content only rendered by JavaScript (invisible to non-JS crawlers & AI) Blocked by robots.txt robots.txt blocks CSS/JS the pages need to render robots.txt missing (root returns 404/none)

Audit your own site — free

157 checks, internal PageRank, render-diff. No signup, results in ~30s.

Scan your site →