saas · Aug 3, 2026

bulldo.gs

25/100 Sparse

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

How this was measured

Measured by Roentgen 1.18 on 2026-08-03. 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 30 · mobile 20.

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

Captured Field Notes
Step 1 · Field Notes1 / 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
Field Notes
01

Field Notes

▼ thinnest
4 tactics
Sticky CTAPressLogo wallDemo / docs
Field Notes
02

Field Notes

▲ strongest
5 tactics
Sticky CTAFAQPressLogo wallDemo / docs
Field Notes
03

Field Notes

5 tactics
Sticky CTAFAQPressLogo wallDemo / docs

In their own words

11 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
Field Notes · bulldo.gs
Meta description
Short, specific writing about automating the boring parts of a Google Workspace life — Apps Script triggers, Gmail at scale, and the gotchas nobody warns you about.
Headline
Field Notes.
Section headings
LatestIn the worksGet the next one in your inbox.Why most Apps Script tutorials are wrong about triggersA better way to page through Gmail in Apps ScriptThe 5-minute Gmail-to-Sheet pipeline
Buttons and links
Subscribe →Get started →

What we found

4 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 docs link

Trust & proof1 of 2

Shows customer logos or a trusted-by claim logos: Launched on Fazier, Verified on DANG!, Listed on Turbo0

Friction reduction1 of 2

Answers buyer objections FAQ

What we didn’t find

7 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 see7 of 11 applicable

Free trial / freemium 1,084 of the 1,385 SaaS funnels we checked
Pricing tiers 699 of the 1,385 SaaS 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

13 run · 4 flagged

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

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

4 of 12 measured checks need work1 could not be measured — not counted either way

Text contrast (WCAG AA)

contrast:text-contrast-wcag-aa

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

worst: “One short note per release. Unsubscribe anytime.” at 2.66:1 (11px, #555555 on #0a0a0a). 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 ~16px). below the ~16px readable floor.

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

Oversized images

weight:oversized-images

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

“dang-verified-light.png” is 550px wide, displayed at 67px

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

Tap-target size (mobile)

mobile:tap-target-size-mobile

26 of 30 interactive targets are under 44×44px on mobile.

smallest: “GNAW” at 30×14px

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

Worth knowing3

Line length

1 paragraph runs past ~95 characters per line.

FixCap measure at ~60-75ch for comfortable reading.

type:line-length
Label in name

3 controls have an aria-label that does not contain its visible text, so voice-control users cannot activate it by saying what they see.

FixMake the accessible name start with the visible label text.

a11y:label-in-name
Autocomplete hints

No autocomplete attributes across 1 field. browsers cannot autofill.

FixAdd autocomplete="email"/"tel"/"name" to identity fields.

forms:autocomplete-hints

Not measurable1

Page weight

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

weight:page-weight

Clear5

Mobile viewport · Language declared · Image alt text · Render-blocking resources · 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#ffb020
accent#ffb020
bg#0a0a0a
surface#0a0a0a
text#fafafa
See the roles applied
accent

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

the roles, doing their job
The quick brown fox60px
Jumps over the lazy dog22px
A subheading in their voice18px

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
11pxAa
13pxAa
14pxAa
15pxAa
16pxAa
17pxAa
18pxAa
22pxAa
60pxAa
WEIGHTS
Aa400
Aa600
Aa700
FAMILIES
JetBrains Mono · GeistSans
rendered in their own type system · webfont not loaded. system fallback if uninstalled

Measured, found none

2 of 8 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