A 14-Day Onboarding Email Sequence for B2B SaaS
Seven onboarding emails for the first two weeks of a B2B SaaS account, each with a goal, a trigger, a skip rule and a subject line you can adapt today.

On this page(6 sections)
- The three rules behind the sequence
- The sequence at a glance
- Email by email
- Day 0: Welcome
- Day 1: Setup nudge
- Day 3: First result
- Day 5: Invite the team
- Day 8: Use case deep-dive
- Day 11: Check-in from a person
- Day 14: Progress summary
- Suppression: the part most sequences get wrong
- Measuring whether it works
- Key takeaways
The first two weeks of a B2B account decide most of what happens next. A good onboarding sequence doesn't try to say everything in that window; it makes sure each new account takes the next useful step, and then gets out of the way.
Below is a seven-email plan for days 0 to 14. Treat it as a skeleton: rename the steps to match your product, but keep the structure of goal, trigger and skip rule for every message.
The three rules behind the sequence
Every email has one goal. If you can't name the single action an email exists to produce, it shouldn't be sent.
Every email has a skip rule. If the user has already done the thing an email asks for, the email must not go out. Nothing erodes trust faster than "Have you connected your data yet?" arriving the day after they did.
Every email can be replied to. B2B buyers ask questions by replying. Send from an address a person reads.
The sequence at a glance
| Day | Goal | Skip if | |
|---|---|---|---|
| 0 | Welcome | Complete the first setup step | Never skip |
| 1 | Setup nudge | Finish core setup | Setup already complete |
| 3 | First result | Reach the first meaningful output | Output already produced |
| 5 | Invite the team | Add a second user | Workspace has 2+ active users |
| 8 | Use case deep-dive | Adopt the workflow that predicts retention | Workflow already used |
| 11 | Check-in from a person | Surface blockers | Account talking to sales or support already |
| 14 | Progress summary | Show value, set up the decision | Never skip, but adapt content |
The days are starting points. If your product's time-to-value is an afternoon, compress the first three emails into the first 48 hours. If it's a two-week integration, stretch them.
Email by email
Day 0: Welcome
Goal: finish the first setup step, such as connecting a data source or creating a project. Trigger: account created, sent within a minute. Subject: "Your workspace is ready. Next: connect your first data source"
Keep it short, link straight to the unfinished step, and include a login link for people who signed up on another device. We wrote a whole post on the welcome email that earns a second login.
Day 1: Setup nudge
Goal: complete core setup. Trigger: 24 hours after signup and setup still incomplete. Subject: "Two minutes left to finish setting up"
Name where they stopped. "You created a project but haven't imported any records" beats a generic reminder. Offer one alternative path, such as a CSV template or a sample dataset, for people stuck on the main one.
Day 3: First result
Goal: produce the first output that shows the product working: a report, a sent invoice, a deployed check. Trigger: day 3, setup complete, no output yet. Subject: "See your first report in under five minutes"
Show what the output looks like, ideally with a screenshot description or a short example, and link to the screen that creates it. If setup is still incomplete on day 3, send a different version that addresses setup instead of skipping straight to results.
Day 5: Invite the team
Goal: a second active user in the workspace. Trigger: day 5, exactly one active user. Subject: "Who else on your team should see this?"
In B2B, a workspace used by one person is fragile. If that person changes jobs or gets busy, the account goes quiet. Explain what changes when a colleague joins, and open the invite dialog from the button.
Day 8: Use case deep-dive
Goal: adopt the one workflow your best customers rely on. Trigger: day 8, workflow not yet used. Subject: "How teams use scheduled reports to stop chasing updates"
This is the only email that's allowed to teach. Pick one workflow, explain the problem it solves, and show the three steps to set it up. Don't make it a feature list.
Day 11: Check-in from a person
Goal: surface blockers you can't see in usage data. Trigger: day 11, account not already in conversation with your team. Subject: "Quick question about your setup"
Plain text, signed by a real person, and short:
Hi Sam, I noticed your team set up two projects last week. Is there anything getting in the way of using it day to day? If it's easier, reply with one line and I'll take it from there.
Dana
If the account is already in a sales conversation or has an open support thread, skip this one. Two humans emailing the same customer in the same week looks disorganized.
Day 14: Progress summary
Goal: show what the account achieved and set up the next decision, whether that's converting a trial or expanding. Trigger: day 14. Subject: "Your first two weeks: 3 projects, 412 records, 2 teammates"
Use the account's real numbers. List what they set up, what's still unused, and what happens next, including any trial end date and price stated plainly.
Suppression: the part most sequences get wrong
Skip rules only work if the email system knows what the user has done. That means the decision to send has to be made at send time, from current product data, not when the sequence was scheduled.
A simple pattern in your own code:
def should_send(account, email_key):
rules = {
"setup_nudge": lambda a: not a.setup_complete,
"first_result": lambda a: a.outputs_count == 0,
"invite_team": lambda a: a.active_users < 2,
"deep_dive": lambda a: not a.used_scheduled_reports,
"human_checkin": lambda a: not a.has_open_conversation,
}
rule = rules.get(email_key)
return rule(account) if rule else True
Run that check right before each send, record that the email was sent so it can't go twice, and send through whatever transactional API or SMTP relay your app already uses.
Measuring whether it works
Opens are unreliable because many mail clients now load images automatically. Measure the goal of each email instead:
- Day 0 and 1: percentage of accounts completing setup within 48 hours.
- Day 3: percentage reaching the first result within a week.
- Day 5: percentage of workspaces with two or more active users by day 14.
- Day 11: reply rate, and what the replies say.
Change one email at a time and compare cohorts, rather than rewriting the whole sequence and guessing which part mattered.
Key takeaways
- Seven emails over fourteen days is plenty, provided each one has a single goal.
- Every email needs a skip rule checked against live product data at send time.
- Use real account data in the copy: where they stopped, what they've built.
- One email should come from a person and ask a question, and someone must answer the replies.
- Measure product outcomes for each email, not opens.
Start with Koltrix
Your domain, one inbox, and an API that sends.
A team inbox where AI sorts and drafts (nothing is sent without your click), plus the transactional API and SMTP relay your product sends with. 7 days free, no card.


