Body text size
type:Smallest body text is 12px (base ~18px). below the ~16px readable floor.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
saas · Aug 25, 2026
95/100 Excellent
Scores higher than 99% of 1,391 multi-step funnels we have measured. Among the 1,074 saas funnels in that group, higher than 99%.
Measured by Roentgen 1.26.1 on 2026-08-25. 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 95 · mobile 95.
Walk 20 links on the entry page, 13 walkable. 2 matched a funnel step; we captured 3 pages in all, this one included.
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 opinionHTML to PDF API for Production-Ready Documents - Doppio
Generate PDFs and screenshots from HTML without running Puppeteer. Managed Chromium, direct S3 upload, webhooks, templates, and EU-hosted infrastructure.
Generate PDFs from HTML Without Running Puppeteer
Replace wkhtmltopdf, self-hosted Puppeteer, and fragile PDF libraries
From HTML or a URL to a Document Your Users Can Trust
Three Steps to Your First Document
Integrate in Minutes
Works With Your Stack
Built for Real-World Document Workflows
Everything You Need to Generate Documents
Every Detail, Faithfully Rendered+8 more, not shown
Log in
Get started
Start free
See the API
Try it free
Read the quickstart
Try for free
Contact sales
Do you offer a free plan?
Is there a timeout for renders?+2 more, not shown
$16
$48
$129
$0.0037
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 opinionfree, $16/mo, $48/mo, $129/mo
TRUSTED FOR 50M+ DOCUMENTS PER YEAR BY 4000+ TEAMS
Start free
Documentation
trusted by
4000+ teams
Do you offer a free plan? Yes. Our Basic plan is completely free with up to 400 documents
comparison grid: 11 rows
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 opinion3 of 10 measured checks need work1 could not be measured — not counted either way
Smallest body text is 12px (base ~18px). below the ~16px readable floor.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
14 images are shipped at more than 2x the width shown.
“marquee-10-B-M6BJXd.png” is 748px wide, displayed at 74px
FixServe responsive sizes (srcset/sizes) matching the rendered width.
80 of 131 interactive targets are under 44×44px on mobile.
smallest: “G2 Review” at 61×16px
FixGive tappable controls a ≥44×44px hit area. the touch minimum.
1 paragraph runs past ~95 characters per line.
FixCap measure at ~60-75ch for comfortable reading.
type: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:At least 0.2 MB across 19 measurable resources, but 5 cross-origin resources did not expose a size. The true weight cannot be determined from the page.
weight:Text contrast (WCAG AA) · Mobile viewport · Language declared · Image alt text · Render-blocking resources
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
p2: comparison grid: 11 rowscomparison copy
Doppio vs. the 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.