Community launch & recovery

The over-built launch: how a RevOps paid Slack community recovered from 15 channels, $39/month, and 22% monthly churn

At the 90-day mark, Kieran had 78 members in his paid Slack community for revenue operations leaders. Seventeen of them had posted in the last 30 days. Sixty-one had either cancelled or gone silent. Monthly churn was 22%. MRR was $1,872. None of this was for lack of effort. Before the first member joined, Kieran had spent three weekends configuring the community: fifteen channels, a $39/month price, a 14-day free trial, a Workflow Builder welcome sequence, and a Zapier automation that sent a day-3 nudge DM to every new member. He had built a community. What he had not built was a reason for the first 20 people to stay. This is the full account of what went wrong, how the diagnosis happened, what the rebuild looked like, and what the numbers were at day 90 of the second attempt.

What was built before launch

Kieran is a revenue operations consultant who has worked with mid-market B2B SaaS companies for eight years. His ICP is narrow and defensible: RevOps leads and heads of revenue operations at companies between 80 and 400 employees, the operators who own the CRM, the sales process documentation, the quota-setting model, and the analytics layer that sits under a VP of Sales. These are specialists who have no professional community that is specifically theirs — most of them operate in isolation inside their companies, attend generic ops-adjacent conferences, and learn from generalist revenue newsletters that are not tuned to their specific decision layer. Kieran knew this audience well because he was functionally one of them. The problem he was solving was real.

The pre-launch configuration he built was thorough in the way that a software engineer builds a product before talking to users: comprehensive, internally consistent, and calibrated on assumptions rather than observations. The channel structure reflected every topic Kieran thought RevOps leads would want to discuss:

Each channel had a pinned description and a handful of seed posts Kieran had written in advance. The pricing was $39/month — a number he chose because it felt accessible: “less than a Netflix subscription and one espresso meeting.” He offered a 14-day free trial, no credit card required on signup. The Zapier sequence sent a welcome DM at join time (triggered by a Memberful webhook) and a day-3 nudge to every member unconditionally. He spent three weekends on the configuration. The day before launch, the workspace looked ready: clean, organised, full of structure. What it did not look like was a place where a specific conversation was already happening.

The first 30 days

The launch was a LinkedIn post and personal outreach to 40 people in Kieran’s network. Twenty-two members joined in the first two weeks, eleven via personal outreach and eleven through the LinkedIn post. In week one, the activity looked promising: 15 members posted in #intros, 8 posted in other channels, 3 had conversations that ran more than four replies. Kieran was replying to everything personally and the community felt alive.

By day 30, the pattern had already fragmented. Of the 22 original members, 9 had not posted since their intro. Four had cancelled their free trial during the trial period without converting. Of the 18 who had converted to paying, 5 had cancelled in the first 30 days. The conversations that had started in week one had not attracted follow-on contributions from the non-intro members. Most of the engagement was concentrated in #general rather than in the topical channels, which sat nearly empty. The Zapier day-3 nudge had gone to all 22 members — including the 8 who had already posted in #general — producing a false-positive rate of 36% in the first cohort.

Kieran’s response was to double down on content: he posted more frequently in #crm-ops and #rev-analytics, wrote a 600-word thread in #resources, and emailed the 9 inactive members asking if they needed help getting started. Two replied. One posted once more and then went quiet. The diagnosis at day 30 was not “the community is failing” — it was “we need more members to get the conversations going.”

That framing drove the next 60 days. Kieran focused on acquisition: another LinkedIn post, an outreach campaign to RevOps-adjacent newsletter readers, and a post in a larger RevOps Slack workspace that produced a spike of new joins. By day 90 he had 78 total members. The activity rate had not changed.

The 90-day data

78
Total members joined
17
Active (posted last 30 days)
22%
Monthly churn rate
$1,872
MRR
11.2
Avg days to first post
41%
Free trial → paid conversion

The 17 active members were carrying the community. They were the ones who posted, replied, and kept the conversations in #general from disappearing. The 61 inactive or churned members had each gone through a similar sequence: joined, posted an intro (or not), looked at the channel list, opened one or two channels that were quiet, and gradually stopped opening Slack. In post-cancellation outreach Kieran ran after day 90, the most common reason given for cancelling was “nothing was happening when I showed up.” Not “nothing is happening in this community” — “nothing was happening when I showed up.” The timing and the member’s arrival moment was the issue, not the community’s aggregate activity.

