Body text size
type:Smallest sampled text is 10px, below the 13px floor this check uses.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
saas · Sep 25, 2026
We found more conversion tactics here than on 10% of the 1,301 multi-step SaaS funnels we have measured.
3 conversion tactics detected
2 pages walked · measured by Roentgen 1.27.0
Measured by Roentgen 1.27.0 on 2026-09-25. 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,705 multi-step funnels, more conversion tactics than 20% of them.
Walk 46 links on the entry page, 24 walkable. 1 matched a funnel step; we captured 2 pages in all, this one included.
comparison table: Feature · Textunnel · PairDrop · Snapdrop
How does Textunnel work? Textunnel establishes a secure peer-to-peer (P2P) WebRTC connecti
Free forever
+ 5 more
+ 1 more
Cross-Device File Sharing & Clipboard Sync — No Upload, No Signup
Send files and text instantly across all devices. Zero uploads, no signup, end-to-end encrypted.
the entry page’s own title, headline, buttons and prices — quoted, never paraphrased
measuredextracted directly from the live page. a fact, not an opinionCross-Device File Sharing — No Upload, No Signup | Textunnel
Send files and text instantly across all devices. Zero uploads, no signup, end-to-end encrypted.
Cross-Device File Sharing & Clipboard Sync — No Upload, No Signup
Engineered from Inception for Zero-Cloud Privacy
How Textunnel Works
Everything you need to work seamlessly
Built for your workflow
Textunnel vs Alternatives
Ready to try? Start sharing in 10 seconds.
The Complete Guide to Instant Cross-Device P2P Transfer & Universal Clipboard
Why Choose Textunnel for File Sharing?+8 more, not shown
Launch App
Launch Web App
Files
Folders
Camera
Text / Code
structural bands identified on this funnel, cropped from its own capture
measuredextracted directly from the live page. a fact, not an opinion
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 opinioncomparison table: Feature · Textunnel · PairDrop · Snapdrop
How does Textunnel work? Textunnel establishes a secure peer-to-peer (P2P) WebRTC connecti
Free forever
applicable tactics we checked for and did not see on any step we reached
measuredextracted directly from the live page. a fact, not an opinionAbsence 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.
contrast, mobile, typography, accessibility, weight — each with what would fix it
measuredextracted directly from the live page. a fact, not an opinion4 of 13 measured checks need work
Smallest sampled text is 10px, below the 13px floor this check uses.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
20 stylesheets/scripts in <head> block first paint.
FixDefer non-critical JS (defer/async) and inline only critical CSS.
No <header> or <footer> landmark. screen-reader users cannot jump between regions.
FixWrap the page in <header>, <main> and <footer> (or matching ARIA roles).
42 of 80 interactive targets are under 44×44px on mobile.
smallest: “Blog” at 30×20px
FixGive tappable controls a ≥44×44px hit area. the touch minimum.
11 paragraphs run past ~95 characters per line.
FixCap measure at ~60-75ch for comfortable reading.
type:No same-page “skip to content” link was found. Keyboard users tab through the whole nav on every page.
FixAdd a first-in-DOM <a href="#main"> that is visible on focus.
a11y:At least 2.5 MB across 230 measurable resources. 47 cross-origin resources did not expose a size, so the real total is higher.
FixCompress and lazy-load below-the-fold media; drop unused third-party scripts.
weight:2 images are shipped at more than 2x the width shown.
FixServe responsive sizes (srcset/sizes) matching the rendered width.
weight:12 elements look clickable but cannot be reached by keyboard.
FixUse <button>/<a>, or add role + tabindex="0" and a key handler.
structure:Text contrast (WCAG AA) · Mobile viewport · Language declared · Image alt text
which funnel play this page runs — measured, evidence-quoted
deriveda deterministic summary generated only from measured facts. labeled, never an LLM guessComparison surface matches the Intent-Match pattern — measured comparison table plus comparison-intent copy
home: comparison table: Feature · Textunnel · PairDrop · Snapdropcomparison copy
Textunnel vs Alternatives
A match means this funnel's measurable surfaces fit the playbook's pattern — the quoted language is what fired the detection. A lever is one playbook mechanism observed on-page. We never claim what a brand's ads or emails do; a crawl can't see them. All funnel designs →
Two different things sit side by side here. The claim and its quoted evidence are measured on this funnel, the same way every other fact on this page is. The playbook itself is written guidance — our strategy library, not a measurement of this site — and it lives behind the links above. Nothing on this page recommends what this brand should do.
palette by on-page usage · type rendered live
measuredextracted directly from the live page. a fact, not an opinionBody copy in their text role, on a surface card.
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.
layers we ran on this funnel that came back empty
measuredextracted directly from the live page. a fact, not an opinionElements — the atomic pieces — price anchors, ratings, guarantees — with their verbatim on-page text
We ran this pass 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.