saas · Aug 9, 2026

stainless.com

20/100 Sparse

Scores higher than 9% of 1,391 multi-step funnels we have measured. Among the 1,074 saas funnels in that group, higher than 4%.

How this was measured

Measured by Roentgen 1.20.1 on 2026-08-09. A capture is read once and its measurements freeze there, so the stamp says which ruleset read this one.

Coverage is detection coverage, not a verdict — it counts the conversion tactics we could prove are present, out of the 11 that apply to a saas funnel. Per device: desktop 20 · mobile 20.

Walk 83 links on the entry page, 58 walkable. 2 matched a funnel step; we captured 3 pages in all, this one included.

Captured Homepage / Lander
Step 1 · Homepage / Lander1 / 3

What we recorded

The funnel, frame by frame

3 steps walked

see their whole funnel without clicking through it. scored step by step

measuredextracted directly from the live page. a fact, not an opinion
Homepage / Lander
01

Homepage / Lander

1 tactic
Demo / docs
Products
02

Products

▲ strongest
2 tactics
FAQDemo / docs
Pricing
03

Pricing

▼ thinnest
1 tactic
Demo / docs

In their own words

8 quoted

the entry page’s own title, headline, buttons and prices — quoted, never paraphrased

measuredextracted directly from the live page. a fact, not an opinion
Page title
Stainless - Best-in-class developer interfaces for your API
Meta description
Stainless helps you deliver robust and idiomatic SDKs, documentation that keeps up with your API, and token-efficient MCP servers.
Headline
Best-in-class interfaces for developers and agents
Section headings
Stainless is joining Anthropic
Buttons and links
Read the announcementGet started

Sections

2 identified

structural bands identified on this funnel, cropped from its own capture

measuredextracted directly from the live page. a fact, not an opinion
Nav section of stainless.com
Nav0% down the page
Footer section of stainless.com
Footer76% down the page

What we found

2 tactics

conversion tactics we could prove are present, with the on-page text that evidences each

measuredextracted directly from the live page. a fact, not an opinion

Action path1 of 4

Offers a demo or docs entry point documentation

Friction reduction1 of 2

Answers buyer objections FAQ

What we didn’t find

9 of 11 applicable

applicable tactics we checked for and did not see on any step we reached

measuredextracted directly from the live page. a fact, not an opinion

What we didn’t see9 of 11 applicable

Trusted-by logo wall 1,168 of the 1,539 funnels we checked
Free trial / freemium 1,084 of the 1,385 SaaS funnels we checked
Pricing tiers 699 of the 1,385 SaaS funnels we checked
Press / "as seen in" 508 of the 1,960 funnels we checked
Lead-capture form 342 of the 1,393 funnels we checked
Us-vs-them comparison 332 of the 1,968 funnels we checked
Proof above the fold 314 of the 1,968 funnels we checked
Usage / adoption proof 237 of the 1,539 funnels we checked
Scarcity / urgency copy 101 of the 1,960 funnels we checked

Absence is a measurement, not a recommendation: we do not know why a tactic is missing, whether it belongs here, or whether adding it would change anything. Where a walk stopped early, a tactic living deeper would also read as not detected.

How well it’s built

15 run · 7 flagged

contrast, mobile, typography, accessibility, weight — each with what would fix it

measuredextracted directly from the live page. a fact, not an opinion

7 of 14 measured checks need work1 could not be measured — not counted either way

Text contrast (WCAG AA)

contrast:text-contrast-wcag-aa

85% of measurable text passes WCAG AA. 4+ runs fail.

worst: “1.18.0” at 3.56:1 (11px, #ffffff on #e9573f). needs 4.5:1

FixRaise text/background contrast to ≥4.5:1 (≥3:1 for large text), especially on CTAs and body copy.

Body text size

type:body-text-size

Smallest body text is 10px (base ~20px). below the ~16px readable floor.

FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.

Line height

type:line-height

Body line-height is 1×. tight enough to hurt readability.

FixSet body line-height to ~1.4-1.6×.

Named controls

a11y:named-controls

64 buttons/links have no accessible name (icon-only, no aria-label).

FixAdd aria-label to icon-only buttons and links.

Oversized images

weight:oversized-images

23 images are shipped at more than 2x the width shown.

“svg+xml,%3Csvg%20display%3D%22block%22%2” is 150px wide, displayed at 20px

FixServe responsive sizes (srcset/sizes) matching the rendered width.

Landmark regions

structure:landmark-regions

No <header> or <main> landmark. screen-reader users cannot jump between regions.

FixWrap the page in <header>, <main> and <footer> (or matching ARIA roles).

Tap-target size (mobile)

mobile:tap-target-size-mobile

166 of 169 interactive targets are under 44×44px on mobile.

smallest: “SDKs” at 40×22px

FixGive tappable controls a ≥44×44px hit area. the touch minimum.

Worth knowing3

Heading structure

The landing page has 3 <h1> elements (expected 1).

FixUse exactly one <h1> as the page’s title.

a11y:heading-structure
Heading levels

6 headings skip a level (e.g. <h2> followed by <h4>). Screen-reader users navigate by this outline.

FixStep heading levels one at a time; use CSS for size, not a deeper level.

a11y:heading-levels

Not measurable1

Page weight

At least 0.5 MB across 65 measurable resources, but 20 cross-origin resources did not expose a size. The true weight cannot be determined from the page.

weight:page-weight

Clear4

Mobile viewport · Language declared · Image alt text · Inline validation

Brand kit

5 colour roles

palette by on-page usage · type rendered live

measuredextracted directly from the live page. a fact, not an opinion
full palette ordered by on-page usage %
primary#ffffff
accent#ffffff
bg#ffffff
surface#f7f7f7
text#0f0f10
See the roles applied
accent

Body copy in their text role, on a surface card.

the roles, doing their job
The quick brown fox56px
Jumps over the lazy dog40px
A subheading in their voice36px

Body copy set at their measured paragraph size. This is how their product reads to a first-time visitor. same family, same scale, same weight.

  • List item one, at body scale
  • List item two
  • List item three
Type scale, weights & families
SIZE SCALE
10pxAa
12pxAa
13pxAa
14pxAa
20pxAa
21pxAa
28pxAa
36pxAa
40pxAa
56pxAa
WEIGHTS
Aa400
Aa500
Aa600
Aa700
FAMILIES
Geist
rendered in their own type system · webfont not loaded. system fallback if uninstalled

Measured, found none

2 of 9 layers

layers we ran on this funnel that came back empty

measuredextracted directly from the live page. a fact, not an opinion

Elements — the atomic pieces — price anchors, ratings, guarantees — with their verbatim on-page text

Playbook match — which funnel play this page runs — measured, evidence-quoted

We ran these passes on the pages we captured and found nothing to show. That is a measurement of this funnel, not a recommendation — and it is a different statement from a layer we never ran, which does not appear here at all.

X-ray a funnel

Your competitor's funnel is one URL away.

Give your AI real references · Measured facts, not taste

Similar crawls