Gumroad membership retention board with one-click win-backs
See every Gumroad member split into active, cancelled, and ending soon, then start a personal win-back with one click from the row.
Build me a membership retention board for my Gumroad subscriptions. This is a screen I open every Monday to see who is paying me, who is about to stop, and to start a personal save attempt on anyone I do not want to lose. Build the board first and the assistant second: the board has to be worth opening on its own, even on a week when I never press a single button.
Main board. Use the Gumroad List Products operation to get every product on my account, and keep only the membership and subscription products. One-off products have no members, so skip them entirely instead of rendering empty sections. For each remaining product, use List Product Subscribers to pull the full roster, and use Get Subscriber to fill in the detail on any member the list response leaves thin, such as their email, the recurrence, the subscription start date, and the cancellation or end dates. Render one section per product with the roster underneath it.
Split each roster into three groups: active, cancelled, and ending soon. Active means the subscription is still billing with no end date set. Cancelled means the member has cancelled or the subscription has already ended. Ending soon means there is an end date or a scheduled failure or termination date falling inside the next 30 days, whether or not the member cancelled themselves. A member who cancelled but is still inside their paid period belongs in ending soon, not cancelled, because that is the window where I can still act.
Put a summary strip at the top of the screen with two headline numbers: the monthly recurring total across all active members, and the count of people whose subscription ends in the next 30 days. Gumroad returns money in the smallest currency unit, meaning cents, so divide by 100 exactly once when you display it and never sum pre-formatted strings. Normalize the recurrence before you add anything up: convert yearly plans to a monthly figure by dividing by 12, quarterly by 3, and leave monthly as is, so the recurring total is genuinely comparable. Show the same two numbers per product section as well so I can tell which membership is carrying the revenue and which one is leaking.
Sorting and filtering. I need to sort and filter the whole roster by product, by tenure, and by status. Tenure is how long they have been paying, computed from the subscription start date, and I want to be able to sort longest-tenured first so I can see who has stuck with me the most. Filters should combine, so I can ask for ending soon members of one specific product sorted by tenure and get a short, actionable list. Show tenure on the row in plain language such as fourteen months, alongside their email, plan price, recurrence, status, and end date if there is one.
Save this member. Every member row gets a Save this member button that kicks off a background agent for that one person. The agent should: pull that person's full purchase history with the Gumroad List Sales operation, filtering by their email so it sees every product they have ever bought from me, not just the membership in question; work out how long they subscribed and what else they bought; write a win-back email matched to both, so a three-year member who owns four of my products gets a different message from someone who joined two months ago and bought nothing else; mint them a personal discount with the Gumroad Create Offer Code operation on the product they are lapsing from, capped at a single use so the code cannot be shared or reposted, with a code string unique to that person; create the message as a draft with the Gmail Create a Draft operation, addressed to that member, with the discount code written into the body; and post the draft text plus the code back into the app so I can read both without leaving the board.
The same agent should also tag the person in my email list so my broadcasts can treat lapsing members differently. Use the Mailchimp Add or Update Member (Upsert) operation so the person exists in the audience whether or not they were already on it, then use Add or Remove Member Tags to apply a lapsing-member tag with status active. Do not create a duplicate contact and do not change their subscription status if they are already subscribed.
Approval. Nothing sends by itself. When the agent finishes, the row should show the drafted email, the discount code, and the reasoning in one word or short phrase such as long-tenure or bought-three-products. I read it, and if I like it I press an approve and send button that fires the Gmail Send a Draft operation on that draft. If I do not like it I should be able to leave it alone or discard it, and the draft still sits in my Gmail where I can edit it by hand.
Memory. The board has to remember which members I already ran a save attempt on, stored inside the app so it survives a refresh and a reload. Once an attempt exists for a member, mark the row visibly, disable the Save this member button for that person, and show when the attempt ran, whether the draft was approved and sent, and the code that was issued. I never want to hit the same person twice. Give me a way to see all past attempts, sorted by date, so I can tell later which win-backs actually worked.
A few details to get right. Gumroad's List Sales operation paginates, so follow the pages rather than stopping at the first one. Member counts on a healthy membership can run into the hundreds, so the roster needs to stay readable and responsive at that size. If a product has no members at all, say so plainly on that section rather than leaving a blank space. And if Gumroad returns nothing for a member lookup, keep the row on the board with whatever data I do have rather than dropping the person silently.
What does this prompt do?
- Lists every one of your Gumroad membership products with its full roster of members underneath, grouped into active, cancelled, and ending soon
- Puts your monthly recurring total and the number of people whose subscription ends in the next 30 days at the top of the screen
- Lets you sort and filter the roster by product, how long someone has been paying, and their status, so your longest-standing members and your about-to-lapse members are both one click away
- Gives every member row a Save this member button that hands the work to a background assistant: it reads what else they bought, writes a win-back email in your voice, creates a single-use discount code for them, drafts the email in Gmail, and tags them in Mailchimp
- Shows the finished draft and the code back inside the app so you can read it, then send it yourself with one button
- Remembers who you have already tried to save, so nobody gets a second win-back by accident
What do I need to use this?
- A Gumroad account with at least one membership or subscription product
- A Gmail account you want the win-back emails to come from
- A Mailchimp account with the audience you send broadcasts to
- Permission for Gumroad to create discount codes on your products
How can I customize it?
- Change the ending soon window from 30 days to whatever matches your billing cycle
- Set the size of the win-back discount and how long the code stays valid
- Pick which Mailchimp audience gets tagged and rename the tag your broadcasts look for
- Adjust the tone and length of the win-back email, or add a rule like skipping anyone who subscribed less than a month ago
FAQs
Does this send emails automatically?
Will it show my one-off products too?
Can it accidentally email the same person twice?
Is the discount code shared with everyone?
Why does it tag people in Mailchimp?
Do I need to be technical to use this?
Related templates
See who is due, build a week of dinners on demand, swap anything you do not like, then send the recipe and grocery links yourself.
See every install this week day by day, with the crew, the homeowner, whether materials were ordered, and the latest jobsite photos.
Search live job postings, save the good ones to a pipeline board, and see what each role really pays before you apply.
An accounts receivable board that sorts every overdue Jobber invoice by age, then helps you draft, approve, and log every collection email you send.
A calibration board that lines up every candidate's answer to the same question, hides names until your panel has scored, and writes the agreed rating back.
Search three months of global coverage on your topic, rank the outlets actually writing about it, and draft a tailored pitch for each one.
Stop finding out about churn after the money is gone.
Open one board every Monday, see exactly who is about to lapse, and start a personal win-back before their last payment goes through.