TapCub is live — analytics, insights and live chat, free on one platform

SaaS analytics Why do trials never subscribe?

The SaaS template treats the account as the subject. Members’ clicks roll up to the company, real use of the core feature is the value moment, and subscription revenue from your billing system closes the loop with MRR.

  • Account = group, members roll up
  • feature_used as the value moment
  • MRR, upgrades and churn from billing
app.tapcub.com
DashboardsSaaS growthLast 12 monthsFilterExport

Signups

1,842

▲ 11.2%

Trial conversion

18%

▲ 2.4 pts

Subscriptions

212

▲ 9.6%

New MRR

$12,400

▲ 14.1%

Signups and subscriptions

SignupsSubscriptions
JanMarMayJulSepNov
Sample data
The problem

Three gaps between signup and revenue

Product, growth and finance each hold one piece. The template puts them on one board.

Signups that never activate

Onboarding completion is unknown because nobody sends the last step. The funnel ends at signup.

Watch: Onboarding completion

Features installed, not used

Usage by feature is a database query someone runs quarterly. feature_used makes it a daily chart per account.

Watch: Active feature users

Churn found at invoice time

Cancellations arrive from billing after the fact. Account-level retention shows the quiet weeks before.

Watch: Subscription churn rate

Template metrics

Nineteen metrics from signup to churn

Signup, activation, adoption, trial, subscription, expansion and churn. Names match the console after install.

MetricDefinitionFormatDashboards
SignupsUNIQUES(signed_up)NumberSaaS growth
Logged-in usersUNIQUES(logged_in)NumberAdoption and retention
Onboarding completionUNIQUES(onboarding_complete) / UNIQUES(signed_up) * 100PercentAdoption and retention
Feature usesTOTALS(feature_used)NumberSaaS growth
Adoption and retention
Active feature usersUNIQUES(feature_used)NumberSaaS growth
Adoption and retention
Uses per userTOTALS(feature_used) / UNIQUES(feature_used)Number—
Trials startedTOTALS(trial_started)NumberSaaS growth
Signup-to-trial rateUNIQUES(trial_started) / UNIQUES(signed_up) * 100Percent—
SubscriptionsTOTALS(subscription_started)NumberSaaS growth
Trial conversionTOTALS(subscription_started) / TOTALS(trial_started) * 100PercentSaaS growth
New MRRPROPSUM(subscription_started.mrr)CurrencySaaS growth
Expansion MRRPROPSUM(subscription_upgraded.mrr_delta)Currency—
Payments collectedPROPSUM(payment_succeeded.amount)CurrencySaaS growth
Adoption and retention
Invites sentTOTALS(invite_sent)Number—
Invite acceptanceTOTALS(invite_accepted) / TOTALS(invite_sent) * 100PercentAdoption and retention
Cancelled subscriptionsTOTALS(subscription_cancelled)Number—
Churned MRRPROPSUM(subscription_cancelled.mrr)CurrencyAdoption and retention
Subscription churn rateTOTALS(subscription_cancelled) / TOTALS(subscription_started) * 100PercentAdoption and retention
Support ticketsTOTALS(support_ticket)NumberAdoption and retention

Metric names and formulas come from the industry pack. TOTALS counts events, UNIQUES counts people, PROPSUM adds up a property. Every figure on this page is sample data.

Dashboards the template installs

Each dashboard is a set of cards: KPIs, funnels, trends, retention, distributions and breakdown tables. Edit, duplicate or share them after install.

SaaS growth

10 cards on this board

4 × KPI2 × funnel1 × trend1 × retention2 × table

Metrics on this board

Signups · Trial conversion · Subscriptions · New MRR · Trials started · Active feature users

Adoption and retention

10 cards on this board

5 × KPI2 × trend1 × funnel1 × distribution1 × table

Metrics on this board

Active feature users · Onboarding completion · Invite acceptance · Subscription churn rate · Feature uses · Payments collected

