Founding tester program10 spotsFree forever for beta usersEvery paid feature unlockedDirect Slack with the founderApply now
Founding tester program10 spotsFree forever for beta usersEvery paid feature unlockedDirect Slack with the founderApply now
Founding tester program10 spotsFree forever for beta usersEvery paid feature unlockedDirect Slack with the founderApply now
Founding tester program10 spotsFree forever for beta usersEvery paid feature unlockedDirect Slack with the founderApply now

free trial conversion HubSpot

Convert more free trialsIn the 14 days that matter.

The whole game in self-serve B2B SaaS happens in the trial window. What you do in those 14 days is the difference between 8% conversion and 18% conversion. Most teams run that window blind because product data isn't in HubSpot, where the outreach fires from.

The problem with running trial conversion blind

Most B2B SaaS trial sequences are calendar-based. Day 1: welcome. Day 3: tip. Day 7: case study. Day 12: 'your trial expires in 2 days.' Same emails for every user, regardless of whether they've activated, whether they've used the product since signup, or whether they came back yesterday after a week away.

The reason the sequence is calendar-based is that HubSpot doesn't know what's happening in the product. The team running the trial sequence can see open rates, click rates, and email replies. They can't see whether the user invited a teammate yesterday, or whether they hit a usage limit and bounced off the upgrade modal twice. Without that, every email is a guess.

The fix is to put the right product signals on the contact during the trial window: activation status, days since last active, recent key events, and a trial-window score that decays over time. Then branch the trial sequence on those properties so the email sent on day 7 actually reflects what the user did between day 1 and day 7.

What a working trial conversion setup looks like

Five elements. The interesting one is the time-decay score.

A trial-window score that decays

Recent activity weighs heavier than activity from a week ago. Day 1 logins fade, day 12 logins jump out. This is the property the outreach branches on.

Days-into-trial as a property

zo_trial_day (number) updates daily. Workflows can branch on day ranges (early, middle, late trial) without computing dates from signup timestamps.

Activation status segmented outreach

Three populations: never-activated, activated-and-cooling, activated-and-hot. Each gets a different email at each trial-day milestone. No generic blasts.

Behavior-triggered outreach

Bounced off the pricing page twice on day 9? Trigger an AE outreach. Hit a usage limit? Trigger a contextual upgrade prompt. Behavior beats schedule.

Concrete setup walkthrough

Real HubSpot property names, real workflow logic, copy-paste ready.

  1. 1

    Add trial-tracking properties to HubSpot

    Create zo_trial_started_at (datetime), zo_trial_day (number, days since trial start), zo_trial_score (number, time-decayed), zo_activation_status (single-line text: not-activated, activated, cooling), and zo_last_active_at (datetime). Group them under a 'Trial activity' property group so the trial team can find them.

  2. 2

    Configure the time-decay score in Zoody

    Define zo_trial_score in Zoody as a weighted formula: (logins in last 3 days * 5) + (key actions in last 3 days * 3) + (logins in last 7 days * 1) + (activation completed * 20) + (invited teammate * 15). Cap at 100. The 'last 3 days' weighting is what makes the score decay - inactivity drops it naturally as the trial progresses.

  3. 3

    Compute zo_activation_status with rules

    In Zoody, set zo_activation_status to: 'activated' if activation_completed event has fired AND zo_last_active_at within 3 days. 'cooling' if activation_completed AND zo_last_active_at between 3 and 7 days ago. 'not-activated' if activation_completed has not fired. Updates land in HubSpot in real time.

  4. 4

    Build the segmented trial sequence in HubSpot

    Create three workflows enrolled by zo_trial_day = 3, 7, and 12 respectively. In each workflow, branch on zo_activation_status. Day 3 not-activated gets the setup-help email; day 3 activated gets a 'next steps' nudge. Day 7 cooling gets a re-engagement email; day 7 activated-and-hot gets an upsell preview. Day 12 not-activated gets an extension offer; day 12 activated and not converted gets the AE handoff.

  5. 5

    Add the behavior-triggered overlays

    On top of the day-based sequence, add property-trigger workflows. Trigger on 'pricing page visited 2+ times in last 24 hours' to fire an AE Slack alert. Trigger on 'hit usage limit' to send a contextual upgrade email. Trigger on zo_trial_score crossing 70 to promote to SQL ahead of the day-12 milestone. These catch the moments that matter regardless of where the user is in the calendar.

