Body text size
type:Smallest body text is 10px (base ~18px). below the ~16px readable floor.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
saas · Aug 3, 2026
15/100 Sparse
Scores higher than 7% of 1,391 multi-step funnels we have measured. Among the 1,074 saas funnels in that group, higher than 3%.
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 15 · mobile 15.
Walk 5 links on the entry page, 3 walkable. 2 matched a funnel step; we captured 3 pages in all, this one included.
this funnel’s coverage score across measured re-scans
measuredextracted directly from the live page. a fact, not an opinionsee 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 opinionEvery update, in one place. | Toward
You already communicate what's happening. Toward understands it, automatically files it and connects the dots. Built with simplicity as the foundation.
Progress, captured and filed automatically.
What's the update?
The intelligence layer hiding in your updates.
Built for work that actually happens.
Built with simplicity as the foundation.
If you're juggling more than one thing, it's a Toward.
Stop tracking. Start seeing.
No meta-work.
One clear map.+4 more, not shown
Reflect
Timeline
Threads
Projects
↻ Replay the capture
Get Started
Start for free
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 opinionStart for free
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 opinion6 of 12 measured checks need work1 could not be measured — not counted either way
79% of measurable text passes WCAG AA. 4+ runs fail. 27% of text was unmeasurable (over images/gradients). not counted either way.
worst: “Emerging blocker” at 1.9:1 (11px, #eaa72b on #fdf3e2). needs 4.5:1
FixRaise text/background contrast to ≥4.5:1 (≥3:1 for large text), especially on CTAs and body copy.
Smallest body text is 10px (base ~18px). below the ~16px readable floor.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
No html[lang] attribute. screen readers can’t pick the right voice.
FixAdd lang="en" (or the page’s language) to <html>.
2 buttons/links have no accessible name (icon-only, no aria-label).
FixAdd aria-label to icon-only buttons and links.
8 images are shipped at more than 2x the width shown.
“mobile-view.png” is 1179px wide, displayed at 266px
FixServe responsive sizes (srcset/sizes) matching the rendered width.
17 of 37 interactive targets are under 44×44px on mobile.
smallest: “Privacy” at 43×17px
FixGive tappable controls a ≥44×44px hit area. the touch minimum.
2 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:4 stylesheets/scripts in <head> block first paint.
FixDefer non-critical JS (defer/async) and inline only critical CSS.
weight:No <main> landmark. screen-reader users cannot jump between regions.
FixWrap the page in <header>, <main> and <footer> (or matching ARIA roles).
structure:At least 0.3 MB across 16 measurable resources, but 14 cross-origin resources did not expose a size. The true weight cannot be determined from the page.
weight: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
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.