saas · Sep 15, 2026

keyfire.app

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

5 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-15. 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 54% of them.

Walk 11 links on the entry page, 8 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

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

    Compares itself against alternatives
    comparison grid: 33 rows
    Answers buyer objections
    Is it really free? How is this different from AutoHotkey? Does it phone home? Where does m
    Offers a free trial or free tier
    free forever

    + 2 more with evidence

    See all 5

  2. Not seen

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

    Trusted-by logo wall
    Customer/company logos or a "trusted by / used by" claim.
    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.

    + 3 more

    See what we looked for

  3. Flagged

    4 of 15 build checks flagged, each with a fix

    Text contrast (WCAG AA)
    72% of measurable text passes WCAG AA. 4+ runs fail.
    Body text size
    Smallest sampled text is 9px, below the 13px floor this check uses.
    Landmark regions
    No <main> or <header> landmark. screen-reader users cannot jump between regions.

    + 1 more

    See the fixes

  4. Walked

    2 pages walked, Homepage / Lander to Pricing

    Step 1
    Homepage / Lander
    Step 2
    Pricing

    Walk it frame by frame

  5. In their words

    The headline: Your keyboard can do more than type

    Promise
    Your keyboard can do more than type. Visual hotkeys, macros and text expansion for Windows. Set up in seconds…
    Prices shown
    $ 4

    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 5 conversion tactics detected since 2026-08-09.
  1. 5 tactics 2026-08-09
  2. 5 tactics 2026-08-15
  3. 5 tactics 2026-09-15

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

▼ thinnest
3 tactics

$4

FAQFree trialUsage proof
Pricing
02

Pricing

▲ strongest
4 tactics

$65 +5 more  ·  subscription

ComparisonFAQFree trialPricing tiers

In their own words

27 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
Keyfire — Hotkeys, Macros & Text Expansion for Windows. No Scripting.
Meta description
Your keyboard can do more than type. Visual hotkeys, macros and text expansion for Windows. Set up in seconds, no scripting required. Free to download.
Headline
Your keyboard can do more than type
Section headings
Nine ways to give time back every day.Two clicks to set up. Instant every time.Same result. Three clicks, not three lines of script.Stop re-typing the same things every day.From zero to working hotkey in 60 seconds.The questions you're about to ask.Set a key. Fire it.Two clicks past the SmartScreen warning+7 more, not shown
Buttons and links
Press Ctrl+K to search this pagev1v2DownloadDownload for WindowsDownload the ARM64 buildDownload for Windows · Free
Prices on the page
$ 4

Sections

5 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 keyfire.app
Nav0% down the page
Hero section of keyfire.app
Hero0% down the page
Features section of keyfire.app
Features6% down the page
FAQ section of keyfire.app
FAQ83% down the page
Footer section of keyfire.app
Footer99% down the page

What we found

5 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 grid: 33 rows
Answers buyer objections Is it really free? How is this different from AutoHotkey? Does it phone home? Where does m

proof1 of 4

Puts a number on adoption 153 Teams

offer2 of 2

Offers a free trial or free tier free forever
Makes the pricing ladder explicit free, $8/user

What we didn’t find

6 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 see6 of 11 applicable

Trusted-by logo wall 1,484 of the 2,043 funnels we checked
Press / "as seen in" 642 of the 2,417 funnels we checked
Demo / docs entry 575 of the 1,683 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
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

15 run · 4 flagged

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

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

4 of 15 measured checks need work

Text contrast (WCAG AA)

contrast:text-contrast-wcag-aa

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

worst: “Ctrl” at 1.79:1 (12px, #f0b942 on #ffffff). 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 9px, below the 13px floor this check uses.

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

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

29 of 36 interactive targets are under 44×44px on mobile.

smallest: “v1” at 31×22px

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

Worth knowing6

Line length

3 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
Label in name

1 control has an aria-label that does not contain its visible text, so voice-control users cannot activate it by saying what they see.

FixMake the accessible name start with the visible label text.

a11y:label-in-name
Oversized images

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

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

weight:oversized-images
Keyboard reachability

165 elements look clickable but cannot be reached by keyboard.

FixUse <button>/<a>, or add role + tabindex="0" and a key handler.

structure:keyboard-reachability

Clear5

Mobile viewport · Language declared · Image alt text · Page weight · Render-blocking resources

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#e8a020
accent#e8a020
bg#ffffff
surface#f5f5fa
text#4a4a6a
See the roles applied
accent

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

the roles, doing their job
The quick brown fox64px
Jumps over the lazy dog36px
A subheading in their voice20px

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
7pxAa
9pxAa
10pxAa
11pxAa
12pxAa
13pxAa
14pxAa
15pxAa
17pxAa
20pxAa
36pxAa
64pxAa
WEIGHTS
Aa400
Aa500
Aa600
Aa700
Aa800
FAMILIES
Space Grotesk · DM Sans
rendered in their own type system · webfont not loaded. system fallback if uninstalled

Measured, found none

2 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

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.

Similar crawls