saas · Sep 22, 2026

pinggy.io

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

8 conversion tactics detected

2 pages walked · measured by Roentgen 1.27.0

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

Measured by Roentgen 1.27.0 on 2026-09-22. 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 96% of them.

Walk 96 links on the entry page, 78 walkable. 1 matched a funnel step; we captured 2 pages in all, this one included.

The short version, in 5 parts

  1. Proven on the page

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

    Compares itself against alternatives
    comparison table: Feature · Pinggy (Pro) · Ngrok (Personal)
    Answers buyer objections
    It is asking for password. On Windows tunnel cannot reach localhost The command uses SSH.
    Offers a free trial or free tier
    Free Trial

    + 5 more with evidence

    See all 8

  2. Not seen

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

    Proof above the fold
    Social proof rendered within the first viewport on at least one step.
    Usage / adoption proof
    A count of developers / teams / companies / stars using the product.
    Scarcity / urgency copy
    Scarcity or time-pressure copy ("only N left", "selling fast", "limited time")…

    See what we looked for

  3. Flagged

    6 of 18 build checks flagged, each with a fix

    Body text size
    Smallest sampled text is 12px, below the 13px floor this check uses.
    Form labels
    1 of 7 form fields have no label (+1 rely on placeholder only).
    Named controls
    25 buttons/links have no accessible name (icon-only, no aria-label).

    + 3 more

    See the fixes

  4. Walked

    2 pages walked, Homepage / Lander to Compare

    Step 1
    Homepage / Lander
    Step 2
    Compare

    Walk it frame by frame

  5. In their words

    The headline: Public URLs for Localhost.

    Promise
    Pinggy is the simplest way to bring your localhost projects online. It the the fastest way to create secure t…
    Prices shown
    $ 0 · $ 2.50

    Read every quote

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

What we recorded

Progress

3 scans

this funnel’s coverage score across measured re-scans

measuredextracted directly from the live page. a fact, not an opinion
Unchanged across 3 scans Same 8 conversion tactics detected since 2026-08-06.
  1. 8 tactics 2026-08-06
  2. 8 tactics 2026-08-15
  3. 8 tactics 2026-09-22

The funnel, frame by frame

2 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

▲ strongest
5 tactics

$0 +1 more

FAQPressFree trialLogo wallDemo / docs
Compare
02

Compare

▼ thinnest
3 tactics

$3.00 +4 more

ComparisonPricing tiersDemo / docs

In their own words

35 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
Pinggy - Simple Localhost Tunnels
Meta description
Pinggy is the simplest way to bring your localhost projects online. It the the fastest way to create secure tunnels to localhost with a public url.
Headline
Public URLs for Localhost.
Section headings
Subscribe to the easiest localhost tunneling.$ 0/month$ 2.50/month$ 3.00/monthConfigure your free tunnelQuickest way to share your web apShare your websites and apps in seconds.Debug on the go.+10 more, not shown
Buttons and links
DownloadCompareUse CasesHelpDashboardStart 7 days free trialOr just try it for free →Advanced SettingsDocsQuickstart+2 more, not shown
Prices on the page
$ 0$ 2.50

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 pinggy.io
Nav1% down the page
Logos section of pinggy.io
Logos79% down the page
FAQ section of pinggy.io
FAQ81% down the page
Footer section of pinggy.io
Footer94% down the page

What we found

8 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

objection2 of 2

Compares itself against alternatives comparison table: Feature · Pinggy (Pro) · Ngrok (Personal)
Answers buyer objections It is asking for password. On Windows tunnel cannot reach localhost The command uses SSH.

proof2 of 4

Shows customer logos or a trusted-by claim logos: jupyter, django, apache, drupal, flask
Shows press logos or an as-seen-in claim featured on

offer2 of 2

Offers a free trial or free tier Free Trial
Makes the pricing ladder explicit $3/mo, $10/mo

checkout2 of 2

Offers a demo or docs entry point Documentation
Lead-capture form email, select, text, textarea

What we didn’t find

3 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 see3 of 11 applicable

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

18 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 17 measured checks need work1 could not be measured — not counted either way

Body text size

type:body-text-size

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

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

Form labels

a11y:form-labels

1 of 7 form fields have no label (+1 rely on placeholder only).

FixGive every input a <label> or aria-label; placeholders are not labels.

Named controls

a11y:named-controls

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

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

Oversized images

weight:oversized-images

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

“pinggy_logo.webp” is 1000px wide, displayed at 90px

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

Landmark regions

structure:landmark-regions

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

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

Tap-target size (mobile)

mobile:tap-target-size-mobile

112 of 177 interactive targets are under 44×44px on mobile.

smallest: “(unnamed)” at 14×15px

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

Worth knowing6

Line length

28 paragraphs run past ~95 characters per line.

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

type:line-length
Heading structure

The landing page has 6 <h1> elements (expected 1).

FixUse exactly one <h1> as the page’s title.

a11y:heading-structure
Heading levels

3 headings skip 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
Autocomplete hints

No autocomplete attributes across 2 fields. browsers cannot autofill.

FixAdd autocomplete="email"/"tel"/"name" to identity fields.

forms:autocomplete-hints

Not measurable1

Page weight

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

weight:page-weight

Clear5

Text contrast (WCAG AA) · Mobile viewport · Language declared · Image alt text · Render-blocking resources

Playbook match

1 matched

which funnel play this page runs — measured, evidence-quoted

deriveda deterministic summary generated only from measured facts. labeled, never an LLM guess

Comparison surface matches the Intent-Match pattern — measured comparison table plus comparison-intent copy

comparison table p2: comparison table: Feature · Pinggy (Pro) · Ngrok (Personal)comparison copy Pinggy vs Ngrok: The Best Localhost Tunneling Tools

A match means this funnel's measurable surfaces fit the playbook's pattern — the quoted language is what fired the detection. A lever is one playbook mechanism observed on-page. We never claim what a brand's ads or emails do; a crawl can't see them. All funnel designs →

Two different things sit side by side here. The claim and its quoted evidence are measured on this funnel, the same way every other fact on this page is. The playbook itself is written guidance — our strategy library, not a measurement of this site — and it lives behind the links above. Nothing on this page recommends what this brand should do.

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 %
accent#0b0f19
bg#ffffff
surface#f8f9fa
text#374151
See the roles applied
accent

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

the roles, doing their job
The quick brown fox32px
Jumps over the lazy dog30px
A subheading in their voice28px

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
12pxAa
13pxAa
14pxAa
15pxAa
16pxAa
18pxAa
20pxAa
24pxAa
26pxAa
28pxAa
30pxAa
32pxAa
WEIGHTS
Aa300
Aa400
Aa500
Aa600
Aa700
FAMILIES
Uncut Sans
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

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

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