saas · Sep 30, 2026

photostudio.io

We found more conversion tactics here than on 23% of the 1,350 multi-step SaaS funnels we have measured.

4 conversion tactics detected

3 pages walked · measured by Roentgen 1.28.1

Put this x-ray to work Brief your AI X-ray your funnel
How this was measured

Measured by Roentgen 1.28.1 on 2026-09-30. A capture is read once and its measurements freeze there, so the stamp says which ruleset read this one.

This 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. A low count means we did not detect those patterns, not that the funnel is weak.

Against all 1,781 multi-step funnels, more conversion tactics than 34% of them.

Walk 55 links on the entry page, 47 walkable. 2 matched a funnel step; we captured 3 pages in all, this one included.

The short version, in 5 parts

  1. Proven on the page

    4 conversion tactics detected, each backed by text on the page

    Answers buyer objections
    FAQ
    Offers a free trial or free tier
    Try it free
    Shows customer logos or a trusted-by claim
    trusted by

    + 1 more with evidence

    See all 4

  2. Not seen

    7 of 11 applicable tactics we checked for and did not see

    Press / "as seen in"
    Media logos or an "as seen in / featured in" claim borrowing publication credib…
    Demo / docs entry
    A "book a demo" or documentation / API entry point.
    Us-vs-them comparison
    A comparison table framing the brand against alternatives.

    + 4 more

    See what we looked for

  3. Flagged

    6 of 14 build checks flagged, each with a fix

    Text contrast (WCAG AA)
    78% of measurable text passes WCAG AA. 4+ runs fail.
    Body text size
    Smallest sampled text is 11px, below the 13px floor this check uses.
    Named controls
    27 buttons/links have no accessible name (icon-only, no aria-label).

    + 3 more

    See the fixes

  4. Walked

    3 pages walked, Homepage / Lander to Features

    Step 1
    Homepage / Lander
    Step 2
    Pricing
    Step 3
    Features

    Walk it frame by frame

  5. In their words

    The headline: Upload one photo. Get a complete product page.

    Promise
    Create free AI product photos for fashion ecommerce. Generate ghost mannequin, flat lay, on-model and lifesty…

    Read every quote

Captured Homepage / Lander
Step 1 · Homepage / Lander1 / 3

What we recorded

Progress

2 scans

this funnel’s coverage score across measured re-scans

measuredextracted directly from the live page. a fact, not an opinion
Unchanged across 2 scans Same 4 conversion tactics detected since 2026-08-20.
  1. 4 tactics 2026-08-20
  2. 4 tactics 2026-09-30

The funnel, frame by frame

3 steps walked

see their whole funnel without clicking through it. scored step by step

measuredextracted directly from the live page. a fact, not an opinion
Homepage / Lander
01

Homepage / Lander

4 tactics
Sticky CTAFree trialNo cardLogo wall
Pricing
02

Pricing

▲ strongest
6 tactics

$29 +16 more  ·  subscription  ·  1 proof point

FAQTrust badgesFree trialNo cardLogo wallPricing tiers
Features
03

Features

▼ thinnest
2 tactics
No cardLogo wall

In their own words

18 quoted

the entry page’s own title, headline, buttons and prices — quoted, never paraphrased

measuredextracted directly from the live page. a fact, not an opinion
Page title
AI Product Photography for Fashion Ecommerce | Photostudio.io
Meta description
Create free AI product photos for fashion ecommerce. Generate ghost mannequin, flat lay, on-model and lifestyle images from one garment upload.
Headline
Upload one photo. Get a complete product page.
Section headings
Fits your workflowReal outputs from one uploadProven CreativesGhost MannequinFlatlayOn-ModelPhotoshootUGC+2 more, not shown
Buttons and links
FeaturesTry Free ?Try it free, no account neededCookie SettingsSign up →

Sections

4 identified

structural bands identified on this funnel, cropped from its own capture

measuredextracted directly from the live page. a fact, not an opinion
Nav section of photostudio.io
Nav0% down the page
Hero section of photostudio.io
Hero0% down the page
Logos section of photostudio.io
Logos0% down the page
Footer section of photostudio.io
Footer91% down the page

Elements

2 harvested

the atomic pieces — price anchors, ratings, guarantees — with their verbatim on-page text

measuredextracted directly from the live page. a fact, not an opinion
No credit card element
No credit card“No credit card · 3 free images included”
Guarantee element
Guarantee“14-day money-back guarantee”

