Checks / Content and readability
Page is empty without JavaScript
AI crawlers do not run JavaScript. The server HTML has almost no text, so the crawler sees an empty page.
js_empty · Content and readability · Error
What triggers it
The HTML a crawler receives for a page holds fewer than 60 words in all (menus and footers included) and at least 3 script tags, and the page is not noindex.
What to change
Server-render or pre-render the page (SSR/SSG), or put the key text in the HTML.
Example
HTML to put in the page:
<main>
<h1>Blue trail running shoes</h1>
<p>Waterproof trail running shoes with free returns for 30 days.</p>
</main>
How to confirm the fix
- Run curl -s <url> | grep -c '<p' (or View Source, not Inspect): the main text must be in the HTML
- Press 'Re-check 1 page': the page reads 'Readable without JavaScript'
How common it is
On a sample, the study measured homepages with under 60 words of text in the HTML sent (the check also needs 3 or more scripts, which the study did not record, so at most this many): 41 of 293 Show HN sites (14%), and 48 of 66 Lovable sites (73%).
Fetched 20 and 21 Oct 2026 as CitedBot, robots.txt obeyed, no JavaScript. Study: Launch crawl 2026-10 (English).
Counted with the check's own rule, leaving out sites that refused the request (HTTP 403): CSV of the counts.
About this check
| Check ID | js_empty |
|---|---|
| Report section | Content and readability |
| Severity | Error |
| How it is decided | Measured: read directly from the page or the server's response. |
| Added | Before 19 Oct 2026 (versions 1 and 2), or a site-wide check with no version date yet |
| Status | Measured in every report |
| Report gives the code | No, the fix is described in words |
Settings by platform
Where the setting lives on a few platforms, from each platform's own help page, read on 27 October 2026. On any other server, apply the fix box above.
Next.js
In Next.js, layouts and pages are Server Components by default: they are rendered to HTML on the server. Fetch data and write the page's text there, and add 'use client' only to the interactive parts. (Next.js help page)
Lovable
Apps created from 13 May 2026 (22 June 2026 on Enterprise plans) use TanStack Start and return fully rendered HTML on every request. Older React + Vite apps are pre-rendered only for verified crawlers (search engines, AI search crawlers, social-preview bots, verified SEO tools); any other bot sees the single-page app. Lovable's migration moves an older app to server rendering. (Lovable help page)
In Lovable: Project settings → General → Project actions → Migrate to TanStack Start. (Lovable help page)
Related checks
- The page opens with source and date lines
- Very little text compared with code
- Duplicate or near-duplicate content
- Scripts change or remove what the page says
See whether it applies to your site
Paste your address and we crawl up to 10 pages and show every issue we find, with its fix. No account, no card.
Every plan crawls up to its page limit and lists these checks with the fix: plans.
How an audit works: method