RESEARCH

The State of SaaS Landing Pages: 675 Pages Measured

Published 25 July 2026 · Updated 25 July 2026

We crawled 800 YC-backed B2B SaaS landing pages and scored the 675 that returned readable HTML. The most common failure is absence, not bad writing: 30.7% have no call to action anywhere in the page body, 84.6% never state a price, and only 2.8% state a price, show social proof and lead with a single CTA.

METHOD

Sample size 675 · collected 25 July 2026 · download the raw CSV

Most advice about landing pages is about wording. We wanted to know what is actually on the page, so we crawled 800 landing pages belonging to YC-backed B2B SaaS companies and scored the 675 that returned readable HTML.

The result was not what we expected. The dominant problem is not weak copy or poor design. It is things that are simply not there — no price, no proof, no ask.

The headline numbers

Every figure below is the share of the 675 scored pages, unless a different n is given. Two of the metrics we originally planned are missing on purpose; the What we did not measure section explains why.

MeasureResultn
No call to action anywhere in the page body30.7% (207)675
Never state a price84.6% (571)675
No social proof of any kind57.8% (390)675
No form field at all65.8% (444)675
One single primary call to action40.7% (275)675
At least one image missing alt text70.5% (476)675
Missing an h18.1% (55)675
Missing a viewport meta tag0.1% (1)675
Headline longer than ten words7.1% (44)620

And the distributions:

Measurep25Medianp75Maxn
Word count4587591,21812,115675
Words before the first in-body CTA21341017,680464
Distinct CTA labels0125675
Total CTA elements02320675
Reading grade (Flesch–Kincaid)8.310.412.524.9595
Form fields00172675
Images missing alt0634.5267675

Finding 1: nearly a third of pages never ask for anything

207 of 675 pages (30.7%) have no call to action in the body of the page at all.

That number needs a precise definition, because the obvious version of this measurement is wrong. We excluded nav, header, footer and their ARIA equivalents before looking for CTAs. Almost every SaaS site has a "Get started" button pinned in its navigation bar, so counting that measures the existence of a header, not the intent of the page. When we made that mistake in a pilot run, the median copy length before the "first CTA" was about 9 words — we were measuring the navbar on every single site.

With the chrome removed, 30.7% of pages make no ask. A visitor who reads the whole thing and wants to act has nothing to click except the same nav button that was there when they arrived.

Of the 468 pages that do have an in-body CTA, only 275 (58.8%) lead with a single primary action. The rest offer competing options — "Start free trial", "Book a demo", "Talk to sales", "Read the docs" — and the maximum we recorded was five distinct CTA labels on one page.

Finding 2: 84.6% never say what it costs

Only 104 of 675 pages (15.4%) state a price anywhere on the page.

This is the single largest gap in the dataset. It is also the one with the clearest cost: a visitor evaluating three tools cannot compare yours if the number is behind a form. Among pages that had a CTA at all, price disclosure was barely better — 85 of 468, or 18.2%.

We are not claiming every company should publish a price list. Enterprise sales motions have real reasons to qualify first. But 84.6% is far too high to be explained by deliberate strategy across a population of early-stage startups, and "contact us for pricing" on a self-serve product is friction with no upside.

Finding 3: proof exists, but arrives too late

285 pages (42.2%) have some form of social proof — logos, testimonials, customer counts, review scores. Only 78 pages (11.6%) place any of it before the first call to action.

Put differently: of the pages that went to the trouble of collecting proof, 72.6% put it after they had already asked for the click. The visitor is asked to commit, and only then shown the reason to trust the ask.

This is the cheapest fix in the entire dataset. The asset already exists on the page. It is in the wrong order.

Finding 4: two thirds of pages cannot capture a lead

444 pages (65.8%) contain no form field whatsoever. The median form field count across the whole sample is zero.

Some of these legitimately hand off to an app signup on another domain. But combined with Finding 1 — nearly a third have no in-body CTA — the picture is a large population of pages that inform and then stop.

At the other extreme, the longest form we found had 72 fields.

Finding 5: the writing is pitched at college level

Median reading grade 10.4 (Flesch–Kincaid, n=595). The upper quartile sits at 12.5, and 178 of the 595 scored pages read at grade 12 or above — roughly the level of a broadsheet leader column, aimed at buyers skim-reading on a phone between meetings.