Funnel

Signed up, completed onboarding, used the core feature

The activation funnel has a 7-day window. The −46% badge marks the step between onboarding and the first real use.

app.tapcub.com
FunnelsSignup-to-activation funnelLast 30 daysUsersSessions

Signup-to-activation funnel

7-day window

Signed up

2,400

Onboarding complete

1,248

Feature used

674

Sample data

Break down by plan

plan is a property on signed_up. Compare activation for self-serve and sales-assisted plans in one chart.

Count accounts, not people

Switch the funnel to the account group. Three members from one tenant become one account that did or did not activate.

Thirty days for trial to paid

The trial-to-paid funnel uses a 30-day window, so a trial that converts on day 28 still counts.

Also in the pack

  • Trial-to-paid funnelSigned up → Trial started → Subscription started · 30-day window
  • Invite funnelInvite sent → Invite accepted · 14-day window
How teams use it

What SaaS teams put on the board first

Activation, adoption per account, expansion and the churn warning.

Use case 1

Measure activation as a real step

onboarding_step and onboarding_complete give the funnel its middle. feature_used with a stable feature key is the value moment the whole template is built around.

  • Signup-to-activation funnel, 7-day window
  • Onboarding completion rate as a KPI card
  • Path analysis for signups that never activate
app.tapcub.com
FunnelsActivationLast 30 days

Signup-to-activation funnel

7-day window

Signed up

2,400

Onboarding complete

1,248

Feature used

674

Sample data
Use case 2

See adoption per account, not per click

Every member’s feature_used rolls up to group=account. The account ranking shows which tenants are deep in the product and which ones logged in once.

  • Account ranking: active users, feature uses, payments
  • Health score from usage and tickets
  • Segments on account properties: plan, seats, industry

Example scenario: Orbit Media paid for 22 seats and used the product 58 times in a month. Customer success called before the renewal, not after.

app.tapcub.com
SaaS growthAccountsLast 30 days

Account ranking

Last 30 days
AccountPlanActive usersFeature usesPayments
Northwind LabsTeam141,860$1,190
Acme RoboticsBusiness311,420$2,940
Blue HarborTeam6640$590
Kestrel HealthTrial392—
Orbit MediaBusiness2258$1,980
Sample data
Use case 3

Track expansion and churn in MRR

subscription_started, subscription_upgraded and subscription_cancelled each carry an MRR figure. New, expansion and churned MRR sit on one trend, next to payments collected.

  • New MRR and churned MRR trends
  • Cancellation reasons as an enum property
  • Invite funnel for team expansion
app.tapcub.com
Adoption and retentionMRRLast 30 days

Payments collected vs churned MRR

PaymentsChurned MRR
JanMarMayJulSepNov
Sample data
Use case 4

Catch the quiet account before it cancels

Weekly retention after signup, counted per account, drops two weeks before the cancellation arrives from billing. An alert on the segment gives success a head start.

  • Signup retention by week, per account
  • Alert: paid account with zero feature_used in 14 days
  • Support tickets on the same profile
app.tapcub.com
SaaS growthRetentionLast 30 days

Account retention after signup (weeks)

Signup cohortAccountsW1W2W3W4
Sep 1 week212100%64%51%46%44%
Sep 8 week236100%66%53%48%
Sep 15 week198100%61%50%
Sep 22 week241100%69%
Sample data
Analytics × Chat

Reach the trial that stalled, before day 14

A trial account on day 9 has not used the core feature. The context card shows the plan, seats, last login and the onboarding step they stopped at. The invite offers help with that exact step.

  • Proactive invite for trials idle on the setup page
  • Context: plan, trial day, seats, last feature used
  • AI answers setup questions from your docs, then hands off to success

Example scenario: Trials that received a day-9 invite converted at 27% versus 16% for trials that did not. Same plan, same source mix.

app.yourtool.com/settings/integrations
InboxKestrel Health · trialLiveAuto-translateAssign to me

