Body text size
type:Smallest sampled text is 11px, below the 13px floor this check uses.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
ecommerce · Sep 8, 2026
Fewer than 1% of 1,462 multi-step funnels we have measured scored lower, and the same is true among the 165 ecommerce funnels in that group.
0/100 Sparse
Measured by Roentgen 1.27.0 on 2026-09-08. 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.
Walk 586 links on the entry page, 574 walkable. 6 matched a funnel step; we captured 4 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 opinionProblems — what fits, what doesn't · Matchbox
Real problems, matched to the products that fit (and honestly, the ones that don't). Each page shows Matchbox's matcher judgment, not marketing.
What fits — and what doesn’t.
tell the bird
Tools to start journaling when a blank page is intimidating
Tools to meal-plan and shop less often
Tools to Start Exercising
Tools to virtually try on clothes
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 11 measured checks need work
0% of measurable text passes WCAG AA. 4+ runs fail.
worst: “PS” at 1.02:1 (19px, #fff8ee on #fff5e8). 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 11px, below the 13px floor this check uses.
FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.
Body line-height is 1.2×, tight enough to hurt readability.
FixSet body line-height to ~1.4-1.6×.
8 stylesheets/scripts in <head> block first paint.
FixDefer non-critical JS (defer/async) and inline only critical CSS.
20 images are shipped at more than 2x the width shown.
“image?url=%2Fbrand%2Fmatchbox-mark.png&w” is 1004px wide, displayed at 51px
FixServe responsive sizes (srcset/sizes) matching the rendered width.
38 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:Mobile viewport · Language declared · Image alt text · 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 opinionSections — structural bands identified on this funnel, cropped from its own capture
Elements — the atomic pieces — price anchors, ratings, guarantees — with their verbatim on-page text
What we found — conversion tactics we could prove are present, with the on-page text that evidences each
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.