The diagnosis: four compounding root causes

Kieran spent a week auditing the 90-day data before deciding what to do. The audit produced four distinct root causes, each of which was independently harmful and which interacted to make the failure mode worse than any single cause would have produced on its own.

Root cause 1: over-channelling

Fifteen channels distributed posting volume across so many surfaces that every channel looked abandoned to a new member arriving for the first time. In the first 30 days, the community generated roughly 180 total posts. Spread across 15 channels, that averages 12 posts per channel for the month — 3 posts per channel per week. A channel with 3 posts per week is not a place a new member is incentivised to post in; it is a place they read twice and forget to open again. The five channels that would have concentrated the same 180 posts would have averaged 36 posts each per month — a volume that creates visible, ongoing conversation. The over-channelled workspace didn’t just spread activity thin; it made the community feel like a project that hadn’t launched yet, regardless of how many members were technically inside it.

Root cause 2: underpricing created the wrong commitment signal

At $39/month, each member had $39 of skin in the game. This is not nothing, but it is also not enough to create a meaningful switching cost or a compelling reason to allocate time to the community when work is busy. The members who churned in months one and two did so without negotiating, without requesting a hold, and without emailing Kieran to discuss. The decision to cancel was as frictionless as the decision to join had been. A member who pays $129/month for access to a professional community is materially invested in making it work for them — they ask questions they would otherwise have sat on, they introduce themselves to other members, they re-engage after a quiet week because the value of the active membership is worth recovering. At $39/month, the default behaviour when the community goes quiet is to cancel and come back if it improves; at $129/month, the default behaviour is to make it stop going quiet.

Root cause 3: free trials diluted the first cohort

Of the 78 members who joined, 31 were on free trials at some point during the 90-day window. The free trial norm created two problems. First, 14 of those 31 trial members never converted — they tested the community, found it too quiet to evaluate fairly (the chicken-and-egg problem: the community was quiet partly because it was full of trial members who weren’t investing), and left without paying. Second, the converting trial members arrived with a “I tried it first and decided it was worth paying” mental model, which is the correct model for a SaaS product but the wrong model for a community. Communities are not experienced during a trial in the same way software is. The value of a paid community depends on the depth of relationships built over time, which a 14-day window cannot surface. Trial members who converted after two weeks had not experienced the community’s actual value proposition; they had experienced the activity level of the first two weeks, which was the highest-activity period because Kieran was manually seeding everything. When month one normalised to Kieran-not-seeding-everything, the conversion cohort churned at higher rates than members who had joined via personal outreach with a direct commitment.

Root cause 4: automation without a proven playbook

The Zapier automation sent a day-3 welcome DM to every new member unconditionally. By day 90, the false-positive rate — the percentage of members who received the day-3 nudge after already having posted — was 58%. This is consistent with the community’s 7-day activation rate: if 42% of members posted in their first week, and the nudge went to all members at day 3, then roughly 42% of nudges went to members who were already active. These members received a message telling them to introduce themselves to a community they had already introduced themselves in, sent by an automated bot that did not know they had done so. Seven members replied to this nudge with some version of “I already posted?” — a polite signal that the bot had broken the illusion of personal attention that Kieran was working to create. Three of those seven cancelled within two weeks of the false-positive nudge. The automation had not been built on top of a tested manual sequence; it had been built on Kieran’s pre-launch assumptions about what the day-3 message should say and who it should go to.

The rebuild decision

Kieran’s first instinct after the 90-day audit was to wind the community down. The second instinct was to keep growing it and hope that more members would solve the activity problem. Both instincts were wrong. The correct read of the data was that he had 17 people who had found the community genuinely useful and were staying. That was enough to build from, but only if the underlying structure that was producing 22% monthly churn was changed before any new members arrived. Adding more members to a community with 22% monthly churn is pouring water into a leaking bucket; the growth marketing budget cannot outrun the structural failure. The rebuild had to happen before any acquisition work resumed.

Kieran planned a four-phase rebuild to be executed over 10 days, with no new member acquisition until phase four was complete and the core community structure was proven stable for one full month. The phases were: (1) channel reduction, (2) pricing restructure with grandfathering, (3) trial and automation removal, and (4) reactivation outreach. He announced the rebuild to the 17 active members in a post in #announcements before any changes happened, explaining each change and the reasoning behind it. Twelve of the seventeen replied. None of them cancelled.