Account context

Plan
Trial · day 9 of 14
Seats
3 members
Last step
Connect data source
Last login
2 days ago
Source
Google Ads · brand
  • /signup
  • /onboarding/2
  • /settings/integrations
  • /docs/connect
app.yourtool.com/settings/integrations
TC

Sam · Customer success

Hi! Looks like the data-source step is giving you trouble. Want me to connect it with you now? Takes about four minutes.

Sample data
Events

Thirteen events, three required

Browser events for onboarding and feature use; billing events from your server with the invoice number as insert_id.

EventNameWhen to sendRequired propertiesSource
signed_upRequiredSigned upWhen an account is created; from your server with login_id so earlier anonymous behaviour merges.—Server Web
logged_inLogged inOn each login, any platform.—Server Web App
onboarding_stepOnboarding stepEach step of the setup flow, with a step name and index.stepWeb App
onboarding_completeOnboarding completeOnce, when the last setup step is done.—Web App Server
feature_usedRequiredFeature usedOne event per use of a core feature; feature is a stable English key.featureWeb App
invite_sentInvite sentWhen a member invites colleagues; count if several at once.—Web App Server
invite_acceptedInvite acceptedFrom your server when the invitee joins.—Server
trial_startedTrial startedFrom your server with plan and trial_days.planServer
subscription_startedRequiredSubscription startedFrom billing on first paid subscription; mrr normalised to monthly.planmrrServer
subscription_upgradedUpgraded or seats addedFrom billing with from_plan, to_plan and mrr_delta.—Server
payment_succeededPayment succeededEach paid invoice; insert_id = invoice_id.invoice_idamountServer
subscription_cancelledSubscription cancelledFrom billing with mrr and a reason code.—Server
support_ticketSupport ticketWhen a ticket is opened, with category and priority.—Web App Server

Event names, required properties and sources come from the pack. Events marked Server must be sent from your backend; use insert_id to de-duplicate orders and invoices.

Scenarios

Two product teams, two boards

Illustrative scenarios, not reviews.

We never wrote a tracking plan. Autocapture collected the clicks, AI named them, I confirmed six events in the inbox. The activation funnel worked the same afternoon.

JL

J. L.

Product manager · B2B SaaS

AutocaptureActivation

Trial conversion by plan was 31% for Team and 9% for Business. Business trials never reached the integration step. We moved it to day one.

PR

P. R.

Growth · developer tools

Trial conversionOnboarding

Illustrative scenarios written from the user’s point of view. Not real reviews.

FAQ

Questions about this solution

Still have a question?

Chat with the team behind TapCub — we usually reply within a few hours on business days.

What does the SaaS template install?

Thirteen events, nineteen metrics including onboarding completion, trial conversion, new and churned MRR, three funnels and two dashboards: SaaS growth and Adoption and retention.

How are companies counted?

Call group(‘account’, tenantId) after login. Members’ events attach to the account, so funnels, retention and rankings can be read per company. A member can belong to several accounts.

Which events must come from the server?

subscription_started, subscription_upgraded, payment_succeeded, subscription_cancelled, trial_started and invite_accepted. They are marked Server in the event table and should be sent from your billing webhook.

What is the value moment?

feature_used with the feature key you consider the core action. The activation funnel and the product health score are both built on it.

Does onboarding need a tracking plan?

Autocapture records the clicks; the inbox suggests names. Confirm onboarding_step and onboarding_complete there, or send them explicitly from your app.

Can finance see MRR without product data?

Yes. Seats can be limited to the SaaS growth dashboard. Payments collected and churned MRR come straight from billing events.

Get started

Install the SaaS template

Create a project, add the snippet to your app, call group() after login and send billing events from your server. The growth board fills in as the first trial converts.

  • 13 events
  • 19 metrics
  • 3 funnels
  • 2 dashboards

Free plan included. Server SDKs for Node, Python, PHP and Go.