What we found

4 tactics

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

objection1 of 2

Answers buyer objections FAQ

proof1 of 4

Shows customer logos or a trusted-by claim trusted by

offer2 of 2

Offers a free trial or free tier Try it free
Makes the pricing ladder explicit free, $0/mo, $9.60/mo, $15.20/mo

What we didn’t find

7 of 11 applicable

applicable tactics we checked for and did not see on any step we reached

measuredextracted directly from the live page. a fact, not an opinion

What we didn’t see7 of 11 applicable

Press / "as seen in" 642 of the 2,417 funnels we checked
Demo / docs entry 575 of the 1,683 funnels we checked
Us-vs-them comparison 441 of the 2,420 funnels we checked
Lead-capture form 437 of the 1,683 funnels we checked
Proof above the fold 381 of the 2,420 funnels we checked
Usage / adoption proof 289 of the 2,043 funnels we checked
Scarcity / urgency copy 125 of the 2,417 funnels we checked

Absence 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.

How well it’s built

14 run · 6 flagged

contrast, mobile, typography, accessibility, weight — each with what would fix it

measuredextracted directly from the live page. a fact, not an opinion

6 of 13 measured checks need work1 could not be measured — not counted either way

Text contrast (WCAG AA)

contrast:text-contrast-wcag-aa

78% of measurable text passes WCAG AA. 4+ runs fail.

worst: “Get started free →” at 1.01:1 (14px, #0f1729 on #18181b). needs 4.5:1

FixRaise text/background contrast to ≥4.5:1 (≥3:1 for large text), especially on CTAs and body copy.

Body text size

type:body-text-size

Smallest sampled text is 11px, below the 13px floor this check uses.

FixKeep body copy ≥15-16px; reserve sub-13px for fine print only.

Named controls

a11y:named-controls

27 buttons/links have no accessible name (icon-only, no aria-label).

FixAdd aria-label to icon-only buttons and links.

Render-blocking resources

weight:render-blocking-resources

15 stylesheets/scripts in <head> block first paint.

FixDefer non-critical JS (defer/async) and inline only critical CSS.

Oversized images

weight:oversized-images

34 images are shipped at more than 2x the width shown.

“ghost-card.webp” is 1433px wide, displayed at 419px

FixServe responsive sizes (srcset/sizes) matching the rendered width.

Tap-target size (mobile)

mobile:tap-target-size-mobile

142 of 187 interactive targets are under 44×44px on mobile.

smallest: “See all →” at 62×17px

FixGive tappable controls a ≥44×44px hit area. the touch minimum.

Worth knowing4

Line length

18 paragraphs run past ~95 characters per line.

FixCap measure at ~60-75ch for comfortable reading.

type:line-length
Heading levels

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:heading-levels
Landmark regions

No <main> landmark. screen-reader users cannot jump between regions.

FixWrap the page in <header>, <main> and <footer> (or matching ARIA roles).

structure:landmark-regions

Not measurable1

Page weight

At least 2.9 MB across 119 measurable resources, but 109 cross-origin resources did not expose a size. The true weight cannot be determined from the page.

weight:page-weight

Clear3

Mobile viewport · Language declared · Image alt text

Brand kit

5 colour roles

palette by on-page usage · type rendered live

measuredextracted directly from the live page. a fact, not an opinion
full palette ordered by on-page usage %
primary#ea580c
accent#ea580c
bg#ffffff
surface#f1f5f9
text#9ca3af
See the roles applied
accent

Body copy in their text role, on a surface card.

the roles, doing their job
The quick brown fox44px
Jumps over the lazy dog40px
A subheading in their voice24px

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.

  • List item one, at body scale
  • List item two
  • List item three
Type scale, weights & families
SIZE SCALE
11pxAa
12pxAa
13pxAa
14pxAa
15pxAa
16pxAa
17pxAa
20pxAa
22pxAa
24pxAa
40pxAa
44pxAa
WEIGHTS
Aa400
Aa500
Aa600
Aa700
Aa900
FAMILIES
Inter
rendered in their own type system · webfont not loaded. system fallback if uninstalled

Measured, found none

1 of 10 layers

layers we ran on this funnel that came back empty

measuredextracted directly from the live page. a fact, not an opinion

Playbook 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.

Similar crawls