Phase 1: channel reduction

Phase 1 — days 1–3

From 15 channels to 5

Killed: #crm-ops, #rev-analytics, #quota-and-comp, #sales-process, #toolstack, #hiring, #deals, #off-topic, #resources, #ama-requests, #job-board. Kept: #announcements, #intros, #general, #revops-strategy (renamed and consolidated from the topical channels), #feedback.

The consolidation logic: #revops-strategy replaced the eight topical channels with a single surface for substantive RevOps discussion. The eight dead channels, when merged, had produced an average of 1.8 posts per day across all eight — which, consolidated into one channel, is a level of activity that looks and feels active rather than abandoned. #resources, #ama-requests, and #job-board were killed entirely because they had produced no content from members — only from Kieran. Channels that require the operator to supply content are not community channels; they are newsletters with a Slack interface.

The channel archive was executed with a pinned final message in each killed channel pointing members to #revops-strategy. Kieran posted in #announcements five days before the archive, explaining which channels were being merged and why, with the specific framing: “I over-built the channel structure before I understood how you all actually use this space. Here is what I learned and what I am changing.” The framing mattered. It positioned the change as operator learning, not as a scaling-down that implied the community was shrinking. On the day of the archive, Kieran seeded #revops-strategy with two substantive posts: a question about quarter-end CRM hygiene processes and a framework for evaluating new sales engagement tools. Both generated replies within four hours from the active cohort.

For an in-depth look at how channel structure determines whether a Slack community drives engagement or dilutes it, the guide on how to start a paid Slack community covers the five-channel structure that works at launch and the signals for when topical channels should be added — which for most communities is a threshold of 15–20 posts per day in #general over three consecutive weeks, a volume few communities reach before 100 members.

Phase 2: pricing restructure with grandfathering

Phase 2 — days 3–5

From $39/month to $129/month, with founding-rate grandfathering

Price raised from $39/month to $129/month. All 17 active members grandfathered at $39/month permanently as long as they remain members. Inactive and churned members reachable via Memberful email offered the same grandfathered $39 rate permanently if they reactivated within 30 days.

Expected outcome: 2–4 of 17 active members to cancel on the price announcement. Actual outcome: 0 cancellations from the active cohort on the announcement. 1 cancellation in the 30 days after, not attributed to the pricing change in the exit survey.

Kieran’s concern about the price increase was that the announcement itself would trigger a cancellation wave from the active cohort. The opposite happened. Three of the active members replied to the announcement with some version of “the $39 price was what made me unsure this was serious.” The psychological dynamic is the one identified in the guide on starting a paid Slack community: underpricing creates a commitment-signal problem that affects not just the operator’s economics but the member’s perception of the community’s quality. A community that costs $39/month signals that the operator is not confident in the value it delivers. A community that costs $129/month signals the opposite, and the signal is a self-fulfilling prophecy — members who pay $129 try harder to extract value, which means they participate more, which means the community actually delivers more value.

The grandfathering communication was structured as a reward for early loyalty, not as a discount that would eventually go away. The exact language in the email to active members: “Your founding rate of $39/month is locked in permanently — this is your price as long as you stay a member. New members joining from next week will pay $129/month. You are in the founding cohort and this is your permanent advantage for being here first.” This framing avoided the two failure modes of grandfathering announcements: the ‘we’re raising prices but giving you a grace period’ model (which members read as a countdown to an increase they will eventually face) and the ‘founding discount’ model (which implies the price difference is a discount rather than a reward).

Phase 3: removing the trial and the automation

Phase 3 — days 5–7

Remove the 14-day free trial; disable Zapier; commit to manual welcome DMs for 90 days

14-day free trial replaced with a 30-day money-back guarantee, no questions asked. Zapier automation disabled immediately. New protocol: personal welcome DM sent by Kieran within one hour of each new member joining, every day, for the next 90 days. Day-3 and day-7 follow-up DMs sent manually, conditioned on whether the member had posted.

The 30-day money-back guarantee achieved the same member-side risk reduction as the free trial — you can leave if this isn’t what you expected — without the trial dynamics that were diluting the launch cohort. A member who pays $129 upfront and joins a community where 100% of other members also paid upfront is in a different social context than a member who joins alongside other members who are evaluating whether to pay at all. The paying-from-day-one norm changes how members present themselves in #intros, how they interpret quiet periods (a paying member reads a quiet week as a week to contribute; a trial member reads it as evidence the community isn’t worth converting), and how they respond to the operator’s follow-up outreach.

