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 20, 2026
We found more conversion tactics here than on 23% of the 1,413 multi-step SaaS funnels we have measured.
4 conversion tactics detected
3 pages walked · measured by Roentgen 1.27.0
Measured by Roentgen 1.27.0 on 2026-09-20. 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,864 multi-step funnels, more conversion tactics than 34% of them.
Walk 18 links on the entry page, 10 walkable. 2 matched a funnel step; we captured 3 pages in all, this one included.
Do I need a credit card to try Wephora? +
Overall dining experience* Rating (1–5)
free plan
+ 1 more with evidence
+ 4 more
+ 2 more
Build surveys, leads & registrations with AI - ready to share in seconds.
Wephora is your AI form platform - turn prompts into publish-ready forms, customize in the visual builder, an…
see their whole funnel without clicking through it. scored step by step
measuredextracted directly from the live page. a fact, not an opinionthe entry page’s own title, headline, buttons and prices — quoted, never paraphrased
measuredextracted directly from the live page. a fact, not an opinionWephora | Create powerful forms with AI
Wephora is your AI form platform - turn prompts into publish-ready forms, customize in the visual builder, and collect responses with built-in analytics.
Build surveys, leads & registrations with AI - ready to share in seconds.
How it works
Builder, analytics, logic & respondent experience
Start from a proven template
Built for faster workflows and smarter form experiences
Common questions
Ready to publish your first form?
Describe your form
AI generates structure+6 more, not shown
How it works
Features
Templates
Build with AI
About
Generate My Form
Try it live
Preview with AI
Visual builder
Live analytics+2 more, not shown
structural bands identified on this funnel, cropped from its own capture
measuredextracted directly from the live page. a fact, not an opinion
the atomic pieces — price anchors, ratings, guarantees — with their verbatim on-page text
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 opinionDo I need a credit card to try Wephora? +
Overall dining experience* Rating (1–5)
free plan
name, email, password, confirmPassword
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 opinion5 of 15 measured checks need work1 could not be measured — not counted either way
0% of measurable text passes WCAG AA. 4+ runs fail. 45% of text was unmeasurable (over images/gradients). not counted either way.
worst: “Preview with AI” at 1:1 (14px, #ffffff on #ffffff). needs 4.5:1
FixRaise text/background contrast to ≥4.5:1 (≥3:1 for large text), especially on CTAs and body copy.
Smallest sampled text is 10px, below the 13px floor this check uses.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
7 images are shipped at more than 2x the width shown.
“wephora-logo.png” is 1024px wide, displayed at 32px
FixServe responsive sizes (srcset/sizes) matching the rendered width.
No <main> or <header> or <footer> landmark. screen-reader users cannot jump between regions.
FixWrap the page in <header>, <main> and <footer> (or matching ARIA roles).
67 of 81 interactive targets are under 44×44px on mobile.
smallest: “Show password” at 16×16px
FixGive tappable controls a ≥44×44px hit area. the touch minimum.
10 paragraphs run past ~95 characters per line.
FixCap measure at ~60-75ch for comfortable reading.
type:4 form fields rely on placeholder text as the only label.
FixBack placeholders with a real <label>. placeholder text vanishes on input.
a11y:1 heading skips 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: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:5 elements look clickable but cannot be reached by keyboard.
FixUse <button>/<a>, or add role + tabindex="0" and a key handler.
structure:No autocomplete attributes across 4 fields. browsers cannot autofill.
FixAdd autocomplete="email"/"tel"/"name" to identity fields.
forms:At least 0.7 MB across 15 measurable resources, but 35 cross-origin resources did not expose a size. The true weight cannot be determined from the page.
weight:Mobile viewport · Language declared · Image alt text · Render-blocking resources
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 opinionPlaybook match — which funnel play this page runs — measured, evidence-quoted
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.