saas · Sep 17, 2026

modal.com

We found more conversion tactics here than on 44% of the 1,350 multi-step SaaS funnels we have measured.

5 conversion tactics detected

3 pages walked · measured by Roentgen 1.27.0

Put this x-ray to work Brief your AI X-ray your funnel
How this was measured

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

This 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. A low count means we did not detect those patterns, not that the funnel is weak.

Against all 1,781 multi-step funnels, more conversion tactics than 54% of them.

The short version, in 5 parts

  1. Proven on the page

    5 conversion tactics detected, each backed by text on the page

    Answers buyer objections
    Frequently asked questions
    Offers a free trial or free tier
    free compute
    Shows customer logos or a trusted-by claim
    powering

    + 2 more with evidence

    See all 5

  2. Not seen

    6 of 11 applicable tactics we checked for and did not see

    Press / "as seen in"
    Media logos or an "as seen in / featured in" claim borrowing publication credib…
    Us-vs-them comparison
    A comparison table framing the brand against alternatives.
    Lead-capture form
    An on-page form collecting contact details (email / name / phone) outside a che…

    + 3 more

    See what we looked for

  3. Flagged

    6 of 15 build checks flagged, each with a fix

    Text contrast (WCAG AA)
    89% of measurable text passes WCAG AA. 4+ runs fail.
    Body text size
    Smallest sampled text is 12px, below the 13px floor this check uses.
    Named controls
    2 buttons/links have no accessible name (icon-only, no aria-label).

    + 3 more

    See the fixes

  4. Walked

    3 pages walked, Homepage / Lander to Signup

    Step 1
    Homepage / Lander
    Step 2
    Pricing
    Step 3
    Signup

    Walk it frame by frame

  5. In their words

    The headline: AI infrastructure that developers love

    Promise
    Bring your own code, and run CPU, GPU, and data-intensive compute at scale. The serverless platform for AI an…
    Prices shown
    $30

    Read every quote

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

3 tactics

$30

Free trialLogo wallDemo / docs
Pricing
02

Pricing

▲ strongest
5 tactics

$0.001972 +24 more

FAQTrust badgesFree trialPricing tiersDemo / docs
Signup
03

Signup

▼ thinnest
1 tactic

$30

Free trial

In their own words

32 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
Modal: High-performance AI infrastructure
Meta description
Bring your own code, and run CPU, GPU, and data-intensive compute at scale. The serverless platform for AI and data teams.
Headline
AI infrastructure that developers love
Section headings
The production cloud for AI.Build full-scale AI systems.Engineered for inference.Built for the full training loop.Designed to scale agents.Global GPU infrastructureSecurity and governanceEmpowering teams of all sizes to ship at scale+8 more, not shown
Buttons and links
Contact UsAny GPU, any timeGlobally distributed across cloudsAutomated fleet healthScales with demandTeam controlsBattle-tested isolationSOC2 & HIPAAData residency controlsAudio Transcription+2 more, not shown
Prices on the page
$30

What we found

5 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

objection1 of 2

Answers buyer objections Frequently asked questions

proof1 of 4

Shows customer logos or a trusted-by claim powering

offer2 of 2

Offers a free trial or free tier free compute
Makes the pricing ladder explicit free, $30/mo, $100/mo

checkout1 of 2

Offers a demo or docs entry point Documentation

What we didn’t find

6 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 see6 of 11 applicable

Press / "as seen in" 642 of the 2,417 funnels we checked
Us-vs-them comparison 441 of the 2,420 funnels we checked
Lead-capture form 437 of the 1,683 funnels we checked
Proof above the fold 381 of the 2,420 funnels we checked
Usage / adoption proof 289 of the 2,043 funnels we checked
Scarcity / urgency copy 125 of the 2,417 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 · 6 flagged

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

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

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

Text contrast (WCAG AA)

contrast:text-contrast-wcag-aa

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

worst: “65%” at 1.06:1 (48px, #231c1c on #181818). needs 3: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 sampled text is 12px, below the 13px floor this check uses.

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

Named controls

a11y:named-controls

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

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

Render-blocking resources

weight:render-blocking-resources

21 stylesheets/scripts in <head> block first paint.

FixDefer non-critical JS (defer/async) and inline only critical CSS.

Oversized images

weight:oversized-images

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

“tmp3h3yrxnd_cfd86245.webp” is 1300px wide, displayed at 588px

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

Landmark regions

structure:landmark-regions

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

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

Worth knowing5

Line length

1 paragraph runs past ~95 characters per line.

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

type:line-length
Heading levels

5 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
Keyboard reachability

6 elements look clickable but cannot be reached by keyboard.

FixUse <button>/<a>, or add role + tabindex="0" and a key handler.

structure:keyboard-reachability

Not measurable1

Page weight

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

weight:page-weight

Clear3

Mobile viewport · Language declared · Image alt text

This funnel: 89% of text passes AA · top corpus funnels average 93%.

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 %
accent#def0dd
bg#def0dd
surface#def0dd
text#ddffdc
See the roles applied
accent

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

the roles, doing their job
The quick brown fox54px
Jumps over the lazy dog42px
A subheading in their voice40px

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
12pxAa
14pxAa
16pxAa
20pxAa
21pxAa
24pxAa
28pxAa
30pxAa
36pxAa
40pxAa
42pxAa
54pxAa
WEIGHTS
Aa400
Aa500
FAMILIES
Goga · Inter Variable
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.

Similar crawls