CVR = visible words in the raw fetch / visible words in the rendered page. Scripts, styles, nav and boilerplate are stripped before counting. A commercial page should clear 0.85.
Word counts and the verdict appear here.
What the Content Visibility Ratio measures
A page that looks perfect in Chrome can arrive at an AI crawler as an empty container. The Content Visibility Ratio quantifies the gap: the visible body text a non-rendering bot receives divided by the visible text a human sees after the JavaScript runs. A fully server-rendered page sits near 1.0; a pure client-rendered single-page app sits near 0.0. Most real sites are hybrids, and the commercial pages are usually the low scorers.
How to use it
- Fetch the page with a bot user agent (curl -A GPTBot ...) or open View Source, and paste that into the raw box.
- Open the live page in a browser, and paste the rendered DOM or the visible text into the rendered box.
- Read the ratio: 0.85 and above is safe, 0.5 to 0.85 is a hybrid at risk, below 0.5 means the bot sees almost nothing.
- Repeat for your pricing, product and comparison pages, and weight the site score by commercial value, not page count.
What is a good Content Visibility Ratio?
Treat 0.85 as the floor for any page that carries commercial weight. A fully server-rendered page scores near 1.0 and a pure client-rendered app near 0.0. The dangerous zone is the hybrid middle: a marketing shell that scores 0.9 while the pricing widget inside it scores 0.06.
Why compare raw fetch against rendered instead of just checking the page?
Because the whole problem is that the two differ. Nine of twelve major AI crawlers run no JavaScript, so they only ever see the raw fetch. Checking the page in your browser shows you the rendered version, which is exactly the view the bot does not get.
How do I get the raw (non-browser) version of my page?
Run curl with a crawler user agent, for example curl -A "Mozilla/5.0 (compatible; GPTBot/1.4; +https://openai.com/gptbot)" -s https://example.com/pricing, or open View Source (not Inspect) in your browser, which shows the initial HTML before scripts run.
Does my data leave the browser?
No. The text you paste is counted entirely in your browser. Nothing is uploaded, stored or sent to any server.