Slack onboarding workflow
Slack onboarding workflow: the end-to-end flow that moves the activation number
A Slack onboarding workflow is the ordered sequence of automated and manual touches that takes a new member from “they joined” to “they posted, returned, and stayed.” The good ones are short, branch on something the new member tells you, and escalate to a human when the signal goes silent. The bad ones are long, fire the same messages at everyone, and leave the operator no clearer on who actually activated.
TL;DR
Three touches, not seven. Day 0: personalised DM with a one-line ask + a goal-track question. Day 3: conditional nudge keyed to the stated goal — only fires if day-0 checklist is incomplete. Day 7: human-escalation list for the operator (three names, not a dashboard). Foothold runs this exact workflow on every join; the copy-paste templates are the same shape if you want to send by hand.
The end-to-end workflow at a glance
Every new member walks the same shape of path: a join event fires, a DM lands, a checklist either completes or stalls, a nudge either lands or does not, and at the end of week one either the member has activated, gone quiet, or churned silently. The workflow makes that path visible and acts on it.
Step 1 — Join event
Trigger: Slack team_join event fires
The Slack Events API emits a team_join the moment a new member is provisioned in the workspace. The workflow subscribes once at install and runs from that event forward; no operator action is required after install.
Step 2 — Day-0 personalised DM
Window: within 60 minutes of join
One DM, from the operator’s Slack handle, not a generic @CommunityBot. The new member needs to recognise the sender’s avatar and name; if they do not, they will treat every subsequent message from that sender as bot noise. The DM names the member, names the community, and asks for one small action: post a one-line intro in #intros, pick a goal track, subscribe to two channels. Full template here.
The single most important word in this DM is the goal-track question. It produces a structured piece of data per member that day-3 conditions on; it also produces a real reply, and once a new member has replied to a DM in Slack, the bar to post in a public channel drops noticeably.
Step 3 — Checklist tracking
Window: continuous, day 0 through day 7
The workflow watches three completion signals: did the member post in #intros, did they reply with a goal track, did they subscribe to two channels. Each signal writes a row keyed on member ID. By day 3 the system has a clear picture of who is on track and who has stalled.
Step 4 — Day-3 conditional nudge
Window: day 3, only if checklist is incomplete
If the checklist is complete by day 3, send nothing. If it is incomplete, send one nudge keyed to the goal track the member picked at day 0. Not a blanket reminder — the new member already knows they have not posted. A goal-keyed nudge gives them two specific threads from this week that match their stated goal, with a smaller bar than “write your own post.”
Members who already activated do not get the nudge. This is the single most common workflow bug: every operator who builds the day-3 step by hand eventually forgets the conditional and sends the nudge to a member who already posted. The bot mute follows immediately after.
Step 5 — Day-7 operator escalation
Window: end of day 7, sent to operator
One email to the operator, not the member. Four numbers: joined, activated (posted at least once), at-risk (incomplete checklist at day 7), stalled (no Slack open after day 5). Three names, with the goal track the at-risk member picked, so the operator knows what to anchor a personal DM around. This is the human-escalation point the workflow exists to surface; the bot has done what it can, now a human takes over for three specific members per cohort.
Branching by stated goal
The goal-track question at day 0 is the workflow’s only real branch. It splits new members into three behavioural archetypes — lurkers, contributors, and askers — each of which converts on a different signal. Sending the same day-3 nudge to all three is the equivalent of sending the same email to a free-trial user, a paying customer, and a churned account: it works for none of them.
| Goal track | Day-3 nudge angle | What “activated” means here |
|---|---|---|
| Find peers | Two threads from members at the same career stage; ask is “reply with one line about what you’re trying to figure out.” | One reply on a peer thread, or a posted intro in #intros that names a stage. |
| Get feedback | Two threads where someone is asking for feedback this week; ask is “drop the same kind of question of your own; the community responds well to specific asks.” | Posted a feedback-shaped question of their own. |
| Hire / be hired | One thread in the hiring channel; ask is “subscribe to #hiring and post a one-line bio.” | Posted in the hiring channel or subscribed to it. |
If the member did not pick a goal at day 0, they get the “find peers” default at day 3. It is the lowest-bar option, has the broadest content-fit, and produces the highest reply rate from members who slept on the goal-track question.
Why three touches and not seven
It is tempting to add a day-1 reminder, a day-2 channel-tour, a day-5 checklist re-prompt, a day-10 milestone celebration. Each one feels like an additional opportunity to engage. In practice, the more touches in week one, the more the bot reads as spam — and once a new member mutes the bot, the day-7 scorecard signal collapses, because muted-bot members no longer map cleanly onto the operator’s mental model of who is active.
Three is the empirical sweet spot operators we have spoken to converge on. One DM the new member recognises and reads. One conditional nudge they appreciate because it is targeted. One escalation that brings a human into the loop for the at-risk cases. Anything beyond that pushes activation rate down, not up.
When to escalate to an ambassador DM
The workflow does not pretend a bot can solve every drop-off. The day-7 escalation is the explicit acknowledgment that three of every twenty new members will not respond to anything automated; their week-one drop-off is solvable only by an operator or trusted ambassador sending a real human DM. The workflow makes those three names visible — with the goal track each picked — so the operator knows what to anchor the conversation around. The DM the operator sends in response is not in the workflow; it is the workflow’s exit point into the relationship layer that does not automate well.