Body text size
type:Smallest body text is 11px (base ~14px). below the ~16px readable floor.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
ecommerce · Aug 10, 2026
3/100 Sparse
Scores higher than 3% of 1,391 multi-step funnels we have measured. Among the 157 ecommerce funnels in that group, higher than 7%.
Measured by Roentgen 1.21.0 on 2026-08-10. 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 5 · mobile 0.
Walk 114 links on the entry page, 109 walkable. 6 matched a funnel step; we captured 4 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 opinionCollections – TKO Strength & Performance
COLLECTIONS
SUBSCRIBE TO OUR EMAIL LIST FOR THE LATEST NEWS AND DISCOUNTS FROM TKO STRENGTH & PERFORMANCE!
JOIN OUR NEWSLETTER
Mobile Site Coming Soon...
Search
JOIN
SIGN UP
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$995.00 / $11.50 / $70.00 / $1,120.00 / $460.00 / $440.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 opinion8 of 16 measured checks need work1 could not be measured — not counted either way
73% of measurable text passes WCAG AA. 4+ runs fail. 46% of text was unmeasurable (over images/gradients). not counted either way.
worst: “Sign Up” at 4.29:1 (14px, #fefefe on #ea2833). 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 11px (base ~14px). 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>.
61 of 107 content images (57%) have no alt attribute.
FixAdd descriptive alt to content images; alt="" for purely decorative ones.
8 of 12 form fields have no label (+4 rely on placeholder only).
FixGive every input a <label> or aria-label; placeholders are not labels.
86 buttons/links have no accessible name (icon-only, no aria-label).
FixAdd aria-label to icon-only buttons and links.
26 stylesheets/scripts in <head> block first paint.
FixDefer non-critical JS (defer/async) and inline only critical CSS.
117 of 201 interactive targets are under 44×44px on mobile.
smallest: “Search” at 59×18px
FixGive tappable controls a ≥44×44px hit area. the touch minimum.
3 paragraphs run past ~95 characters per line.
FixCap measure at ~60-75ch for comfortable reading.
type: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:4 images are shipped at more than 2x the width shown.
FixServe responsive sizes (srcset/sizes) matching the rendered width.
weight:No <main> landmark. screen-reader users cannot jump between regions.
FixWrap the page in <header>, <main> and <footer> (or matching ARIA roles).
structure:No autocomplete attributes across 12 fields. browsers cannot autofill.
FixAdd autocomplete="email"/"tel"/"name" to identity fields.
forms:At least 3.4 MB across 359 measurable resources, but 762 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.