Skip to content

About VitalsLens

VitalsLens is a free tool that scores any URL on two axes simultaneously: Core Web Vitals performance (real Chrome user data from CrUX) and LLM-citation-readiness (the 10-characteristic checklist that determines whether ChatGPT, Claude, Perplexity, and Gemini will cite your site).

Until 2024, optimizing for Google was the whole job. In 2026, a meaningful slice of new traffic originates from an LLM citation, not from a Google SERP. A site that ranks #1 on Google but is invisible to LLMs loses 30-60% of available traffic. A site that's LLM-cited but slow loses the click-through. VitalsLens scores both axes in one scan so you see the full picture.

The Lens-family

VitalsLens is part of the Lens-family — a small collection of focused data-lens tools by Paulo de Vries. Sister tool: HoldLens (finance/investing data lens — what hedge funds are buying, scored by conviction). Same brand discipline, same dual-axis instinct, different domain.

How both axes work

Axis 1 (Performance)reads from Google's official Chrome UX Report API. CrUX aggregates anonymized real-user measurements from the last 28 days of Chrome traffic — billions of pageviews per month. Mobile + desktop split. Lab tools like Lighthouse are great for debugging, but a page that's fast on your laptop can be slow for real users on flaky mobile networks. CrUX closes that gap.

Axis 2 (Citation-readiness) implements the 10-characteristic checklist popularized by Aleyda Solis: Accessible · Useful · Recognizable · Extractable · Consistent · Corroborated · Credible · Differentiated · Fresh · Transactable. We fetch the URL server-side as a GPTBot/PerplexityBot would (no JS execution), parse the static HTML, and score each dimension 0.0 — 1.0. The /methodology page documents each score.

How we make money (and why we don't right now)

VitalsLens is 100% free until November 2026. No paid tier during the launch window — every feature is unlocked for everyone. Free single-scans are partially offset by display advertising (Google AdSense) on the result pages, but the audit is the product and the audit is free.

After November 2026, Pro fleet monitoring launches at €19/mo — for agencies and multi-site operators who want weekly automated re-audits across up to 50 URLs with diff alerts. Single-scan audits + the embeddable widget stay free forever. Waitlist signups keep a free locked-in launch window even after Pro activates. No email capture, no dark patterns, no affiliate links on result pages.

Coverage

Axis 1 (CrUX) covers any origin with enough Chrome traffic to anonymize (roughly: more than a few hundred weekly users). Very small or very-new sites won't have CrUX data — that's expected. Axis 2 (GEO) works for any URL that returns HTML to a server-side fetch.

Glossary

Quick reference for the terms used across the site. Sourced from Google's Web.dev documentation and Chrome UX Report docs. The full version with stable per-term anchor links lives at /glossary.

Largest Contentful Paint (LCP)
A Core Web Vital that measures the render time of the largest visible content element in the viewport. Good: under 2.5s at p75. Poor: over 4.0s.
Interaction to Next Paint (INP)
A Core Web Vital that measures the latency from user input to the next paint, across all interactions on a page. Good: under 200ms at p75. Poor: over 500ms. Replaced FID in March 2024.
Cumulative Layout Shift (CLS)
A Core Web Vital that measures the sum of unexpected layout shifts during the lifespan of a page. Good: under 0.1 at p75. Poor: over 0.25.
First Contentful Paint (FCP)
A diagnostic metric that measures the time from page load to when any content (text, image, canvas) first renders. Not a Core Web Vital but commonly reported alongside.
Time to First Byte (TTFB)
A diagnostic metric that measures the time between request and the first byte of response. Heavily influenced by server response time and network latency.
Chrome UX Report (CrUX)
A public dataset of real-user (field) performance data from Chrome browsers worldwide, aggregated at the origin level on a 28-day rolling window. The official source for Core Web Vitals measurement.
p75
75th percentile — the value at which 75% of measurements fall below. Core Web Vitals are evaluated at p75 so the score reflects the experience of three-quarters of users (excluding the slowest 25%).

Who runs this

VitalsLens is built and maintained by Paulo de Vries, a solo founder also building HoldLens in the same Lens-family. Bug reports, dataset corrections, and feature requests all reach a real person at the address below.

Our view

Our view: the web is splitting into two visibility tracks — humans who arrive via Google search, and humans who arrive after their LLM cited a source. The two tracks share some signals (extractable HTML, schema markup, credible authorship) and diverge on others (PageSpeed cares about LCP; ChatGPT cares about Recognizable schema). Optimizing for only one leaves the other half of available traffic on the table. VitalsLens makes both visible so you can prioritize honestly.

Contact

Questions, corrections, removal requests: see the contact page.