Body text size
type:Smallest body text is 9px (base ~16px). below the ~16px readable floor.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
ecommerce · Aug 9, 2026
30/100 Sparse
Scores higher than 19% of 1,391 multi-step funnels we have measured. Among the 157 ecommerce funnels in that group, higher than 55%.
Measured by Roentgen 1.20.1 on 2026-08-09. 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 15 that apply to an ecommerce funnel. Per device: desktop 30 · mobile 30.
Walk 45 links on the entry page, 38 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 opinionFish Voice AI Voice Generator & Text to Speech
Use the Fish Voice AI Voice Generator to audition public voices, turn text to speech, design a speaker, or build a consent-first private clone.
Try the Fish Voice AI Voice Generator
Find a Fish Voice for the Script in Front of You
Fish Voice AI Brings the Voice Tools Together
Why Fish Voice Text to Speech Stays Editable
Create a Fish Voice in Five Clear Steps
Fish Voice AI Features for Everyday Speech Work
Fish Voice Production Facts at a Glance
Fish Voice AI Plans for Scripts of Every Size
How Teams Put Fish Voice AI to Work+8 more, not shown
Tools
Text to Speech
Voice Cloning
Voice Design
No content? Try this:
English
Generate Free
Expression Hear intent, not a flat read
Consent Keep approved voice identity reusable
Revision speed Make corrections while the copy is fresh+2 more, not shown
$9.9
$4.95
$29.9
$14.95
$49.9
$24.95
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 opinion$9.9 / $29.9 / $49.9 / Save 50%
Fish Voice AI Voice Generator FAQ
7-day money-back guarantee
00:00:00
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
61% of measurable text passes WCAG AA. 4+ runs fail.
worst: “Monthly” at 3.61:1 (16px, #767676 on #e5e5e5). 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 9px (base ~16px). below the ~16px readable floor.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
10 stylesheets/scripts in <head> block first paint.
FixDefer non-critical JS (defer/async) and inline only critical CSS.
53 images are shipped at more than 2x the width shown.
“logo.png” is 512px wide, displayed at 40px
FixServe responsive sizes (srcset/sizes) matching the rendered width.
172 of 242 interactive targets are under 44×44px on mobile.
smallest: “Home” at 39×20px
FixGive tappable controls a ≥44×44px hit area. the touch minimum.
14 paragraphs run past ~95 characters per line.
FixCap measure at ~60-75ch for comfortable reading.
type:3 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:2 controls have an aria-label that does not contain its visible text, so voice-control users cannot activate it by saying what they see.
FixMake the accessible name start with the visible label text.
a11y:No <main> landmark. screen-reader users cannot jump between regions.
FixWrap the page in <header>, <main> and <footer> (or matching ARIA roles).
structure:3 elements look clickable but cannot be reached by keyboard.
FixUse <button>/<a>, or add role + tabindex="0" and a key handler.
structure:At least 3.4 MB across 147 measurable resources, but 146 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 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.