Worked example: Acme

A fictional B2B SaaS, 14-day free trial, $149/mo entry tier.

Acme's trial sequence used to be three calendar-based emails to every signup. They rebuilt it as a segmented sequence powered by these properties:

Trial dayBranchAction
Day 3not-activatedSetup-help email + offer of 15 min onboarding call
Day 3activated'What to try next' email with the most-loved feature
Day 7coolingRe-engagement email + 'we'll save your work' framing
Day 7activated, score >= 50AE outreach via personal email + Slack alert to AE
Day 12not-activated7-day extension offer + onboarding video
Day 12activated, not convertedDirect AE call attempt + upgrade incentive

Behavior overlays on top: any pricing page visit twice in 24 hours triggers a Slack alert to the AE. Any usage-limit hit triggers a contextual upgrade email. Any zo_trial_score crossing 70 promotes early to SQL.

Result after 90 days: Trial-to-paid conversion went from 9.4% to 16.1%. The day-7 AE outreach to activated users with score >= 50 accounted for a third of the lift on its own. Email reply rates on the segmented sequence beat the old generic sequence by 4x.

What this enables

Segmented trial emails

The same calendar slot sends three different emails based on activation status. Generic 'your trial is ending' messaging stops being the only message in the sequence.

Behavior-triggered AE outreach

Pricing page bounced twice on day 9? AE gets a Slack ping with the contact and the trigger. Personal AE email goes out, not a templated drip.

Smart trial extensions

Cooling users who showed any signal in week two get a one-click extension offer. Users who never activated get a different offer. The extension stops being a blanket 'we hope you come back' message.

Frequently asked questions

Why does free trial conversion need its own scoring model?+

Because time matters. A login on day 1 of a 14-day trial is good. A login on day 12 is critical. A standard PQL score that sums lifetime activity won't capture that gradient. Trial scoring needs to weight recent activity more heavily and surface where the user is in their trial window so the right outreach fires at the right moment.

What's a reasonable trial-to-paid conversion rate?+

Industry medians for self-serve B2B SaaS sit around 12-18% trial-to-paid. Below 8% means activation is broken (users aren't reaching value before the timer runs out). Above 25% usually means the trial is too long or pricing is too low. The scoring and outreach pattern in this guide most often moves the needle from 8-12% into the 15-20% range.

Should I send the same outreach to every trial user?+

No. Segment by how they're tracking. Activated and active gets a 'show advanced features' nudge on day 7. Activated but cooling gets a re-engagement email on day 9. Never activated gets a 'help with setup' offer on day 3. Generic 'your trial expires in 3 days' emails work, but they leave most of the value on the table.

Should we extend trials for users who didn't activate in time?+

Sometimes. The honest test: did they fail to activate because the product is hard, or because they got pulled into other work? For the first case, an extension just delays the inevitable. For the second case, a 7-day extension can recover 30-40% of cooled-off trials. Use trial activity (any login at all in the second week) as the signal for whether to extend.

How do I avoid burning trial users out with too many emails?+

Trigger on behavior, not on calendar. A user who's clearly engaged doesn't need a 'how to get started' email. The HubSpot workflow should branch on activation status before sending. Cap the total number of trial-window emails at 4-5. Make each one earn its send.

Stop running trial conversion blind

Beta cohort is hands-on. We help you stand up the time-decay score and the segmented sequence. Most teams see the conversion lift inside the first 30 days.