The n here is 595 rather than 675 because we only score readability on genuine prose: at least 100 words, at least 5 sentences, and no more than 40 words per sentence. Landing pages are full of headings and button labels with no sentence terminators, and feeding those to Flesch–Kincaid produces impossible grades — an early version of this scorer reported a median grade of 20.5 and a maximum of 54.7 before we added those guards. Pages that do not clear the bar are reported as unscored, not as zero.

Finding 6: accessibility is an afterthought

476 pages (70.5%) have at least one image missing alt text. Of the 653 pages that use images at all, only 177 (27.1%) have alt text on every one. The median page is missing 6; the worst is missing 267.

By contrast, 99.9% (674 of 675) have a viewport meta tag — the one mobile signal that a framework sets for you by default. Where the tooling handles it, compliance is essentially universal. Where a human has to type something, it is missing on seven pages in ten.

The composite: 2.8%

Take the three basics that almost every conversion guide agrees on — state a price, show proof, lead with one clear action.

19 pages out of 675 do all three. That is 2.8%.

That is the finding we would put in front of a founder. The bar is not high, and almost nobody clears it.

Method

  • Sampling frame: the Y Combinator public company directory (via the yc-oss mirror), filtered to companies marked Active with a B2B or SaaS classification.
  • Sample: seeded shuffle, seed = 20260725, so the sample is reproducible. 800 pages attempted, 675 scored.
  • Collected: 25 July 2026, 09:58–10:01 UTC.
  • Crawler: robots.txt honoured via robots-parser; identifying user agent (LeadzLanderResearchBot/0.1); bounded concurrency; every failure recorded with a typed reason rather than silently dropped.
  • Scorer: static HTML only, parsed with cheerio. Our own rubric, mirroring the conversion heuristics in the LeadzLander generation engine.
  • Cost: $0 in API spend. This study buys no third-party data.

Both the crawler and the scorer are in the repository, and the summary file containing every aggregate — including the failure ledger — is published alongside the CSV.

Why 125 pages were excluded

Pages that could not be fetched or contained no readable content are reported as disclosed failures. They are never scored as zeros: a scored empty page drags every median in the study toward zero, which would have made our numbers look worse than reality rather than more honest.

ReasonPages
JavaScript-rendered shell (no server-rendered content)83
Network error13
HTTP 4038
Body too small to score (under 50 words)7
HTTP 429 (rate limited)5
HTTP 4044
Disallowed by robots.txt2
HTTP 402, 503, 5261 each
Total excluded125

The bias this creates

The 83 JavaScript-shell exclusions are not random. They are systematically the most JavaScript-heavy sites in the frame, so the scored sample skews toward server-rendered pages. If heavily client-rendered sites differ in their conversion structure, this study will not detect it. We think this most plausibly understates problems like missing alt text, since single-page applications tend to be worse on that dimension, but we have not measured it and we are not claiming it.

What we did not measure

Two metrics we originally planned are absent, and we want to be explicit rather than quietly substitute a proxy:

  1. Whether the primary CTA sits below the fold. "The fold" is a rendered-viewport fact. Static HTML has no layout engine, so this is not measurable with the tooling used here.
  2. Whether the page breaks at 390px. Same reason.

We do publish words before the first in-body CTA (median 34). That is document-order copy length, and it is not a claim about the fold — a page with 34 words before its CTA may still render that CTA off-screen depending on type size, hero imagery and viewport. Anyone quoting this dataset should not relabel it as a viewport measurement, and neither will we.

Both metrics need a headless-browser pass at a real viewport size. That is the planned follow-up, and it will be published as a separate, dated study rather than retrofitted into this one.

Get the data

The full per-page dataset is free to download, free to cite, and free to check our work with:

Every number in this article is reproducible from those two files. If you find an error in our method, we would rather hear about it than not — the point of publishing the raw rows is that you do not have to take our word for any of this.

How to cite

LeadzLander (2026). The State of SaaS Landing Pages: 675 Pages Measured. Sample: 675 YC-backed B2B SaaS landing pages, collected 25 July 2026. https://www.leadzlander.com/research/state-of-saas-landing-pages