Save canceling Whop members with a targeted win back offer

Every morning, spot the Whop members about to cancel, send the valuable ones a personal discount offer, and report the recurring revenue you defended.

Agentic Task
WhopGmailSlackSalesMarketingEmail AutomationNotifications & Alerts
PromptCreate

Every morning at 8am, find the Whop memberships that are scheduled to cancel and try to save the valuable ones before their access actually ends. Run this on a schedule rather than a trigger, since a scheduled cancellation is not something we can be notified about in real time.

Start with Whop List Memberships filtered to the canceling status to get everyone who has set their membership to end at the close of the current billing period. If there are none, post a short note saying there was nothing to save today and stop there. Otherwise, for each canceling membership use Whop Retrieve Member to read that person's lifetime spend, access level, and how long they have been a member, and hold on to their plan and the recurring amount that membership is worth.

Before offering anyone anything, enforce the cooldown. Use Whop List Promo Codes to check whether this member already received a win back code in the last 60 days. If they did, skip them completely, do not mint a code and do not email them. Note them as skipped for the summary.

Now decide who is actually worth saving. This is a judgement call, not a fixed rule. Weigh lifetime spend, tenure, and access level together: a long tenured member with high lifetime spend on a premium plan is clearly worth defending, while someone who joined recently, spent very little, or is on a low value plan usually is not. Do not blanket offer a discount to everyone who cancels, since that trains people to cancel for a deal and gives away margin on members who were never going to stay. Size the discount to the value of the member as well, so the strongest offers go to the people with the most recurring revenue at risk.

For each member who clears the bar, use Whop Create Promo Code to mint a fresh code just for them. Make the code unique per member rather than reusing one shared code, restrict it to that member's own plan so it cannot leak or be redeemed against anything else, and expire it in 7 days so the offer carries real urgency.

Then send that member a personal win back email with Gmail Send a Message. Write it like a founder writing to one customer, not a marketing blast. Name specifically what they are about to lose, referring to the actual product or access they are giving up rather than talking in generalities, acknowledge that they chose to cancel, include the code and the exact expiry date, and close with one clear action. Keep it short, plain, and human, with a subject line that reads as personal rather than promotional.

Finish by posting a summary with Slack Send a Message. Cover who was offered what and why they cleared the threshold, the codes issued with their discount sizes and expiry dates, and the total recurring revenue defended across all the offers made. Also list who was deliberately skipped and the reason, whether they fell below the save threshold or were already offered a code inside the 60 day window, so the team can see the judgement being applied and tune the threshold over time.

Two rules that always hold: every code expires in 7 days, and the same member is never offered a second code within 60 days.

What does this prompt do?

  • Checks your Whop account every morning for members who have scheduled a cancellation, so you find out while there is still time to act.
  • Reviews how much each member has spent with you, how long they have been around, and what they have access to, then decides which ones are worth a save offer.
  • Creates a unique discount code for each of those members, locked to their own plan and set to expire in seven days.
  • Sends every one of them a personal win back email naming exactly what they are about to lose, then posts a Slack summary of the offers made, the codes issued, and the recurring revenue defended.

What do I need to use this?

  • A Whop account with permission to view members and create discount codes
  • A Gmail account to send the win back emails from
  • A Slack workspace and a channel for the daily summary
  • A rough sense of what makes a member worth saving, such as how much they have spent or how long they have stayed

How can I customize it?

  • Change when it runs, or have it sweep twice a day if your cancellation volume is high
  • Adjust the save threshold and how the discount is sized, so bigger spenders get a stronger offer
  • Change the seven day code expiry and the 60 day cooldown before the same member can be offered another code
  • Point the summary at a different Slack channel or send the emails from a different address

FAQs

Does this cancel or change anything on a member's account?
No. It only reads membership and member details and creates new discount codes. It never cancels, reactivates, or edits anyone's membership, so the member stays fully in control of their own decision.
Will every member who cancels get a discount?
No, and that is the point. Each canceling member is judged on lifetime spend, how long they have been a member, and their access level. Only the ones who clear the threshold you set are worth a code, so you are not discounting people who were never going to stay or who barely spent anything.
What stops someone from gaming this by canceling over and over?
Two guardrails. Every code is restricted to that member's own plan and expires after seven days, so it cannot be shared or stockpiled. On top of that, the same member is never offered a second code within 60 days.
Why does it run every morning instead of the instant someone cancels?
A scheduled cancellation is not something Whop can notify us about the moment it happens, so the workflow sweeps every morning instead. Since a canceling member keeps access until the end of their billing period, a daily check still reaches them with plenty of time to change their mind.
What happens to the codes once they expire?
They simply stop working at checkout after seven days. Cleaning up or archiving an old code never affects anyone who already redeemed it, so past offers stay honored.

Related templates

Auto-fix your calendar when a flight slips, and flag what's at risk

When your flight moves, your calendar times get corrected automatically and you get a Slack note naming the meetings you're about to miss.

Google Calendar
AviationStack
Slack
Agentic Task
Trace phishing emails to the sending IP and report abuse

Every 15 minutes, forwarded phishing reports get traced back to the server that really sent them, with a verdict in Slack and the worst senders reported.

AbuseIPDB
Gmail
Slack
Agentic Task
Turn procurement portal tenders into CRM deals each morning

Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Turn each week's football fixtures into a venue staffing plan

Every Monday, rank the week's matches by expected demand, put the big ones on your venue calendar, and post a rota-ready summary to Slack.

API-Sports
Google Calendar
Slack
Agentic Task
Weekly flight risk brief for trips your team already booked

Every Thursday, rank your team's upcoming flights by how likely they are to run late, and email the fixes while changes are still cheap.

AeroDataBox
Airtable
Gmail
Agentic Task
Warn customers before their saved card expires and billing fails

Each month, spot the saved cards about to expire, email the customers still on recurring billing, and rank the revenue at risk in Slack.

Authorize.Net
Gmail
Slack Bot
Agentic Task

Stop letting paying members cancel quietly.

Catch scheduled cancellations every morning and put a real, time limited offer in front of the members actually worth keeping.