SaaSAvailable with Expose
See your real trial funnel.
Signup bots create trials that never activate, and every one costs infrastructure. Label each signup, and measure activation and trial cost on people and real agents.
For SaaS teams with self-serve trials.
Where 5,000 trials went
- Trials startedTrials started: 5,000
- Automated trialsAutomated trials: 750
- Real trialsReal trials: 4,250
- Infrastructure on automated trialsInfrastructure on automated trials: $6,000
Human 80%Agent 3%Bot 12%Unknown 5%
Where money is affected
Fake trials cost money and hide your real activation rate.
Each trial provisions a workspace, sends emails and often grants usage. Automated signups spend that budget and drag your activation rate down.
Agents doing onboarding for a real person are not the problem. Expose labels them separately so you can decide.
The real picture
The funnel, two ways.
Illustrative example Hypothetical figures; your own numbers will differ.
Your numbers
What it could mean for you.
Replace the example with your own figures.
- Spend on automated trials
- $6,000
- Activation rate on real trials
- 11.8%
- Real trials
- 4,250
Spend on automated trials = trials × share × cost per trial. Real activation = activated ÷ real trials.
Illustrative example Your numbers, not a promise. Savings depend on the decisions you make with the evidence.
An example decision
One signup, labelled.
- a7f3k@tempmail.example
- Session
- bot · confidence high
- Policy
- Verify likely bots
- Workspace
- Not provisioned until verified
Real people sign up as before. The bot never costs you a workspace.
How it fits
From evidence to a decision.
- 01
Install the script
Paste the snippet or use the CLI.
- 02
Pick the profile
data-profile="saas" protects signup.
- 03
Verify on the server
Check the signed token before provisioning.
- 04
Measure in HQ
Compare trials and activation by actor.
What your team can do
Act on it, your way.
Verify before provisioning
Hold workspaces for likely bots.
Clean your funnel
Report activation on people and real agents.
Keep agent onboarding
Let agents finish setup for a real person.
Before you start.
Will real users see a challenge?
Only if your policy asks for one. By default sessions are tagged, not blocked.
What about agents signing up for someone?
They are labelled as agents, separately from bots. You decide how to treat them.
Does this stop API abuse too?
API calls need server-side evidence; see the free-credit and API abuse use case.
What about sessions you cannot classify?
They stay unknown, and are not counted as bots.
Set up for SaaS
Trials from people. Everything else, labelled.
Separate real signups from signup bots and from agents doing someone’s onboarding.
signup | Challenge likely bots |
login | Step-up |
Everything else is tagged, never blocked, unless you say so.
What you get
A clean trial funnel
The label lands in Segment, Mixpanel, PostHog and Amplitude as a property you can filter on.
SegmentFewer fake accounts
Likely bots are challenged on signup. Guard the route on your server with requireHuman.
Verify tokens on your serverSafer logins
Automated sessions get a step-up on login instead of a free pass.
Site profilesAgent usage, measured
See which agent families use your product, and how often.
The portal
Where the label goes
Other covers
- E-commerceHonest conversion rates. Agents can still check out.
ecommerce - Content and mediaReal readership. Agent traffic, named.
content - Fintech and paymentsStep-up instead of deny. The verdict rides on the payment.
fintech - TicketingTighter thresholds at checkout.
ticketing - Lead generationA cleaner CRM and honest cost per lead.
leadgen
Available with Expose