Smallest body text is 11px (base ~11px). below the ~16px readable floor.
fix Keep body copy ≥15-16px; reserve sub-13px for fine print only.
saas · Aug 10, 2026
55/100 Thin
Scores above 92% of 525 entry-page captures we have measured. Among the 289 saas funnels in that group, above 89%.
Walk 23 links seen, 19 walkable, and 0 matched a funnel step. If this funnel continues past the entry page, we did not reach it — everything below is measured from the entry page alone.
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.
Measured by Roentgen 1.21.0, one of our versioned rulesets. A capture is read once and its measurements freeze there, so the stamp says which ruleset read this one.
the entry page’s own title, headline, buttons and prices — quoted, never paraphrased
measuredextracted directly from the live page. a fact, not an opinionFree Strava Alternative for Running & Gym | Activ.run
Looking for a free Strava alternative? Activ.run gives you GPS running plus gym tracking in one app, no subscription wall. Compare side by side.
A free Strava alternative that tracks your gym training too.
The honest comparison
Same runs, plus your lifts
What you give up, honestly
Common questions
Two pillars, one app
Same runs, plus your lifts.
Running tracker
Workout tracker
$7.99
$79.99
$11.99
structural bands identified on this funnel, cropped from its own capture
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, $11.99/mo
free tier
Is Activ.run really free? Can I import my Strava runs? Does it track gym workouts too? Is
free tier
comparison table: FEATURE · ACTIV.RUN · STRAVA
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 opinion28% of measurable text passes WCAG AA. 4+ runs fail. 54% of text was unmeasurable (over images/gradients). not counted either way.
worst: “Free” at 1.63:1 (15px, #8fe038 on #ffffff). needs 4.5:1
fix Raise text/background contrast to ≥4.5:1 (≥3:1 for large text), especially on CTAs and body copy.
Responsive viewport meta is present.
Smallest body text is 11px (base ~11px). below the ~16px readable floor.
fix Keep body copy ≥15-16px; reserve sub-13px for fine print only.
html[lang] is set for screen readers.
All 5 content images carry alt text.
1 heading skips a level (e.g. <h2> followed by <h4>). Screen-reader users navigate by this outline.
fix Step heading levels one at a time; use CSS for size, not a deeper level.
At least 0.3 MB across 10 measurable resources, but 6 cross-origin resources did not expose a size. The true weight cannot be determined from the page.
1 stylesheet/script in <head> block first paint.
fix Defer non-critical JS (defer/async) and inline only critical CSS.
1 image is shipped at more than 2x the width shown.
“launched-on-sb.svg” is 300px wide, displayed at 113px
fix Serve responsive sizes (srcset/sizes) matching the rendered width.
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.
We also looked for Elements and Playbook match, and found none on this funnel.