The Zapier disable was immediate. Kieran’s manual replacement protocol was built on the three-touch sequence described in the Slack community onboarding checklist: a personal welcome DM within one hour of join, a day-3 check-in DM only to members who had not yet posted (skipped entirely for members who had already introduced themselves or contributed to #revops-strategy), and a day-7 personalised message that referenced something specific from their intro or their first posts. The day-3 conditional was the critical change from the old Zapier flow. By sending the day-3 DM only to members who had not posted, Kieran cut the false-positive rate from 58% to 0%. The activated members — the 40% who had already posted by day 3 — received nothing on day 3, which was correct: they had already demonstrated they were using the community and did not need a prompt.

The manual protocol required roughly 20 minutes per new member across the three touches. In the 90-day rebuild period, Kieran onboarded 20 new members, consuming approximately 400 minutes of personal outreach time. This is the research investment that the launch sequence guide describes as necessary before automating: you do not know what your welcome DM should say, what day-3 framing produces a reply, or what day-7 personalisation makes a member feel seen until you have done it manually for enough people to see the patterns. The 20 manually onboarded members in the rebuild period produced Kieran’s first real data on what worked. The day-3 framing that consistently produced replies was a specific question about the member’s stated challenge from their intro, not a generic prompt to engage. The day-7 message that worked was one that pointed the member at a specific existing conversation relevant to something they had said, rather than asking how their experience was going.

Phase 4: reactivation outreach

Phase 4 — days 7–10

Reach out to the 61 inactive and churned members

Methodology: personalised one-to-one email to each of the 61 former members, offering them the opportunity to rejoin at the $39/month founding rate, permanently grandfathered. No broadcast email. Each message referenced something specific about the member — their intro post, a question they had asked, their stated professional context. Message length: 4 sentences maximum.

Result: 14 reactivated at $39 founding rate. 47 did not respond or declined.

The reactivation email was not a “we miss you” message. It was a value-first message that treated the recipient as a potential member making a fresh decision, not as a lapsed subscriber to be won back. The four-sentence structure: (1) a reference to something specific from their prior membership or intro; (2) one concrete change that addressed the specific failure mode they were likely to have experienced; (3) the offer (founding rate, permanently grandfathered); (4) a no-pressure close. One example: “When you joined RevOps Leaders Club earlier this year you mentioned you were building your first analytics layer on top of HubSpot. I rebuilt the community’s channel structure this month and we now have a much tighter community of 30+ active RevOps leads in #revops-strategy talking through exactly this problem. If you want to try it again, I’d lock your rate at $39/month permanently. No pressure either way.”

Of the 14 who reactivated, 11 posted in #intros within their first week, and 9 were still active at day 60 of the rebuild period. The 47 who did not respond or declined were not chased further. The signal from the non-responders was clear and was respected.

The 90-day rebuild results

51
Total members
42
Active (posted last 30 days)
3.6%
Monthly churn rate
$4,329
MRR
2.8
Avg days to first post
82%
Active member rate
Metric Day 90 post-launch Day 90 post-rebuild
Total members 78 51
Active members (posted last 30 days) 17 (22%) 42 (82%)
Monthly churn rate 22% 3.6%
MRR $1,872 $4,329
Avg days to first post 11.2 2.8
Channels 15 5
Free trial 14-day, no card required None (30-day money-back)
Price $39/month $129/month (new); $39 (grandfathered)
Onboarding method Zapier automated, unconditional Manual, conditional day-3 touch

The MRR breakdown at day 90 post-rebuild: 17 original active members at $39 = $663; 14 reactivated members at $39 = $546; 20 new members at $129 = $2,580. Total $3,789 in monthly recurring revenue plus one annual subscription ($1,290/year, equivalent to $107.50/month) for a total of approximately $4,329 MRR. The average revenue per active member improved from $1,872 ÷ 17 = $110.12 to $4,329 ÷ 42 = $103.07 — slightly lower on a per-active-member basis, because the grandfathered segment drags the average down. But the community had 2.5x as many active members and 2.3x the revenue with fewer than two-thirds of the total membership count. The members who had churned from the original 78 were not value-extractors whose loss hurt the community; they were symptom-of-structural-failure departures whose absence made the community healthier.

The churn rate trajectory was the clearest signal that the rebuild had addressed the root causes rather than just the surface symptoms. In month one of the rebuild, churn was 4.1% — still higher than target but already one-fifth of the original rate. In month two, churn was 3.2%. In month three, churn was 3.5%. The community had settled into a 3.2–3.6% range, which for a $129/month community represents an average member tenure of roughly 28 months. For a RevOps lead paying $129/month for 28 months, the operator is delivering approximately $3,600 in value to each member over the membership lifetime — a number that is defensible for a community where the primary outcome is better RevOps decision-making at companies that measure revenue in millions.

The 30-day active rate trajectory is documented in the benchmarks at the Slack community member engagement rate guide, which classifies a 60%+ active rate as healthy for a paid community in months one through three, and 40%+ as the floor beyond which growth is premature. At 82%, the rebuilt community was operating well above the healthy threshold at day 90 — a reversal from the 22% active rate that had defined the original failure period. The difference is not explained by community size; 51 members versus 78 members is not a meaningful enough difference to change the engagement dynamics. The difference is explained by the commitment signal from the price, the channel concentration that made activity visible and self-reinforcing, and the manual onboarding that ensured each new member had been personally welcomed and followed up with on day 3 and day 7.

The relationship between activation speed and long-term retention is worth noting. The average days to first post dropped from 11.2 to 2.8 — a reduction of 75%. For a community where monthly churn is the key health metric, this is not a coincidence. Members who post within 3 days of joining have a materially lower 30-day churn rate than members who take 10+ days to first post, because the early posting represents the member discovering something in the community worth responding to. A member who has not posted for 10 days is a member who has not yet found their reason to stay — and the longer they go without finding it, the higher the probability that they cancel before they do. For the full structure of how the day-0 to day-7 onboarding sequence affects this dynamic, the Slack community onboarding checklist covers each touch point and what outcome it is optimising for.

Three transferable principles

1

Configuration is not community. Activity is community.

Every hour spent configuring channels, writing pinned descriptions, setting up Zapier flows, and creating resource libraries before the first member joins is an hour not spent on the question that actually determines whether the community survives: what does the first person who walks in find interesting enough to reply to? The RevOps community had a professionally configured workspace and an activity problem. The activity problem did not get solved by the configuration; it got solved by the operator posting substantive, reply-worthy content in the right channel at the right moment. A community of five channels with a single post per day generating three replies is a better community than a community of fifteen channels with twelve posts generating zero replies. Concentration creates activity density; activity density creates the social proof that makes new members decide to contribute rather than lurk. The channel count is not a problem to be solved with more channels; it is a multiplier that amplifies whatever activity level you have. Amplifying zero produces zero. The correct launch sequence for how to start a paid Slack community, as documented in the complete launch sequence guide, is to open with five channels and add topical channels only when the existing channels are generating the volume that makes additional segmentation useful — typically 15–20 posts per day in #general, which for most communities requires 100+ members.

2

The price you charge determines the member you attract and the effort they invest.

Underpricing a paid community is not a way to lower the barrier to entry; it is a way to attract members for whom the barrier is appropriate. A member who joins at $39/month is a member who has allocated $39/month of attention budget to the community. When that member is busy, the community competes with Netflix and meal planning for the $39-budget attention slot — and it loses. A member who joins at $129/month has made a different commitment: they have told themselves, and their credit card, that this community is worth the cost of a monthly dinner out. That member has a stronger motivation to find a way to extract value before cancelling, which means they ask questions rather than lurk, they introduce themselves when they are uncertain whether anyone will respond, and they show up during the quiet weeks because the alternative is admitting to themselves that they are not using something they are paying for. The mechanics of churn reduction in paid communities are often discussed in terms of engagement tactics and onboarding sequences — see the analysis at how to reduce Slack community churn for the diagnostic framework — but the single highest-leverage intervention for a community with a 20%+ monthly churn rate is almost always a price increase. Not because price creates value, but because the right price creates the commitment signal that motivates members to find the value that is already there.

3

Automate the onboarding sequence you have proven, not the one you designed.

The Zapier automation in the original RevOps community was built on what Kieran expected a new RevOps lead would need when they joined. The manual onboarding in the rebuild was built on what Kieran observed actual RevOps leads needed when they joined — information that could only come from watching 20 people go through the process one at a time, with the ability to adapt in real time based on what each person said in their intro. Those are different things, and the gap between them is the gap between a 58% false-positive nudge rate and a 0% false-positive nudge rate. The right time to automate the onboarding sequence is after you can write it down from memory — every message, every condition, every timing decision — based on what you learned from doing it manually. An onboarding tool like Foothold executes a proven playbook automatically and surfaces the members who are not activating so you know where to focus personal attention. It cannot generate the playbook. The operator has to generate it by watching how 15–25 real members navigate their first week. For operators who have not yet onboarded their first 20 members, the current stage of their community is research, not automation.

Frequently asked questions

How do you know when you have manually onboarded enough members to justify automating your onboarding sequence?

The threshold is not a member count — it is a pattern count. You have manually onboarded enough members when you can answer four questions from memory without looking at notes: what is the most common reason a new member fails to post in their first 72 hours; what phrasing in the day-3 follow-up DM produces a reply versus silence; which channel do your most engaged members gravitate to in week two; and what does a member’s intro tell you about whether they will still be active at day 30. Most operators need to manually onboard 15–25 members across two to three join waves before clear patterns emerge — and at least 5–8 of those members should have come through a non-personal-network channel (newsletter, social post, member referral) so you have realistic signal on what the automation will face from cold-ish members. A practical readiness test: write out your complete welcome DM, day-3 conditional follow-up, and day-7 check-in from memory. If any of the three contains a vague placeholder rather than a specific structure, you are automating a guess rather than a proven sequence.

When you realize your paid Slack community's channel structure is wrong after 60+ members, how do you restructure without triggering mass churn?

Restructuring after 60+ members requires three things that are almost always underestimated in their importance. First, announce before executing — a message in #announcements posted 5–7 days before the channel changes, explaining what is changing and why, framed as operator learning rather than retreat. Second, archive rather than delete — archiving preserves message history and gives members a way to access prior conversations; deletion is permanent and signals chaos. Third, seed each surviving channel on the same day the restructure goes live, so that members who open Slack after the change see activity rather than emptiness in the newly consolidated surfaces. The members most at risk of churning from a restructure are those already close to disengaging, which means the restructure surfaces a pre-existing problem rather than creating a new one. In communities where the restructure was announced with reasoning and executed with seeding, the 30-day post-restructure churn rate is typically below 3% from active members.

What happens to community economics when some members are at a founding rate and new members are at a higher standard rate, and when does that two-tier model become a structural problem?

The two-tier model is healthy while three conditions hold: the grandfathered segment is declining as a share of total MRR as new members at full price join; the grandfathered members are among your most active (not retained solely by the low price); and the rate gap is not so large that it creates a visible two-class dynamic in conversations about pricing. The model becomes a structural problem when the founding cohort represents more than 40% of total MRR and the community is not growing fast enough to dilute that share with full-price members, or when the founding cohort’s active rate drops below 50% — suggesting the discount is retaining members who are not getting value rather than members who are disproportionately contributing. In the RevOps community, the 31 grandfathered members represented roughly 28% of MRR at day 90 of the rebuild and had an 84% active rate — both within healthy parameters. The model becomes worth re-examining at the 18–24 month mark, when the founding cohort’s tenure advantage (they know the community better than any new member) begins to fade and the price gap starts to look more like a subsidy than a reward.

How do you reactivate inactive paid community members without triggering a wave of cancellations from the people you contact?

Reactivation outreach triggers cancellations when it is timed wrong, framed wrong, or sent to members who have already decided to cancel and were waiting out their billing cycle. The timing problem: reaching out at day 10 of inactivity reminds busy members to cancel something they had mentally set aside. The right timing is 21–28 days of inactivity for monthly members. The framing problem: accountability-style messaging (“we noticed you haven’t been active”) frames the interaction as a problem notification, which is an aversive stimulus that produces cancellation. The correct framing is value-first: reach out with something specific and directly useful to that member based on what they said they were working on in their intro, without referencing their inactivity. A message that treats the member as an active participant whose attention is worth earning produces a re-engagement response. A message that frames them as a lapsed subscriber whose behaviour is being tracked produces a cancellation confirmation. The third problem — contacting members who have already decided to leave — can be partially mitigated by checking whether the member has viewed any Slack messages in the inactivity window. A member who has not opened Slack at all in 28 days is a very different case from one who is lurking without posting; the non-opener is more likely to cancel on contact regardless of the message quality.