Marketing

5-Touch Re-Engagement for 500 Stalled Free-Trial Users (Customer.io + Claude)

5-Touch Re-Engagement for 500 Stalled Free-Trial Users (Customer.io + Claude)
Contents

I had 500 trial users sitting at day 4 with no activation event, a CSV full of still-here-but-not-doing-anything accounts, and a deadline I couldn't extend. Here's the sequence I shipped in Customer.io, the three personas Claude wrote it for, and the one instrumentation decision that actually made it work.

Define the activation event before you write a single email

The trap with stalled-trial sequences is treating "logged in" as success. It isn't. A user who opens the dashboard, looks around, and closes the tab is not a user on a path to conversion — they're a user on a path to churn.

Before I touched Customer.io, I sat down and picked one event: project.created. The first thing a user does that the product can't do anything useful without. For a reporting tool it's connecting a data source. For a CRM (Customer Relationship Management) it's importing contacts. For a writing tool it's finishing a draft. Whatever it is, define it with a developer, write it down, and don't let "engaged session" be a substitute.

The rest of the sequence is built around that single event as both the goal and the exit door.

Build the cohort in one SQL

In Customer.io I created a segment called Stalled Trial — Day 3 to 5 with the filter:

event "Signed up" occurred between 3 and 5 days ago
AND has not performed "project.created" anytime
AND has not performed "subscription_started" anytime

The third condition is the one most people forget. If you don't include the conversion event as a filter, your re-engagement flow will keep sending "come back!" emails to people who already paid. That sounds obvious, but I see it in roughly half the trial flows I audit.

The segment updates in real time. Anyone who hits project.created after entering the segment drops out automatically — and that's also how the sequence knows to stop on them (more on that below).

The five touches, in order

I run this as a single Customer.io campaign triggered by entering the segment. The cadence is 48 hours between each email, with a Slack ping on touch 4 if they're in the B2B (business-to-business) price tier.

Touch 1 (Day 3) — The honest "where are you stuck?" Subject: Quick question about your trial

The one email where I ask them to tell me what's wrong. Not a survey — a one-question reply. "Reply with one sentence and I'll send you the exact setup path for it." Reply rates on this are low (1–2%) but the answers are gold. I drop the best ones into a Notion doc and the Claude prompt I use to write future sequences learns from them.

Touch 2 (Day 4) — The friction audit Subject: The 4 things that usually block {{first_action}}

A list of the four most common reasons users in the segment never completed the activation event, each with a one-line fix. No product tour. No "let me show you around." Just: "If it's X, do Y. If it's Z, do W." The B2B exec persona in particular responds to this format better than anything more elaborate.

Touch 3 (Day 5) — One customer who looked like you Subject: How {{similar_company}} got to their first {{first_action}} in 18 minutes

A case study, but a tight one — three paragraphs, one real number, one screenshot. I have Claude generate five versions for each campaign and pick the one that reads least like a case study.

Touch 4 (Day 7) — The objection email Subject: Is this even the right tool for you?

This is the email that gets the most unsubscribes, which is exactly why it works. I literally ask if the product is the wrong fit, and offer a 20-minute call with someone on my team. The 3% who reply are the most valuable leads I get all month.

Touch 5 (Day 9) — The honest close Subject: Your trial ends in 5 days

No extensions offered unless they ask. No "limited-time discount." Just a clear "here's what happens, here's how to convert, here's how to cancel if you want to cancel." Predictability beats persuasion at this stage.

How Claude writes three different versions per touch

I have one Claude prompt that generates all three persona variants for every email. The prompt is locked to a template, and the three inputs that change per persona are:

  • Analyst — Wants the data, the integration, the API (Application Programming Interface) limit, the export format. Tone: precise, technical, no exclamation marks. Subject lines under 50 characters.
  • Maker — Wants to see someone build something in 90 seconds. Tone: energetic, casual, GIFs are fine. Subject lines can run long if they're interesting.
  • Exec — Wants to know it's worth their team's time. Tone: confident, brief, no jargon. Subject lines are full sentences that read like the first line of a memo.

The prompt lives in a Notion doc and is version-controlled. Every quarter I retrain the prompt on the last quarter's reply data. It's not magic, but it gets me to "good enough to A/B test" in 15 minutes per persona instead of an afternoon.

The exit: why the sequence actually stops

The campaign has an exit condition: Has performed "project.created" or "subscription_started" — ever.

That's the whole trick. The moment a stalled user hits their activation event, Customer.io pulls them out of the campaign. No "thanks for reactivating, here's a 10% off coupon" follow-up. They don't need it — they just did the thing. Sending another email at that point is the fastest way to make a freshly-activated user feel like they signed up for a newsletter.

The same logic drops out users who churn completely (unsubscribed, marked spam). The campaign keeps running for everyone still in the cohort, but the list shrinks naturally as people move on.

What I learned

The interesting number wasn't the 9% I moved off zero. It was that 41% of activated users came from touch 4 or 5 — emails I almost cut because they felt too late. The "you haven't done the thing yet" signal stays valid right up to the day before the trial ends, and the people who activate late are not less valuable than the people who activate on day 1.

If I were doing this over, I'd add a sixth touch: a one-question NPS-style (Net Promoter Score, a one-question satisfaction survey) "what would have made you start?" sent the day after the trial ends to anyone who didn't convert. The data from those replies is what the next quarter's sequence is built on.